ActionScript 3.0 :: Add A ComboBox To A Sprite As A Child
Jan 25, 2009
I am trying to add a comboBox to a sprite as a Child. For some reason after adding the comboBox to the sprite, the height of the sprite gets bigger. I attached a copy of the code below. Is this a bug?
I have created 2 sprites each containing a dynamic text field child. I then add this as a child of the stage. (I have done this in order to make the text clickable with a hand cursor on mouseover)It loads in fine, I just run into problems when trying to REMOVE it the sprite containing the text."ArgumentError: Error #2025: The supplied DisplayObject must be a child of the caller."Sections concerned in red:
every time I add a combobox to a sprite, the sprite grows by 100 pixels in height even though the combobox itself is only about 28 pixels in height. Has anyone else run into this before?
I want my sprite to redraw when the information in my comboBox is changed but I cant figure out how to do it. I've tried a variety of things with no luck so I've deleted my attempts and below is my code how I want it to work with the exception that how it is now just draws the sprite on top of the other one instead of replacing it (or resizing it??).
import fl.data.DataProvider; import fl.events.ComponentEvent; var items:Array = [ {label:"Select your Waterway"}, {label:"Klamath at Orleans", data:klamath_orleans}, {label:"Scott at Fort Jones", data:scott_fort_jones}, {label:"Redwood Creek", data:"redwood_creek_hwy299"}, [Code] .....
I have an swf with a comboBox with three simple values. When I bring up the swf by itself it works fine. When I try to bring up the swf by loading it from another swf, I get a TypeError: Error 1009 "Cannot access a property or method of a null object reference, when I try to open its dropdown. If I add a ComboBox to the parent SWF's library the error goes away and everything works fine. Although I have a fix, I have several child swf's that I don't always know what components are in them.
I don't understand about the qualities of a sprite, but why does this trace as undefined? item is a movie clip and businessCard is a sprite which contains a movie clip.[code]
I have a main.swf that loads contact.swf; contact.swf contains a combobox which works if contact.swf is ran alone, but if I load it through main.swf, the combobox fails.I did quite a bit of research, I'm using
import fl.controls.ComboBox; AND i'v dragged an instance of the comboBox on the stage of both main.swf and contact.swf.
I have used AS2 for a while but the movie gets very slow when thousands of objects on the stage. I would like to turn to AS3 for better performance. My basic symbol is a MC consists of a button and a text field. Can I change it from Movie Clip to Sprite? I read a document that says "Sprites serve as containers that can be filled with shapes, images or text. "... Could someone tell me if the Sprite can also be the container for button?
I need to access the combobox child (textinput and button) without creating a customize component. I know the best practice is to create a custom component but still need to access the combobox child like textinput and listen for their event.
I have a map with various regions as movieclips. When you mouse over a region, a sprite appears containing xml data. Among this data is a hyperlink. I want the sprite to stay on the stage until one of two things happens:
- you mouseout of the sprite - you go to a new region
That seems to be the problem. I've successfully coded the program to remove the child if you mouseout of the sprite. But if you go to a new region, it makes a new sprite and now you have two sprites with xml data on the stage! If I remove the child when you mouseout of the region, then the sprite won't stay on the stage for you to click the hyperlink. How can I make the sprite stay on the stage until:
- you mouseout of the sprite - you mouseout of the region IF you aren't on the sprite
I've a slider class (SliderUI) and I'm passing slider and track images to that class as sprites.
What I'm trying to do is, passing one more image as sprite and changing its width for doing masking in slider. (It will expand or collapse as you move volume slider)
When I try to change width of sprite, it doesn't show up and I guess sprite is just container and resizing it makes it disappeared.
So how can I resize sprite with its child image (it's loaded by a Loader object by the way)?
From the two .as files below, I get the following error when I run: 1119: Access of possibly undefined property importantNumber through a reference with static type flash.display:Sprite.
I was trying to code a rollover rollout dropdown menu in code. I made a movieclip in the library which imports a rectangle sprite. The rectangle sprite moves down on frame2 and back up on frame3. When I called the frame from document level it gives me following error:
My site is set up with next and prev buttons on the right and left sides respectively, and as you roll over either of the hit areas around the buttons a Sprite fades in which contains a TextField that describes the next page. Said Sprite calls the StartDrag() method, so it follows the mouse within the bounds, which is all fine and dandy on the left side of the page. Adobe, however, seems to have forgotten to put a way to dynamically alter the registration point of a Sprite, MC, whatever else, so when you roll over the right side of the page, the sprite is displayed from the top left and is mostly off the stage.
Trying to hack this problem I have tried numerous things ( classes written by others, other hacks) and the best that I have found is to use the scaleX method on the Sprite, changing the scale to -1. This, of course, makes the Sprite seem like it's reflected from its normal point, which means all its children show up backwards.
Is there anyway I can use this hack without it altering the text?
OR
Does anyone know a different way to go about displaying a Sprite from another corner? Any way to make a Sprite fade in and follow the mouse on the LEFT HAND side of the mouse pointer?
Here is a snippet to give an idea of what's happening:
I am trying to get an image object from one sprite container and adding it to another sprite container. But when I use GetChildAt for this, it will remove the object from the parent sprite and place it inside the other.
Ok every time I think I understand the DisplayObject model i find something else that seems like it should work but fails. Am I correct that if I create a sprite then create another sprite and add it as a child the original parent sprite will show a height of 0... In my case i have three classes that all extend Sprite and each one is creating the next with the "youngest child" being a class that adds an image to its "stage". I can see the image height fine but its holder does not nor does its holders parent... im having a real moment here as I debate if im just stupid and missing the obvious way to do this or if I really have to add a bunch of getters and setters to see the height that includes children.Maybe I am thinking of this too much like a CSS block element but it just seems like it should work this way...for example
i have a BasicMap.as that takes an Array and populates itself with the MC objects passed to it by a String reference.it inherits from Sprite, and so it just places the objects on its self.then i have a class that inherits from that class, and gives a little more functionality to it, but in order for it to do that, it needs to place the objects not on itself, but instead inside a holder Sprite, so here is my problem:
I'm using Flash CS3 and want to create a custom ComboBox. I've followed the steps outlined in "Editing component skins in a new document" (http:/[url]...), but every time I get to the step where I drag the ComboBox Assets folder from the HaloTheme.fla library into my library, if I test movie at that point my combobox has become an unclickable white rectangle with no label, button or anything.
I'm trying to set a specific list item in a mx combobox to have a custom item renderer, the problem is that I cannot do this via mxml, it needs to be done via actionscript at a later stage, eg: combobox gets created, combobox gets populated, user does other tasks, combobox needs to set one or more items in the combobox to have icons (via item renderer)..
I can do this via the onChange event, but it only applies the icon when the combobox is opened and there is a slight delay so you can see the icon being added.
**Warning** The linkage identifier 'ComboBox' was already assigned to the symbol 'ComboBox', and cannot be assigned to the symbol 'GUI MC/Combo Boxes/abc', since linkage identifiers must be unique.**Warning** The linkage identifier 'ComboBox' was already assigned to the symbol 'ComboBox', and cannot be assigned to the symbol 'GUI MC/Combo Boxes/def', since linkage identifiers must be unique.
Both of my ComboBoxes has the same identifier.I could not change the identifier through the properties tab because it is greyed out.
I have a picture on the stage that has multiple items that have hotspots/links over them that should open a child swf on top of the background and show details about the items. then have a button in the child swf itself that removes the child from over the background so the user can click on another item etc.I found this code in someone's post and I am trying to modify it so that works for multiple swf files...it currently works for a single swf.I wan to pass the name of the button in front of the .swf in the URLRequest to have the same name as the instance name of the referring button. But I can't figure it out. Here is the code I am using on the stage
I created a class, extended the sprite class, and now in the constructor I am trying to set the Sprite's width and height properties which are inherited from the DisplayObject. However, after I set this.width and this.height, and print the values, I get 0 for both.
What the heck is going on? When I view the livedocs I see that DisplayObject has width and height listed as public properties. I have been able to instantiate a Sprite directly, and set the width and height after it's been instantiated, so I don't get it.
package { import flash.display.*; public class ScrollBar extends Sprite {[code].....
I'm doing a simple rotation on a sprite but there's a weird behavior where the sprite does not rotate around it's top left. I think I'm rotating along the top left of the test class instead of the sprite child. I would like to rotate the rectangle around it's top left corner (kinda like a clock hand). The code is pretty short so I'll let the code + pictures explain my problem:
package { import flash.display.Sprite;
[Code]....
I've read a lot of stuff about rotating around a fixed point, I've tried doing it with movieclips instead of sprites, I even copy pasted a tutorial on rotation and nothing works.
Then the numericStepper is drawn as if it is squished to 20% its normal height. If I pre-set mySprite width and height before adding the numericstepper, the trace output is 0,0 after adding it and it is not displayed at all. Is there some way I can make the sprite only adjust to correctly fit the numericStepper OR resize it afterwards without distorting the numericStepper component?