ActionScript 3.0 :: Access To Methods Of Another Class
Dec 6, 2010
I need to call a method writeln() from the method buttonClick() which is in another class. Also need from a method of readResponse () method call loadSocket (str: String)
Errors:
Attempted access of inaccessible method writeln through a reference with static type main2.as$36:CustomSocket.
Call to a possibly undefined method loadSocket through a reference with static type Class.
Here is my code with 2 classes:
ActionScript Code:
package {
import flash.display.Sprite;
import fl.controls.Button;
import flash.events.MouseEvent;
import flash.text.TextField;
import flash.text.TextFieldType;
[Code] .....
I have an urgent task to implement in my project code. I can't able to access the new properties and methods which are present in FileReference Class. For load() ,save() methods needs runtime version of Flash Player 10. I need to include the flash player 10 in CS3 publish settings Version. Otherwise you can suggest how i can able to access the FileReference class new properties and methods without CS4.
Let's say I have a FLA file with document class called main. In main, let's say I have a method called test1 that just outputs "hello world" via trace. On the FLA I have a movie clip. In that movie clip, when the timeline reaches frame 123, I want it to invoke the test1 method (I just set up a simple action on the frame). However, I get an error saying that the method is undefined. I try this.parent.test1() too but that gives me the same error. Is it not possible to invoke a document class property from within the timeline of a movie clip that's on the stage?
Let's say I have a defined ClassA. ClassB extends ClassA and there's a Movie Clip instance on the stage linked to ClassB. How would ClassC access the properties and methods of ClassB without extending ClassB or creating a new instance of ClassB? The way I'm currently doing it is by referencing the stage instance linked to ClassB and then using the dot syntax to access ClassB instance variables, and this works only if the the accessed variables are public or internal, depending on what package ClassC is part of. I would like to know if there's a better, cleaner way to accomplish this.
My aim is to access the FileReference class Flash Player 10 properties,methods and Events using CS3 instead of CS4.For load() ,save() methods needs runtime version of Flash Player 10.I need to include the flash player 10 in CS3 publish settings Version.Otherwise you can suggest how i can able to access the FileReference class new properties and methods without CS4.
I am still very new to Actionscript and have an okay working knowledge of Flex. I am working on an AIR application that runs a SQLite database underneath. The database is only 3 tables (projects, items and types). I was wondering if Actionscript best practices are to use a data access object or layer to store all of my database functions or to just run them inline as needed. I would assume an access layer would be best for interacting with the database for usability, but I can't seem to find much documentation for SQLite in AIR.
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'm using a movieClip inside a ScrollPane to show a list of CheckBoxes. The amount of CheckBoxes shown is dynamic, it depends on a SQL query. After the query is done, I add as many CheckBoxes as rows in the result set. What I am trying to do is to access some methods I wrote in the MovieClip inside the ScrollPane to get the length of the CheckBoxes, check which ones are selected and the label they have (their label is also defined by the SQL query).
I've tried this valueINeedToGet = Object(root).scrollPaneInstance.source.functionINeedToRun(); But it returns error #1006 How can I access the code inside the MovieClip inside the ScrollPane?
How do I access the methods of a dynamically created movieclip/object?
For simplicity sake I didn't post code on how I dynamically created the movieclip. Instead, assume its already created. It is an object. It is called field_2. Below it is referenced by using getChildByName('field_' + field.id);
Check_box_component.as
public var testVar:String = 'test'; public function testReturn() { return 'value returned';
[Code]...
When I trace temp.testReturn, why does it show "function Function() {}" instead of "value returned"?
i'm attaching clips from library using attachMovie. inside those clips are functions. I'd like to call those functions a few lines after instantiating them using 'attachMovie.' It seems that the clip isn't fully loaded because my functions aren't being called. I tried using movieClip.onLoad, but no dice.
Imagine the following setup. The main swf loads a child swf.In AS2 i would simply use _parent or _root to call the desired function. How can that be done in AS3?Can this still be done? Can I call a function on the main swf from the loaded one? How about the other way around, this time, from main to loaded swf?
I have created a loop to instantiate tiles on a board. In the following example, "Gametiles" is an array containing objects of class "Tile" which is a class that extends MovieClip. "Game" is a MC that I added to the stage in the flash developing environment.[code]This method is a bit cumbersome though. I really don't want to have to create a var and call getChildByName every time I want to interact with these properties or methods. How can I set up these children so that I can access them directly without the extra steps?
I'm new to AS3. I've got two classes. damnMoles.as and startBtn.as
The damnMoles class uses a method called randomPlay(); ActionScript Code: public function randomPlay():void { this.gotoAndPlay("moleLabel"+randomNumber(1, 18)); }
Which basically allows the looped mole animation to start from various points in its timeline. I could probably use a different method to do this using an interval variable, but I originally coded this in AS2.0 and I want to update it, to see how this are different. damnMoles class is attached to 6 mrMole# instances on the timeline.
Originally I used code on the main stage timeline to start the animation of the moles. ActionScript Code: startBtn.addEventListener(MouseEvent.CLICK, startClick); function startClick(event:MouseEvent):void { mrMole1.randomPlay(); }
This works fine, however, I would like to refrain from timeline code and use .as files. My startBtn class looks like this, but I get the error: 1120: Access of undefined property mrMole1.
What if you have methods you want to use in your project, that really have no need of a class, or in other words, there is no need for an "object" associated with it. It's not going to have member variables, so why bother making it a class?
for example,
I want to create a randomNumber method, takes two numbers, low high, returns a random between or equal.
Originally in my code I had a very top level class i just called globalLibrary that extended movie clip, i put my randonNumber method there. Then every class in the project extended that. I got the method scoped properly, but to me it looks like a hack.
For example, the most basic functionality in flash like +, even = , trace, etc. Are these also methods defined in some class that we are extending? Or are they methods that have no object associated since that would seem to make just as much sense.
why can't I just create a file of methods, and import that file and have access to these methods?
SETUP: I have a MX2004 project where I'm attempting to pass a movie clip to a class, and have a method of the class act as the function for the onEnterFrame. PROBLEM: The class appears to lose reference to the movie clip when onEnterFrame() is called. TO DUPLICATE: Two files are needed, they are outlined below:
I need a way to reference to object (or the class methods inside). I have a button "Add box" and when it is pressed it creates a new instance of class "MyBox". The thing is everyone of these objects get the same name "box".Here's a hint of what it's like:
Code: var arrBoxes:Array = new Array(); // var n:Number = 1;[code]...
Inside of the addBox function I can easily refer to the Object with just "box" (for example box.name = ..)but when in another function I cannot (and by then I might have created many "box"es).
i have a main movie. i use a loader to load a "example.swf" file. then i place that file inside a holder movieclip. in example.swf, i have an instance of a class i just wrote. this class has some particular methods. from my main movie, i want to call the methods of the instance of my class i have in example.swf. how can i do that??? i know it's a kind of casting, but none seems to work.
Here is the situation:I have created a movieClip named "tp_crack" on the timeline and created its class using linkage called "tp_crack".The tp_crack mc is like a small rectangle which breaks in 3 seconds when it is played.I have a seperate class in which I have used tp_crack to create many instances of tp_crack going by the names: cracked1","cracked2" etc.These instances are present in another movieClip (this time created within the class) called "crackContainer".Now I have added the following code to check for hitTest of those cracked1,2,3...... with a spaceship.The hitTest works but flash does not recognize the pieces as movieClips and does not play them as required, instead it gives me an error saying:1061: Call to a possibly undefined method play through a reference with static type flash.displayisplayObject.
for (var i:uint=0; i<crackedPieces; i++) { if (crackContainer.getChildAt(i).hitTestPoint(Spacesh ip.x,Spaceship.y+(Spaceship.height/2),true)) {