Re: [flexcoders] Data Grid headers

2005-12-19 Thread Anatole Tartakovsky





Clint,
 I usually create array of 
columns and just assign columns property of DataGrid rather then using addColumn API as addColumn as it takes the same 
time to set up 10 columns as 1. I would also try to either not have or hide 
initial columns as if the data comes faster then presentation it can confuse 
user by showing "part" of the grid.
HTH,
ANatole

  - Original Message - 
  From: 
  Clint Modien 
  
  To: flexcoders@yahoogroups.com 
  Sent: Sunday, December 18, 2005 12:36 
  AM
  Subject: Re: [flexcoders] Data Grid 
  headers
  so... i'm having problems 
  pressing my "L" keythe file names are:"MultiGrid.mxml" and 
  "MultiGrid.as" not"MutiGrid.mxml" and "MutiGrid.as" 
  
  On 12/17/05, Clint 
  Modien [EMAIL PROTECTED] 
  wrote:
  Did 
this the other day... here's some code... with a warning though. The 
performance is horrible on my 1.7 GHz Pentium M laptop running the 7.x debug 
player. It takes about 6 seconds to load what I would call a "very" small 
subset of data (45KB). Maybe someone from MM can have a look at it and 
see if it can be optimized. Most of what I did was inspired by the grid that 
Steven Webster had on his blog here: http://www.richinternetapps.com/archives/000101.htmlI'm 
in the process of converting it to a Flex 2.0 app. *i hope it runs 
faster there* I'll post that too once I'm finished. Here's the 
example... App.mxml 
---?xml version="1.0" 
encoding="utf-8"?mx:Application xmlns:mx=" 
http://www.macromedia.com/2003/mxml" 
 
creationComplete="this_creationComplete()" 
themeColor="haloBlue" backgroundColor="#707070" 
xmlns="*"  mx:Panel title="Panel1" 
label="Panel1" height="100%" width="100%"  
 mx:Button 
id="loadTestDataButton" label="Load" click="loadTestDataButton_click()" 
/ MultiGrid 
height="100%" width="100%" dataProvider="{ ModelLocator.rootObj}" 
/ /mx:Panel 
mx:HTTPService id="testService" showBusyCursor="true" useProxy="false" 
 
url="" resultFormat="object" 
 result="ModelLocator.rootObj 
= event.result.root;" / 
 mx:Script source="App.as " 
//mx:Application MutiGrid.mxml 
---?xml version="1.0" 
encoding="utf-8"?mx:HDividedBox xmlns:mx=" 
http://www.macromedia.com/2003/mxml" marginTop="0" 
marginBottom="0"  mx:VBox height="100%" 
width="33%" marginTop="20" 
mx:DataGrid id="leftGrid" dataProvider="{ModelLocator.data}" 
height="100%" width="100%"  
selectedIndex="{lowerGrid.selectedIndex}" hScrollPolicy="on" 
vScrollPolicy="off" 
 
vPosition="{lowerGrid.vPosition}" 
mx:columns 
 
mx:Array 
mx:DataGridColumn headerText="Name" columnName="name" 
/ 
mx:DataGridColumn headerText="Group" columnName="group" / 
 
/mx:Array 
/mx:columns 
/mx:DataGrid 
/mx:VBox mx:Canvas height="100%" 
width="66%" verticalGap="-1" 
 mx:DataGrid 
id="upperGrid" hPosition="{lowerGrid.hPosition}" textAlign="center" 
 
