Hi, Thanks a lot.please let me know looking the code i have included how can I show PopUpMenuButton on the Drill-Down column and populate the PUButton with the dObj.label and dObj.url which i ahve added to ddArr now. thanks in advance, Tom.
--- In [email protected], "valdhor" <valdhorli...@...> wrote: > > This quick and dirty example (Based on the Adobe Documentation) should > get you well on your way: > > <?xml version="1.0"?> > <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"> > <mx:Script> > <![CDATA[ > import mx.collections.ArrayCollection; > > [Bindable] private var dpHierarchy:ArrayCollection = new > ArrayCollection([ > {Region:"Southwest", children: [ > {Region:"Arizona", children: [ > {Territory_Rep:"Barbara Jennings", Actual:38865, > Estimate:40000, URL:"www.apple.com"}, > {Territory_Rep:"Dana Binn", Actual:29885, > Estimate:30000, URL:"www.adobe.com"}]}, > {Region:"Central California", children: [ > {Territory_Rep:"Joe Smith", Actual:29134, > Estimate:30000, URL:"www.google.com"}]}, > {Region:"Nevada", children: [ > {Territory_Rep:"Bethany Pittman", Actual:52888, > Estimate:45000, URL:"www.amazon.com"}]}, > {Region:"Northern California", children: [ > {Territory_Rep:"Lauren Ipsum", Actual:38805, > Estimate:40000, URL:"www.microsoft.com"}, > {Territory_Rep:"T.R. Smith", Actual:55498, > Estimate:40000, URL:"www.yahoo.com"}]}, > {Region:"Southern California", children: [ > {Territory_Rep:"Alice Treu", Actual:44985, > Estimate:45000, URL:"www.ibm.com"}, > {Territory_Rep:"Jane Grove", Actual:44913, > Estimate:45000, URL:"www.bing.com"}]} > ]} > ]); > ]]> > </mx:Script> > <mx:AdvancedDataGrid width="100%" height="100%"> > <mx:dataProvider> > <mx:HierarchicalData source="{dpHierarchy}"/> > </mx:dataProvider> > <mx:columns> > <mx:AdvancedDataGridColumn dataField="Region"/> > <mx:AdvancedDataGridColumn dataField="Territory_Rep" > headerText="Territory Rep"/> > <mx:AdvancedDataGridColumn dataField="Actual"/> > <mx:AdvancedDataGridColumn dataField="Estimate"/> > <mx:AdvancedDataGridColumn id="actionCol" > headerText="Action"/> > </mx:columns> > <mx:rendererProviders> > <mx:AdvancedDataGridRendererProvider column="{actionCol}" > depth="3" renderer="PopUpMenuButtonRenderer"/> > </mx:rendererProviders> > </mx:AdvancedDataGrid> > </mx:Application> > > PopUpMenuButtonRenderer.as: > package > { > import mx.controls.*; > import mx.events.MenuEvent; > import flash.net.URLRequest; > import flash.net.navigateToURL; > > public class PopUpMenuButtonRenderer extends PopUpMenuButton > { > private var _URL:String; > private static const menuItems:Array = ["Go to Web Site", "Do > Something Else"]; > > public function PopUpMenuButtonRenderer() > { > super(); > } > > override public function set data(value:Object):void > { > if(value != null) > { > super.data = value; > _URL = value["URL"]; > addEventListener(MenuEvent.ITEM_CLICK, onMenuClick) > label = "Action"; > dataProvider = menuItems; > } > } > > private function onMenuClick(event:MenuEvent):void > { > switch(event.label) > { > case "Go to Web Site": > navigateToURL(new URLRequest("http://" + > _URL),"_top"); > break; > } > } > } > } > > > HTH > > > > > > Steve > > --- In [email protected], "thomas_13s" <thomas_13s@> wrote: > > > > Hi, > > I have an advanced data grid , with 8 columns one of the columns i > want the 8 th column as a POPUPMenu Button, and when I click on the > menu item it should navigate to a url value which is in the Array dArr. > Array dArr has 2 values ,how can i do this I have tried many things. > > Array dArr has the values [dd.label,dd.url] and some valuses in the > array has more than one occurence, I mean > [dd.label1,dd.url1],[dd.label2,dd.url2]. > > The values to be populated in the POPUPMenuButton , i have in an array > dArr. > > please help me out. > > <?xml version="1.0"?> > > <!-- Dashboard Main Service Summary table --> > > <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" width="100%" > height="100%" backgroundColor="#FFFFFF" > > initialize="initApp();" > creationComplete="onCreationComplete();"> > > <mx:Style> > > .hStyle { fontWeight:bold; fontFamily:Verdana; fontSize:12; > align:center; } > > </mx:Style> > > <mx:Script> > > <![CDATA[ > > > > var ddArr:ArrayCollection = new ArrayCollection(); > > var dp:ArrayCollection = new ArrayCollection(); > > > > var ddLabel:String=""; > > var ddUrl:String=""; > > var ddData:String=""; > > var ddRest:String=""; > > var popUpB:PopUpMenuButton; > > > > > > > > ddData= xd[9]; > > ddRest=ddData; > > var ddidx:int = ddData.indexOf("|"); > > // var dObj:Object=new Object(); > > while ( ddidx > 0 ) > > { > > > > ddLabel= ddRest.substring( 0, ddidx ); > > > > ddRest= ddRest.substring(ddidx + 1 ); > > ddidx = ddRest.indexOf("|"); > > if( ddidx > 0) > > { > > // ddUrl= ddRest.substring(ddidx + 1 ); > > ddUrl= ddRest.substring(0, ddidx ); > > > > ddRest= ddRest.substring(ddidx + 1 ); > > ddidx = ddRest.indexOf("|"); > > } > > > > dObj.label= ddLabel; > > dObj.url= ddUrl; > > ddArr.addItem(dObj); > > > > } > > popUpB=new PopUpMenuButton(); > > myMenu = new Menu(); > > myMenu.labelField = "Action"; > > myMenu.showRoot = true; > > myMenu.width = popUpB.width; > > myMenu.selectedIndex = 0; > > myMenu.dataProvider = ddArr; > > > > // myMenu.addEventListener("itemClick", > itemClickHandler); > > > > popUpB.popUp = myMenu; > > > > dp.addItem( { "Index":xd[0], "Service":xd[1], "Priority":xd[2], > "Current SLA":xd[3],"Health":xd[4], "Quality":xd[5], > > "Risk":xd[6], "Avail":xd[7], "OpMode":xd[8], > "dd":popUpB} ); > > dp = dpSrv; > > gc.source=dp; > > gc.refresh(); > > > > ]]> > > > > </mx:Script> > > > > <mx:HTTPService id="sst" resultFormat="text" > result="onJSONLoad(event)" url="{sURL}" fault="onFaultLoad(event)"/> > > <mx:Panel title="{cTitle}" width="100%" height="100%" > titleStyleName="hStyle" headerColors="[0xC5DFF9,0xEFF6FF]" > > > > > <mx:AdvancedDataGrid id="srvTable" width="100%" height="100%" > color="0x323232" dragEnabled="true" dropEnabled="true" > > enabled="true" showHeaders="true" > > displayItemsExpanded="true" variableRowHeight="true" wordWrap="false" > initialize="gc.refresh();" > > > <mx:dataProvider> > > <mx:GroupingCollection id="gc" source ="{dpSrv}"> > > <mx:grouping> > > <mx:Grouping> > > <!-- <mx:GroupingField name="PService" /> > --> > > <mx:GroupingField name="Service" /> > > </mx:Grouping> > > </mx:grouping> > > </mx:GroupingCollection> > > <!-- <mx:HierarchicalData id="gc" source="{dpSrv}"/> > --> > > </mx:dataProvider> > > > > <mx:columns> > > > > <mx:AdvancedDataGridColumn id ="ddcol" dataField="dd" headerText=" > Drill-down" width="200" textAlign="left"> > > > > </mx:AdvancedDataGridColumn> > > > > </mx:columns> > > > > <mx:rendererProviders> > > <mx:AdvancedDataGridRendererProvider dataField="dd" > depth="1" column="{ddcol}" columnIndex="8" > > renderer="mx.controls.PopUpMenuButton" /> > > </mx:rendererProviders> > > </mx:AdvancedDataGrid> > > </mx:Panel> > > </mx:Application> > > > > thanks in advance, > > Tom. > > >

