Change
var selectTab:Container = this.windowTabs.getChildByName(newid);

to
var selectTab:Container = Container(this.windowTabs.getChildByName(newid));
Or
var selectTab:Container = this.windowTabs.getChildByName(newid) as Container;

Im not sure which syntax is the correct way or what the difference is.  Anyone care to explain the difference?

Scotty


On 7/20/06, Nick Collins <[EMAIL PROTECTED]> wrote:

I tried something very similar to that, but got the following error, as I did this time:
1118: Implicit coercion of a value with static type flash.display:DisplayObject to a possibly unrelated type mx.core:Container .




On 7/20/06, fwscott < [EMAIL PROTECTED]> wrote:

Hey Nick,

You could assign a name to your tab and then use
this.windowTabs.getChildByName(newtab.name);

Something like



private function createTab(createTabName:String):void
{
var newid:String = 'userTab' +
this.masterList.selectedItem.ContribNum;
var selectTab:Container = this.windowTabs.getChildByName(newid);
if(!selectTab) {

var newVbox:VBox = new VBox();
var newHbox:HBox = new HBox();
var newTab:Canvas = new Canvas();
var newSpacer:Spacer = new Spacer();
var tabCloseBtn:Button = new Button();

// create button to close tab
tabCloseBtn.label = "Close Tab";
tabCloseBtn.addEventListener
(MouseEvent.CLICK,myClickListener);

// create spacer to position close button
newSpacer.percentWidth = 100;

// create box layout controls
newHbox.percentWidth = 100;
newHbox.addChild(newSpacer);
newHbox.addChild(tabCloseBtn);
newVbox.addChild(newHbox);
newVbox.addChild
(getTithesComponent(this.masterList.selectedItem.ContribNum));

// create tab
newTab.label = createTabName;
newTab.id = newid;
newTab.name = newid;

newTab.addChild(newVbox);


this.windowTabs.addChild(newTab);
this.windowTabs.selectedChild = newTab;
}

else
this.windowTabs.selectedChild = selectTab;
}

Scotty
http://www.franciswscott.com


--- In flexcoders@yahoogroups.com , "Nick Collins" <[EMAIL PROTECTED]> wrote:
>
> I've got a datagrid with a list of people, that when you double click on
> one, it creates a new tab with that person's data into a
TabNavigator. I'm
> trying to get it so it will only open one instance of a tab for each
person,
> and if you try to open a person again, it will simply select their
tab that
> already exists. Sounds pretty straightforward, right?
>
> Here's what I've got, when you click the button for their data or double
> click their name, an event is launched which then calls this function,
> createTab:
>
> private function createTab(createTabName:String):void
> {
> var newVbox:VBox = new VBox();
> var newHbox:HBox = new HBox();
> var newTab:Canvas = new Canvas();
> var newSpacer:Spacer = new Spacer();
> var tabCloseBtn:Button = new Button();
>
> // create button to close tab
> tabCloseBtn.label = "Close Tab";
> tabCloseBtn.addEventListener (MouseEvent.CLICK,
> myClickListener);
>
> // create spacer to position close button
> newSpacer.percentWidth = 100;
>
> // create box layout controls
> newHbox.percentWidth = 100;
> newHbox.addChild(newSpacer);
> newHbox.addChild(tabCloseBtn);
> newVbox.addChild(newHbox);
> newVbox.addChild (getTithesComponent(
> this.masterList.selectedItem.ContribNum));
>
> // create tab
> newTab.label = createTabName;
> newTab.id = 'userTab' +
> this.masterList.selectedItem.ContribNum ;
> newTab.addChild(newVbox);
>
> var selectTab:ObjectName = newTab.id;
>
> if (!selectTab) {
> this.windowTabs.selectedChild = selectTab;
> } else {
> this.windowTabs.addChild(newTab);
> this.windowTabs.selectedChild = newTab;
> }
>
> }
>
> Now from the docs I've found, it seems like doing an if statement
with the
> condition of ! objectID should be checking if that id exists, right? for
> some reason it always returns false, even when a new canvas in the
> TabNavigator stack with that id value already exists.
>
> Any ideas how I can accurately detect if the object exists?
>



__._,_.___

--
Flexcoders Mailing List
FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com





SPONSORED LINKS
Web site design development Computer software development Software design and development
Macromedia flex Software development best practice


YAHOO! GROUPS LINKS




__,_._,___

Reply via email to