hScrollPolicy="on" height="40" width="100%" vScrollPolicy="on" 
/  mx:DataGrid 
id="lowerGrid" dataProvider="{ModelLocator.data}" height="100%" 
width="100%" 
vScrollPolicy="on" hScrollPolicy="on" y="19" selectedIndex="{ 
leftGrid.selectedIndex}" / 
/mx:Canvas mx:Script 
source="MultiGrid.as"//mx:HDividedBox 
MutiGrid.as --- import 
mx.controls.gridclasses.DataGridColumn; public 
function set dataProvider(val:Object) 
{  //make sure we're getting 
array's  var data 
= mx.utils.ArrayUtil.toArray(val.GridDataSet.GridData 
);  var columns = 
mx.utils.ArrayUtil.toArray(val.Columns.Column); 
 //format the grids first 
 renderColumns(columns); 
 //then bind the child props to the 
ModelLocator  ModelLocator.data = 
""> }  
private function renderColumns(columns:Array) 
{  
upperGrid.removeAllColumns();  
lowerGrid.removeAllColumns();  var 
columnNumber = 0;  for (var i = 0; i 
 columns.length; i++)  
{   // add columns 
to the uppergrid   
var columnWidth = 100;  
 var column = columns[i]; 
  var subColumns:Array = 
mx.utils.

Re: [flexcoders] Data Grid headers

2005-12-17 Thread Clint Modien



so... i'm having problems pressing my L keythe file names are:MultiGrid.mxml and MultiGrid.as notMutiGrid.mxml and MutiGrid.as 
On 12/17/05, Clint Modien [EMAIL PROTECTED] wrote:
Did this the other day... here's some code... with a warning though. The performance is horrible on my 1.7 GHz Pentium M laptop running the 7.x debug player. It takes about 6 seconds to load what I would call a very small subset of data (45KB). Maybe someone from MM can have a look at it and see if it can be optimized. Most of what I did was inspired by the grid that Steven Webster had on his blog here:
http://www.richinternetapps.com/archives/000101.htmlI'm in the process of converting it to a Flex 
2.0 app. *i hope it runs faster there* I'll post that too once I'm finished.
Here's the example... App.mxml ---?xml version=1.0 encoding=utf-8?mx:Application xmlns:mx=

http://www.macromedia.com/2003/mxml  creationComplete=this_creationComplete() themeColor=haloBlue backgroundColor=#707070 xmlns=*  mx:Panel title=Panel1 label=Panel1 height=100% width=100% 
 mx:Button id=loadTestDataButton label=Load click=loadTestDataButton_click() / MultiGrid height=100% width=100% dataProvider={
ModelLocator.rootObj} / /mx:Panel mx:HTTPService id=testService showBusyCursor=true useProxy=false  url="" resultFormat=object 
 result=ModelLocator.rootObj = event.result.root; /  mx:Script source=App.as
 //mx:Application MutiGrid.mxml
 ---?xml version=1.0 encoding=utf-8?mx:HDividedBox xmlns:mx=
http://www.macromedia.com/2003/mxml marginTop=0 marginBottom=0 
 mx:VBox height=100% width=33% marginTop=20 mx:DataGrid id=leftGrid dataProvider={ModelLocator.data} height=100% width=100%
 selectedIndex={lowerGrid.selectedIndex} hScrollPolicy=on vScrollPolicy=off  vPosition={lowerGrid.vPosition} mx:columns

 mx:Array mx:DataGridColumn headerText=Name columnName=name / mx:DataGridColumn headerText=Group columnName=group /
 /mx:Array /mx:columns /mx:DataGrid /mx:VBox mx:Canvas height=100% width=66% verticalGap=-1
 mx:DataGrid id=upperGrid hPosition={lowerGrid.hPosition} textAlign=center  hScrollPolicy=on height=40 width=100% vScrollPolicy=on /
 mx:DataGrid id=lowerGrid dataProvider={ModelLocator.data} height=100% width=100% vScrollPolicy=on hScrollPolicy=on y=19 selectedIndex={
leftGrid.selectedIndex} / /mx:Canvas mx:Script source=MultiGrid.as//mx:HDividedBox MutiGrid.as --- import 
mx.controls.gridclasses.DataGridColumn; public function set dataProvider(val:Object) {  //make sure we're getting array's  var data = mx.utils.ArrayUtil.toArray(val.GridDataSet.GridData

);  var columns = mx.utils.ArrayUtil.toArray(val.Columns.Column);  //format the grids first  renderColumns(columns);  //then bind the child props to the ModelLocator  ModelLocator.data

 = ""> }  private function renderColumns(columns:Array) {  upperGrid.removeAllColumns();  lowerGrid.removeAllColumns();  var columnNumber = 0;  for (var i = 0; i  
columns.length; i++)  {   // add columns to the uppergrid   var columnWidth = 100;   var column = columns[i];   var subColumns:Array = mx.utils.ArrayUtil.toArray

(column.SubColumn);   var dc = new DataGridColumn();   dc.headerText = column.ColumnName;   dc.width = subColumns.length * columnWidth;dc.colNum = i;   
upperGrid.addColumn(dc);   // add columns to the lower grid   for (var j = 0; j  subColumns.length; j++)   {var subColumn = subColumns[j];

if(subColumn == undefined) subColumn = ;var dc2 = new DataGridColumn();dc2.colNum = columnNumber;columnNumber++;
dc2.headerText
 = subColumn;// dc.setStyle(textAlign, center);dc2.columnName = Column_+column.ColumnID+_+subColumn;dc2.width = columnWidth;  
lowerGrid.addColumn(dc2);   }  } } ModelLocator.as ---class ModelLocator{   public static var rootObj;

 public static var data:Array;}On 12/16/05, yaagcur 


[EMAIL PROTECTED] wrote:
Couple of pointsa) It seems to me that if I textAlign=right a DataGridColumn thenthe column header automatically follows that designation even if Iwant it to be textAlign=center and have entered it so in DataGrid
b) How can I have two rows of headers so that the lower row can be asubdivision of higher onee.gGoals ScoredHome Away16 8 
 Yahoo! Groups Sponsor ~--Get Bzzzy! (real tools to help you find a job). Welcome to the Sweet Life.



http://us.click.yahoo.com/KIlPFB/vlQLAA/TtwFAA/nhFolB/TM~---Flexcoders Mailing ListFAQ: 



http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txtSearch Archives: 


http://www.mail-archive.com/flexcoders%40yahoogroups.comYahoo! Groups Links
* To visit your group on the web, go to:http://groups.yahoo.com/group/flexcoders/
* To unsubscribe from this group, send an email to:
[EMAIL PROTECTED]* Your use of Yahoo! Groups is subject to: