ActionScript 3.0 :: How To Use Dynamic Property
Sep 5, 2010HOw to USe dynamic property..........?? e answers with example
View 1 RepliesHOw to USe dynamic property..........?? e answers with example
View 1 RepliesI am using a regular Flash object as a simple data container, and I want to remove a particular property of that object. Then that object gets passed on to a for..in loop. But even after using delete to remove the property, the key still shows up in the loop.
For example:
var obj:Object = { a: "a", b: "b", c: "c" }
delete obj['b'];
for ( var prop:String in obj ) {
[Code].....
So deleting the property seems to be the same as assigning its value to null.
Is there any way to immediately remove the property from the object altogether so that it is no longer looped over in a for..in loop?
It is not sufficient to check the property for a null value since a property with a null value is not the same as not having the property in the first place, and represents a different state. I don't want to set the property to null, I want to remove the property.
[code]...
The above code is not working, I am getting an error.
some code look like this:
var i = 1;
while(i < 6){
newX = new Number(i * 25);
[code].....
I have a dynamic Actionscript class as follows: public dynamic class Foo {....} In my code I (may) add some properties to it: myFoo["myNewDynamicProp"] = "bar"; Elsewhere in my code, given an instance of class Foo, how can I determine if that dynamic property has been added already without throwing an expensive exception?
View 4 RepliesHow to apply alpha rpoperty for dynamic text.
View 1 RepliesI'm not sure if this is a bug, or an expected behavior, but, if you try to call super["dynamicProperty"], given that superclass is dynamic, it will throw error telling you that the dynamic class <name of dynamic class> has no property "dynamicProperty". BTW, the extending class is dynamic too.
View 2 RepliesI have generated several TextFields dynamically through a for loop. I would like all the text fields to have their alpha set to 0 so that each field can eventually fade in.
When I apply the alpha property by setting it to 0, or even .5 the text appears to still be at an alpha of 1. Does anyone know how to make the text appear with a low to 0 alpha?
I have attached the code from the function which runs the for loop to generate the text fields. Please not that the value of the text fields are stored in a global array, and the text format objects are also global and are declared in the main body of the class.
Shouldn't it be possible to pass in a dynamic url path for this property? I am successfully loading a variable using loadVars and then attempting to use that variable to populate the xmlConnector.URL property but it does not seem to work. Do you have to hardcode a url for this property?
View 1 RepliesI cannot find and information on how to make a dynamic sharedObject data property.
Simplified Code for what I need/want to do
var iData:SharedObject = SharedObject.getLocal(userInfo);
var dataArray:Array = ["a","b","c"];
var property:String = "prop"
iData.data.this[property] = dataArray;
That is what i was thinking.
It doesn't matter how the property is created, just that it needs to be done on the fly.
I have a movie clip working as a button that is disabled after click. I need to add a scoring option, so that on click it also adds to the score. When I add the scoreGame function, it says the text box is undefined. Ideas?
Here's the code:
package
{
import flash.display.MovieClip;
import flash.events.MouseEvent;
[Code].....
I am trying to:
1) create a dynamic property
2) bind that property to a label
This works great for "sealed properties", but for dynamic properties there doesn't appear to be any event triggered. Are dynamic properties implicityly not bindable?
var myObj:MyType = new MyType(); // MyType is dynamic
myObj["myDynamicPropertyName"] = "initialized";
BindingUtils.bindProperty(myLabel, "data", myObj, repeatedLabel.name);
// myLabel now displays "initialized"
myObj["myDynamicPropertyName"] = "changed";
// myLabel still displays "initialized", it should say "changed" !!!
I have an object
obj = { a: 1, b: { c: 1, g: x, h: { j: {k: z} } } };
if I have an array of dynamic length ["a", "b", [...], "g" ]
How can I now update a.b.c.g ? example:
function set($target, $new_value, $array){
//magic
}
set(obj, y, ['b', 'g']);
[code]....
I am generating the following text box and the data in it dynamically:
_root.createTextField("recipe"+i+"_txt", _root.getNextHighestDepth(), 5, 100, 600, 400);
The problem I am having is the text that is generated only stays on one line and therefore doesn't fit into the text field. I know there is a way to add the multiline property to other types of components but can this be done dynamically?
I am having problems with the _alpha property of dynamic masks. For some reason they don't seem to accept it. I have a holder mc that I use as a mask and the holder is full of dynamic mcs for which I would like to set alpha properties.
My code is:
_root.createEmptyMovieClip('holder',_root.getNextHighestDepth());
function init() {
for (i=0; i<100; i++) {
holder.attachMovie("msk","msk"+i,i,{_xscale:0, _yscale:0});
_root.holder['msk'+i]._x = (550*Math.random());
_root.holder['msk'+i]._y = (380*Math.random());
In Flash 5, How can we center the text in dynamic text box with html property selected? I used center tag and also align attribute in font tag, but I couldn't get text in center.
View 3 RepliesI am having problems while creating object with actionscript, I am new to it and I am getting some errors. I am creating my object this way
Code:
var myMC:MovieClip = new MovieClip();
myMC.x = 50;
myMC.y = 50;
myMC.name = "hunterToken";
tCursos.addChild(myMC);
And it is created, so far everything's good
Later I try to access the visible property, and I get an error
Code:
tCursos.hunterToken.visible=false;
And I get this error:
Code:
TypeError: Error #1010: A term is undefined and has no properties.
at newSiteHTR_fla::mCursos1_1/go()[newSiteHTR_fla.mCursos1_1::frame1:157]
I can't get the letterspacing property to function in a dynamic text box, I have tested it with color and it works just fine. just letterspacing. And I have embedded the font, so I know it isn't that. The code affecting the text box is this.
Code:
var txt_box0:TextField
var format1:TextFormat = new TextFormat();
format1.letterSpacing = 4
//trace(format1.letterSpacing)
txt_box0.setTextFormat(format1)
Those working with AS2 have had similar problems but managed to fix it by typing "setNewTextFormat", which has been phased out in AS3.
well in my game,while you are playing level you have 3 objects(movieclips) on which you can click to pass on the next frame(when comes 3 new objects etc. untill level is complete); 2 of that 3 objects are wrong, and only 1 is good for passing on next frame. (all of all, correct click, wrong clicks)when i come on that level it keeps me showing error in output:
TypeError: Error #1009: Cannot access a property or method of a null object reference.
at TestYourLogic_fla::MainTimeline/goodplus();
Code: Select allfunction goodplus (event:Event):void {
goodcount ++;
goodText.text = (goodcount.toString());//<----debugger is showing error here
}
i gave instance name on my dynamic text as goodText, and it is on every frame.
I created two dynamic text fields on the same canvas and getting the following compiler error in action script "1120: Access of undefined property event" (line10). The line 10 is one that is bolded.I have two dining.txt and shopping.txt files in the same folder with dining_txt and shopping_txt instant names assigned respectively.Here's my action script.
var loader:URLLoader = new URLLoader();loader.load(new URLRequest("dining.txt"));loader.load(new [code]....
Setting the text property of a flex DateField makes the selectedDate property of that DateField go to null.I need to set the text property so that I can use a particular format (DD-MMM-YYYY).
View 2 RepliesLately i discovered MATE (for Flex development) and was wondering: how do i bind a property in a view (actually a navigatorcontent component) to another property in a class so that they stay in synchronization (meaning that whenever the property in the class changes the property in the view also changes).
So if we have a view called Target.mxml and a property targertProp how do we bind it to the class called SourceClass with property SourceProp?
What's the difference between selectedChild property and selectedIndex property? I read the documentation, both seems to be setting currect active accordion. selectedChild can be only used in actionscript, but other than this, what's the difference?
View 0 RepliesCan we put [Bindable] on functions/methods? I know that bindable is used to change the value of the source property to destination property. But not sure if we can use that for methods. why we cannot put/ if we can then what will be the outcome?
View 1 RepliesI have a class Inhabitant with a property skin which is of type DisplayObject.
Within Inhabitant I need to access the x and y properties of skin using this method:
this["someProperty"];
Rather than:
this.someProperty;
This is fine with properties defined within Inhabitant but I'm not sure how I could do this for a property of skin. This obviously doesn't work but it might give you an idea of what I'm trying to do:
this["skin.x"];
The reason behind requiring this notation is that I have a function which I can parse a String though that will represent a property:
public function addTokenable(property:String):void
{
if(!isTokenable(property))
_tokenables[property] = true;
}
And then a related getter that will return a representation of this instance of Inhabitant as a String:
public function get token():String
{
_token = "class:" + getQualifiedClassName(this).split("::").join(".");
[Code]....
I'm wondering if there is a way I can bind a flex property to flash property?, the flash property is inside a swc file created in flash with the Flex Component Kit for Flash Professional, I can manipulate the flash component as a regular flex component, but I want to bind their properties, is there a way?
View 1 RepliesI can only explain this by an example; so:I have 2 classes and one of them includes the other as a getter/setter property.I need the following code to return the same result:second.first.X = 1; //but it does not. ( ExpectedMethod() is NOT fired. )
View 2 Replies[Code]...
I get "Error #1056: Cannot create property _ld0 on tsl." error.
I have 2 input textfields on the stage and 1 dynamic textfield.
-input1 is for quantity
-input2 is for page count
When a user enters a number into the page count it makes a calculation and places the outcome into the dynamic textfield. This textfield is for the individual price.All of this so far works. What I want to do now is create another dynamic textfield for the total. So the individual price is multiplied by the quantity and this result is put in the new dynamic text field. I have the code for that working but here is where it gets tricky (for me anyway).The total price is to start off invisible. When I roll over the individual price the total price is to appear (For a test lets just say when I roll over an area the total price appears).To stop cursor flickering this should be done inside a movieclip. So... I have create a movieclip and placed a dynamic textfield inside it. They all have instance names BUT how do I reference it in script?I need to tell the resulting calculation to be placed inside the textfield which is inside the movieclip. If it isn't inside a movie clip I can do it. But how to I reference it when inside one?
I've made a flash movie which will load four movie clips at runtime. Actually, the number of movie clips will depend upon number of "NODE" in XML file. Keeping XML file thing aside, I've tried hardcoded values; 4. Let me describe you the structure very well:
There is a main empty movie clip, instance name "mc_scroll" which will be only item on stage. In this movie clip, another movie clip whose identifier name is "blueMovie" will be loaded dynamically. Inside this "blueMovie" MC, there is a button instance name is "blueButton" and inside this button there is a "Dynamic Text" field instance name is "btn_text".
Phewww.. so long chain... inshort:
mc_scroll->blueMovie->blueButton->btn_text
Now, I can load 4 or any number of "blueMovie" inside "mc_scroll". But I also want to set the button text for each button inside each MC!! I'm sure you guys are getting what I want to do. But its not working. Below is the code:
Code:
//INSIDE THE MAIN TIME LINE
for(i=0; i<4; i++)
{
[code]....
how to assign the text dynamically which is inside a button and this button inside a MC which is created dynamically inside a main MC!