Actionscript 3.0 :: Access Public Static Variables In A Loaded Swf?
Feb 27, 2009
I'm literally new in AS3 and slowly trying to migrate in thats why im here seeking for help. Can someone help me how to access/control a certain public variable in a loaded swf from the main swf? this problem has been paralyzing me for days. (sigh...) [code]...
How would you go about calling the public properties and methods of a SWF you load in actionscript?
I have been using stackoverflow for years to answer my programming questions so I wanted to give back by writing a guide to an issue I had a lot of trouble figuring out. This is my first user guide so tell me if there is anything I can do to improve it.
I get this error 1120: Access of undefined property OtherClass.
Ths is the code: Code: public class SomeClass extends MovieClip { function SomeClass():void { } public function SomeFunction():void { var i:int = OtherClass.myVar; trace(i); }}
Code: public class OtherClass { public static var myVar:int = 2; public function OtherClass():void { }}
Is it possible to call/envoke a public static function from JS? I can't seem to get it working and Im almost certain it cannot but I thought I would ask the community.
I have a class called (DropDown.as)In that class I haveCode:public static const DROPDOWN_CHANGE:String = "Drop Down Changed";In my document class (Main.as) I instantiate my class and try and trace my public static constant but it outputs undefined:
Code: var dropDown_mc:DropDown = new DropDown(); trace("Public Static Constant" + " " + dropDown_mc.DROPDOWN_CHANGE);
I'm setting up a class of public static vars that are to be BitmapData.
The problem I'm having is I can't seem to reference the vars dynamically in an array, making it impossible to give them values without some serious procdedural style coding.
Should I assume it's because my array is a private var and placing references to public static vars is illegal? Is somebody gonna call the flash police on me?
Im just starting to get my hands into Action Script v2, and Im having a really hard time working out what the difference is between Public, Private and Static Variables, it seems that declaring variables in these types makes no difference what so ever to the avaliablility of my variables... Could someone be so kind as to put me on the right path?
I have a question about classes. I just learn that static means that functions and/or properties are specifics to a class, but is it a synonym of private? And why statics (not available to any instances?) properties and/or methods can have a public (available anywhere else (timeline)) access modifier? PS: I just start with classes.
I'm loading external swf's in a main swf, which are contained into a container "thisMC" which is a movieClip.
Now I've got various variables in these external swf's and I want to access these variables into my main swf.
eg - var myString:Variable = thisMC.myNumber; trace("Whats the value "+myString);
o/p Whats the value undefined.so if myString is a variable that i've defined in the main swf and myNumber is a variable defined in the external swf, if I try accessing it like this , this is what I'm getting.
I have declared some public static consts within a class Instrument. So that I can hopefully access them like Instrument.SAX, instrument.HARP, etc. etc. But when I go to trace out or compare the consts, it gives me this error: 1058: property is write-only
I'm working on a website built in Flex, but the SWF file after compiling is very large. The websites has multiple pages. So I thought to create a new MXML project for every new page and load it with SWFLoader. I've found this example:
How can I access variables defined on root from a loaded movieclip? The loaded movieclip path can differ, so I cannot get to root like parent.parent, for example. I thought something like this.root.varName may work, but it obviously doesn't.
Is it possible to add my own custom property to the flash.display.Bitmap using a public static method? I'm trying to write a bitmap utility that does something to a bitmap, and stores a Number property onto it afterwards.
[Code]....
I'm still learning AS3.0 OOP, I think that this can't be done with this method. I think I have to make a new Class that extends 'Bitmap', add the prop there, and then in the Main.as make a new instance of that class, point to the target Bitmap, and run the method in the extended 'Bitmap' class (?).
I'm tryng to make a public static method call another method, but Flash throws error 1180, sayng that the method called by the static method is undefined.
I have a class like this.. public class Doc { public function Doc():void {} public var myVar:Boolean; } How can I know if the value held by myVar is default false, or someone has assigned false to it? Isn't there an undefined state? How can I achieve such a thing?
This might be a very stupid question, but I have to ask it anyway. I am graduating in about a month and while studying, I have always been taught to use properties instead of public variables. So I started wondering what the advantage was and I must say that in some cases, I have no clue at all. Of course it is handy when some other logic needs to be executed when setting properties or getting properties, but is there any advantage to using properties when you are only getting/setting a variable? An example of what I mean is shown below (As3).
I have a simple problem which is not easy at the moment. this is a text field class which add a text field to a movieclip (passed from root class) and also save(buffer) some data (like xml file name) in it`s public variables:
.. now I use a for loop to add instance of that class to a movie clip on stage:
for (var i:int = 0; i<Bunker[0]["trans0size"]; i++) { menuData[i] = new menuitem00(i, menu_mc, Bunker[0]["transfile0" + i]);// pass i , a movieclip named menu_mc and an xml file name menuData[i].name00 = Bunker[0]["transtitle0" + i]; // pass text menuData[i].activateFlag = true; // set actveFlag to true menuData[i].init(); // run init() inside the instance. it adds textfield to the menu_mc and also set name00 as Text for the textField }[code].........
I want to get "xml00" var from that instance on the stage by mouse click but, trace (evt.target.xml00); is not working .. also trace (evt.target.name00); is not working. I can get everything like .alpha or .text from txt00 but not other variables in my object.
I have a bunch of variables I need to pass to some class from frame where I instance classes. Is there any other way do make Class read that variable values beside this?
Sample:
ActionScript Code: var _imgPaddingVert:Number = 2; var _imgPaddingHor:Number = 3; var _minTopMargin:Number = 30;
I think I've made some fundamental error here... I have a public variable a in class A, and I want to access it in class B, but I cant (access of possibly undefined property...) now every time I want to refer to a variable in class A I need to pass the variable reference to class B's constructor
I have been working on a Flex Mobile application using Flash Builder 4.6. I have 2 mxml 'views' in my project. In one mxml file, i have a function that grabs xml data. In my other mxml file, I have a refresh button that when depressed is suppsosed to call the function in the first mxml file in order to once again grab the xml data. I dont know how to call that function from outside the mxml file it is housed in. [UPDATE #2]* I thought I should share some more details about my issue.
It is a reddit client mobile app. It fetches the feeds, etc. In my main view called RedditReaderHomeView.mxml, I am using a splitViewNavigator spark component to house two other views like so:
How to access a public method in the swf loaded in a new ApplicationDomain?
ActionScript Code: var appDomainA:ApplicationDomain = new ApplicationDomain(); * var contextA:LoaderContext = new LoaderContext(false, appDomainA); var loaderA:Loader = new Loader(); loaderA.load(new URLRequest("application2.swf"), contextA)
I want to access a public method in application2.swf from the main swf that loaded it.
i've never tried to do this before, so my head a swimming a bit. i'd like to have a public boolean called enabled in myClass custom class. if it's called to be changed, how do i trigger a function from the change? should i add an Event.CHANGE event listener to my variable?
I have a flex application which collects data entered by the user and posts it off to a web service I have running on a back end server. The flex application does not authenticate users (it's available for anyone to use without setting up an account) and communicates to the web service using HTTPS. There is an XML firewall in place for preventing certain malformed requests, DoS attacks etc and the web service validates all data received from the client.
If I was to sign the content then I could use the XML firewall to verify the signature but I assume that any certificate type data I embed in the client could be extracted out of the flex app through some means of de-compilation. My question is, is there any way of limiting calls to the web service to only those from my flex client? I understand that a user could input bad information but I'm really trying to prevent another client or 'bot'.