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 flexcoders@yahoogroups.com, "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 flexcoders@yahoogroups.com, "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.
> >
>


Reply via email to