If you could post some working sample code (With sample data - not with a 
server call), I could take a look.

--- In flexcoders@yahoogroups.com, "thomas_13s" <thomas_...@...> wrote:
>
> 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" <valdhorlists@> 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