Tracking Forums, Newsgroups, Maling Lists
Home Scripts Tutorials Tracker Forums
  Advanced Search
  HOME    TRACKER    Flash




Referencing An Mc Created In One Class From Another Class



Hello everybuddy, Cracking site, I normally don't post but have read and learned much from here thanks to all the posters! I'm struggling with AS3 at the moment, forcing myself to take an OO approach and slowly getting there... However I'm now stuck... My project is a dynamically generated web page, getting pics and data from xml files. I have a button class that creates buttons based on an xml file, this is in its own class file(buttons.as) which is called from my document class. The document class also creates a bunch of thumbnails using (screen.as), the thumbnails are placed in an MC called thumbs (which created by the document class). What I need now is a way of linking my button class to the thumbs MC, so that when I click a button my thumbs MC is tweened using my dotween function. when I run my project i get an errror from my buttons.as --> 1120: Access of undefined property thumbs. I guess what i'm asking is how to reference an MC created in one class, from another seperate class. I thought that by setting it to public this would be possible but its not working... Here is my code:
Code:
//Document.aspackage { import flash.display.MovieClip; public class Document extends MovieClip { public var thumbs = new MovieClip; public var butArr = new Array; public var screen1:screen; public var thumbArr = new Array; public function Document() { //add buttons for (var i:uint = 0; i < 10; i++) { button[i] = new buttons(i); addChild(button[i]); } //add thumb container this.addChild(thumbs); //addthumbs for (var i:uint = 0; i < 10; i++) { var thumbleft:uint=140+i*320; thumbArr[i] = new screen(thumbleft,275,i,320,240,"thumb"); thumbs.addChild(thumbArr[i]); } screen1 = new screen(140,35,1,640,240,"home"); addChild(screen1); } }}

Code:
//buttons.aspackage { import flash.net.URLRequest; import flash.net.URLLoader; import flash.events.Event; import flash.display.MovieClip; import flash.display.SimpleButton; import flash.events.MouseEvent; import flash.text.*; import flash.filters.GlowFilter; import fl.transitions.Tween; import fl.transitions.TweenEvent; import fl.transitions.easing.*; public class buttons extends MovieClip { public var num:uint=1; public var myXML:XML; public var thisText =thisText; public var thisID:uint = thisID; public function buttons(thisID) { this.num=thisID; getXML(); } public function getXML() { var urXML:URLRequest; var ulXML:URLLoader; urXML=new URLRequest("buttons.xml"); ulXML = new URLLoader(urXML); ulXML.addEventListener(Event.COMPLETE, xmlLoaded); ulXML.load(urXML); } public function xmlLoaded(event:Event) { myXML = XML(event.target.data); var xmlID=thisID-1; thisText=myXML.butTitle[this.num]; makeButton(thisText); } public function makeButton(thisText) { var myTextField:TextField=new TextField; // Here we add the new textfield instance to the stage with addchild() addChild(myTextField); // Here we define some properties for our text field, starting with giving it some text to contain. // A width, x and y coordinates. myTextField.text=thisText; myTextField.width=120; //myTextField.height=50; myTextField.multiline = true; myTextField.wordWrap = true; myTextField.x=15; myTextField.y=this.num*50+50; // Here are some great properties to define, first one is to make sure the text is not selectable, then adding a border. myTextField.selectable=false; //myTextField.border=true; // This last property for our textfield is to make it autosize with the text, aligning to the left. //myTextField.autoSize=TextFieldAutoSize.LEFT; //This is the section for our text styling, first we create a TextFormat instance naming it myFormat var myFormat:TextFormat=new TextFormat; // Giving the format a hex decimal color code myFormat.color=0xFFFFFF; // Adding some bigger text size myFormat.size=16; myFormat.font="SkandiaDisplay"; // Last text style is to make it italic. //myFormat.italic=true; // Now the most important thing for the textformat, we need to add it to the myTextField with setTextFormat. myTextField.setTextFormat(myFormat); this.addEventListener(MouseEvent.CLICK,changePage); this.addEventListener(MouseEvent.MOUSE_OVER,mouseover); this.addEventListener(MouseEvent.MOUSE_OUT,mouseout); } function mouseover(evt:MouseEvent):void { var glow:GlowFilter = new GlowFilter(0xFFFFFF,0.5,5,5); this.filters=[glow]; } function mouseout(evt:MouseEvent):void { this.filters=[]; } function changePage(evt:MouseEvent):void { var newPage:Number=evt.currentTarget.num; trace(newPage); //not working //1120: Access of undefined property thumbs. thumbs.dotween("x",700,460); } public function dotween(command,startVal, endVal) { var myTween:Tween = new Tween(this,command, None.easeOut, 0, 1, 1, true); } }}
Any help would be greatly appreciated!!! Thanks in advance!



KirupaForum > Flash > ActionScript 3.0
Posted on: 08-06-2008, 11:00 AM


View Complete Forum Thread with Replies

See Related Forum Messages: Follow the Links Below to View Complete Thread

[Flash 8] Referencing Class Variables From OnEnterFrame Created Within Class
Hi,
It's been a while since my last post here, but I was hoping someone could help me with a problem I'm having. I want to reference and change a class variable from within an onEnterframe function defined within a class. I can actually do this right now, but I want to do it in a different way. Here's a code sample of what I am talking about:


Test.fla file:

Code:
var t:tester = new tester()

Working tester.as file:


Code:
class tester{
private var num:Number = 100;

function tester(){
var classObj:tester = this;
var mc:MovieClip = _root.createEmptyMovieClip("test",1);
mc.onEnterFrame = function(){
trace(classObj.num); //This traces 100 (CORRECT!!!)
}
}
}
This traces 100 to the output window, just like it should

Here is the way that I would like to do it, because I want to reuse my onEnterFrame Stuff:

Code:
class tester{
private var num:Number = 100;

function tester(){
var classObj:tester = this;
var mc:MovieClip = _root.createEmptyMovieClip("test",1);
mc.onEnterFrame = this.mcOnEnterFrame;
}

private function mcOnEnterFrame(){
trace(num) //this traces undefined (BAD!!!)
}
}

As you can see, the work around to reading the class variable in the onEnterFrame function is to create a reference to the class object, before defining that function, then using the reference you created to access the class variables.

I have tried various iterations to get the second example working, but have had no luck. Does anyone know a way to get the second method working, or am I stuck using the first method.

Referencing Dynamically Created Instances Of Class
I've looked up several links but can't figure out why I can't access my dynamically created instances of class in as3... my code is...


Code:
var textPara:textPara1 = new textPara1();

content.addChild(textPara)
textPara.name = "bab"


var maxIndex:Number = content.numChildren - 1;
content.setChildIndex(content.bab as MovieClip, maxIndex);
content.bab.y = 50;
content.bab.x = 500
;


It adds an instance of the "textPara1" class (which I've put in the variable placeholder "textPara") to the display list of the "content" movieclip...

but despite assigning the new instance the name "bab", I can't seem to be able to access it (i.e. when i want to set the x and y position).

I thought it might have something to do with using array [i.e. square brackets] syntax, but already tried that to no avail.

My other thought was maybe I have to write in some sort of code that makes sure the instance has loaded to the stage/display list first and then write and function which references only after that has happened... but I could be talking nonsense!

Please please help. Any thoughts/links very very appreciated.
Cheers.

[F8] Referencing A Static Class Inside Another Class's Instance
I've got a movie loading into a framework.

This framework has 1 instance of the class main called main.

Inside this class, another class is used, but it is used directly, not as an instance. E.g.:
code:
import com.StaticClass;
class main {
private function UseStaticClass():void {
StaticClass.init();
}
}


From my movie, I can reference the main instance as _root.main. Can I reference StaticClass at all if there's no explicit instance created or it's not assigned to a public variable?

I can't modify main to include getter/setter methods, that's why I ask.

Thanks.

Static Class Variable Referencing Class Instance
I was given the task of writing a class that would send serial requests for xml data, the idea being that the requests could be added while previous requests were still in progress, but the class would queue them and wait for the reply of one request to come back before sending the next.

The way I did this was to create a class instance for each request, and the request itself would be stored in an instance variable, waiting to be sent. A static variable called queue (accessible to all instances) was then given a reference to the instance, and when this reference got to the top of the queue, queue would call the sendRequest() method on that instance.

The reason why I am using one instance per request is so that the replies can be retrieved via the instance, so keeping each request entirely discreet.

Everything works very nicely, but the problem is my IT manager looked at the code and told me that you cannot put a reference to a class instance in a class static variable... and for this reason he has informed my line manager that he has serious reservations about the code, and recommends that it is not incorporated it into the project. However, the code works very well on my local machine and on the testsite, and no-one has experienced any problems with it.

Can someone reassure me here... I can see absolutely nothing wrong with having a class static array hold references to each of the instantiated class instances. And the proof is in the pudding.. it works. Can anyone else see a problem here?

Button Created Within Class Cannot Access Class Properties
Hi,
I'm using the following code within a class:
code:
_head_mc.attachMovie("headButton", "head_btn", this.getNextHighestDepth());

_head_mc.head_btn.onRelease = function () {
containingClip_mc._parent._parent.clickedHead(_per sonName);
}


The button gets attached (line 1). This works because I can see the mouse changing to a finger.

The onRelease function is declared and works. I know because if I put a trace in there, it works.

The function it calls (containingClip_mc._parent._parent.clickedHead also works, becuase I can see traces from within it.

But the _personName variable is passed as undefined.

I know that this variable has a value, because I can trace it outside the function, but it seems that this onRelease function is not able to see the variable. It's declared as private, but setting it to public doesn't fix anything.

I imagine there's something I don't understand about the scoping of variables. I've tried _parent references, but that doesn't appear to help either. Is there a better way to do this or a workaround?

Barrette

Added by edit
Okay, I've pretty much determined this is a scoping issue. From the onRelease function, I'm unable to access ANY of the functions within my class. I still would like advice on how to do so..

Barrette

Probelms Referencing A Class
Basically I have a class which extends EventDispatcher (DropDownMenu) and creates instances of another class(MenuButton) dynamically the first class is a menu the second the menu buttons for that menu.


It was all working fine until I make and instance of the dropdown menu which then makes instances of buttons and although the classpath is correct it will not make an instance of the button

this["menuMC"+i] = new MenuButton(dropMenu_mc, p_obj.eventName, 1, 1, p_obj.txt, "VP-100-256-639", "icon_mc", p_obj.iconType, 10, yPos);

unless I first declare this["menuMC"+0] = new MenuButton(); explictily in DropDownMenu constructor which defeats the dynamicnesss of it as I dont want to predeclare the vars because I dont know how many buttons there are going to be.

Has anyone experienced anything like this - its like the class has no scope in the parent class unless it is first declared in constructor - any help would be appreciated.

AS2 Class Object Referencing
Okay, so I have an object which is derived from mty DrawGrid3d class which works lovely. The draw3d class extends the movie clip class and has a constructor methos which believe it or not builds a 3d grid. Now I cant seem to be able to refer to the objects properties in any way. for example the code below traces out 'undefined'.
Any ideas?
Cheers


Code:
my_grid3d=new DrawGrid3D(_root,130,100,16,16,12,18,176,5.9,0xC5D7FE,0xFFFFFF)


trace("GRID IS:"+my_grid3d._x)

Referencing Stage From Class
Hello,
I am trying to make my first as3 class based game and so i was wondering if i could get some help. although the game wont have fancy graphics, i just would like to understand the way it works...currently, i am at a point where im getting :

1067: Implicit coercion of a value of type flash.display:Stage to an unrelated type Stage.
in my main file robot.fla, im using

var robo:robot=new robot(stage);
//var starenemy:enemy1=new enemy1(this.stage);
addChild(robo);

inside that robot.as
....
public class robot extends Sprite {
import flash.display.Stage;
private var _stage:Stage;
....
public function robot(stageRef:Stage):void {
_stage = stageRef;
...
}
amongst other things and i cant reference anything from the stage.

I think im going nuts trying to figure out how to correctly reference things to the stage. so can you take a look and guide me and tell me how i can proceed?
Attached is the zip file

Referencing Class Methods.
Hi,

I am have a class which I am instantiating in the first frame of a movie.
The class has a method called statecheck which I would like to access from a movie clip symbol.
I can reference the method easily from the first frame. what is the correct way of referencing it from the movieclip?

import Tpanel

var public panel:Tpanel = new Tpanel;

panel.statecheck(this); // works

the same line of code in the movieclip symbol does not.

also

_root.panel.statecheck(this); // does not work in as3

Cheers


Matt

Help Referencing A Visual MC From Another Class
I have a fla file with visual content onstage. This Fla also has a document class assigned called Home(extends Movieclip.) One of the visual assets onstage is a movieclip called mcHome that the Home class controls successfully.

I’ve got another class, Photos(extends Sprite) that I have imported(from another package) and it also successfully does what it’s suppose to. However, when I add code to Photos to refer to mcHome, the onstage movieclip, I get an


1120 access of undefined property mcHome error

What is necessary to make Photos understand what mcHome is?
Thanks

Referencing A Subclip From Within A Class File
Say I have the following movieClip Structure

myMovieClip
myMovieClip.subMovieClip

I want to make a Class file for myMovieClip

I would like this Class to reference and adjust the subMovieClip._y using commands from the class file.

I keep getting errors when trying to do this. Is this a matter of syntax or is there no way to reference another movieClip from a class file?

Thanks

Referencing Class Variable From Inside Self
I have a class in an external .as called CustomGroup, and it will take in and process a number of objects which I want to name.

Code:
var myGroup:CustomGroup = new CustomGroup();
var otherGroup:CustomGroup = new CustomGroup();

myGroup.storeMarkers(someArray);
otherGroup.storeMarkers(otherArray);
I would like for each marker in someArray to be indexed with the instance name of the class object (i.e. "myGroup001", "myGroup002", "myGroup003") and ("otherGroup001", "otherGroup002", "otherGroup003")... but I cannot figure out how to target the class variable name from inside itself.

Help?

Dynamic Class Referencing Question
Quick question, I'm sure this is a stupid syntax problem...


Code:
fighter1_mc.aiPattern="SwoopDown";
fighterPattern = new classes.ai_routines[fighter1_mc.aiPattern](this, 20, 1, 5, 5);
fighterPattern = new classes.ai_routines.SwoopDown(this, 20, 1, 5, 5);
The second one creates the object as it is supposed to, but the first one does not. What is the correct way to dynamically reference the object?


Thanks in Advance

Problems Referencing Parent Class
I would like to have a child access the properties of the parent class and I've read _parent allows you to reference a parent object. However, I can't seem to get it to work. Here's an example.


Code:
class test{
public var name:String;
public var Test:test2;
function test(){
name = "testSring";
Test = new test2();
}
}

class test2{
function test2(){
var This:Object = this;
trace(This._parent.name);
}

}
//in the .fla
var Test:test = new test();
If I run it, I will get "undefined".

Referencing Stage.stageWidth From A Class
I created a custom class in a .as file. I then linked this custom class with a symbol from the library in my .fla file. However, I can't reference stage.stageWidth in my custom class file. I get a null object error.

I think this happens because the custom class file is associated with a symbol on the stage and not the stage itself. For example, if I set the fla file's Document Class to the name of my custom class I can reference stage.stageWidth in the custom class. But I don't do this because I am creating multiple instances of the symbol on the stage. In order to do that properly i found I have to set the class in the properties panel of the symbol to the underlying class which then defines how each symbol behaves.

Under this type of linkage, is there a way to reference the stage width from the class?

I've tried root.stage.stageWidth and parent.stage.stageWidth to no avail. I also made sure to import flash.display.* in my custom class.

Below is the code for my .fla file and my .as file. In the .as file you'll see the line "x = Math.random() * stage.stageWidth;". This is the line giving me problems. I could hard code it, as I do for the y variable on the next line, but I'd prefer not to in order to keep the code flexible.

I also attached the files in a zip.

Any help would be appreciated.


ActionScript Code:
//.fla code

var i:int;

for(i=0; i < 100; i++){
    var myBall:flaBall = new flaBall();
    addChild(myBall);
}


//.as code

package {
   
    import flash.display.*;
    import flash.events.Event;
   
   
    public class Ball extends MovieClip{
       
        var dx:Number;
        var dy:Number;
       
        public function Ball(){
            addEventListener(Event.ENTER_FRAME, onEnterFrame2);
            reset();
        }
       
        private function reset(){
            x = Math.random() * stage.stageWidth;
            y = Math.random() * 400;
            dx = Math.random() * 20 - 10;
            dy = Math.random() * 20 - 10;
        }
       
        private function onEnterFrame2(event:Event):void{
            move();
            checkBounds();
        }
       
        private function move(){
            x += dx;
            y += dy;
        }
       
        private function checkBounds(){
            if (x > 550 || x < 0){
                dx *= -1;
            }
            if (y > 400 || y < 0){
                dy *= -1;
            }
        }
    }
}

Referencing A Instance Inside A Class
Hi --

I am working on converting a movie clip to a Class so that I can more easily
reuse it in later projects.

I have pretty succesfully converted my AS code from my include file to a
Class file. However, I have two objects on the stage, topBG and botBG and
whenever I reference these items inside my code, such as botBG._y I get an
error at compile time saying "There is no property with the name 'botBG'"
How can I set it so these assets can be referred to inside my code?

The code worked fine when it was just a movie.. Also, this is ActionScript
2.0.

Thanks

Rich

Referencing Stage From External Class
I have an external class file that extends the MovieClip class and is linked to a movieClip on the main stage. I need it to be able to access properties of other movieclips on the main stage. How could I do this. Here is what my base movieclip class that I want to access the stage with looks like. Remember, it is linked to a movieclip on the stage, if that matters...
Obviously there is more code in the class, but I removed it for the sake of simplicity.







Attach Code

package{
import flash.display.MovieClip;
import flash.display.DisplayObject;
import Math;

public class Test extends MovieClip{

public function Test(){ //Constructor

}
}
}

Referencing Stage.stageWidth From A Class
I created a custom class in a .as file. I then linked this custom class with an symbol from the library in my .fla file. However, I can't reference stage.stageWidth in my custom class file. I get a null object error.

I think this happens because the custom class file is associated with a symbol on the stage and not the stage itself. For example, if I set the fla file's Document Class to the name of my custom class I can reference stage.stageWidth in the custom class. But I don't do this because I am creating multiple instances of the symbol on the stage. In order to do that properly i found I have to set the class in the properties panel of the symbol to the underlying class which then defines how each symbol behaves.

Under this type of linkage, is there a way to reference the stage width from the class?

I've tried root.stage.stageWidth and parent.stage.stageWidth to no avail. I also made sure to import flash.display.* in my custom class.

Any help would be appreciated.

Referencing An Object Inside A Class
and I'm trying to add an event listener and a function to the class, but I keep getting errors of undefined,
I tried just about everthing to be able to refference obj0 can anyone please help?

objGroup.obj0.addEventListener(MouseEvent.CLICK, onClick)
private function onClick (event:MouseEvent):void{

trace ("Click");

}

any help or advice will be greatly appreciated sincerely newwave
---------------this is my complete code - above code-------------feel free to use as you wish----------------------







Attach Code

package {
import flash.display.SimpleButton;
import flash.events.MouseEvent;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.events.Event;
import org.papervision3d.core.proto.MaterialObject3D;
import org.papervision3d.lights.PointLight3D;
import org.papervision3d.materials.shadematerials.FlatShadeMaterial;
import org.papervision3d.objects.DisplayObject3D;
import org.papervision3d.objects.primitives.Sphere;
import org.papervision3d.view.BasicView;

public class pv3dMyRotation2 extends BasicView {

private static const ORBITAL_RADIUS:Number = 300;
private var angle:Number = 0;
private var obj0:Sphere;
private var obj1:Sphere;
private var obj2:Sphere;
private var obj3:Sphere;
private var obj4:Sphere;
private var obj5:Sphere;
private var obj6:Sphere;
private var obj7:Sphere;
private var objGroup:DisplayObject3D;

public function pv3dMyRotation2() {
super(0, 0, true, false);
stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;
init3D();
createScene();
startRendering();
}

private function init3D():void {

camera.x = -200;
camera.y = 0;
camera.z = 0;
}

private function createScene():void {

var light:PointLight3D = new PointLight3D(true);
light.x = 400;
light.y = 1000;
light.z = -400;

var M1:MaterialObject3D = new FlatShadeMaterial(light, 0xFF0000, 0xFFCC99);

for(var i=0; i<8; i++) {
this['obj'+i] = new Sphere(M1, 50, 10, 10);
this['obj'+i].x = ORBITAL_RADIUS * Math.cos(angle);
this['obj'+i].z = ORBITAL_RADIUS * Math.sin(angle);
angle += (360 / 8) * Math.PI / 180;
}

objGroup = new DisplayObject3D();
objGroup.addChild(obj0);
objGroup.addChild(obj1);
objGroup.addChild(obj2);
objGroup.addChild(obj3);
objGroup.addChild(obj4);
objGroup.addChild(obj5);
objGroup.addChild(obj6);
objGroup.addChild(obj7);

scene.addChild(objGroup);
scene.addChild(light);

}

override protected function onRenderTick(event:Event=null):void {
objGroup.yaw(1);
super.onRenderTick(event);
}
}
}

























Edited: 02/01/2009 at 08:58:22 PM by newwaveboats

Referencing Timeline Variables From A Class
Yet another question..How do I referece, within a class function, variables residing in the timeline that is invoking the class? (Very beginner here!)

So far I've had to send the timeline variables from the timeline to the class's function as parameters, which works, but there's so many. And I know I can just make these variables reside in _root and reference them this way, but that is not smart.

Does it have to do with _parent at all? Tried using it but failed..

Thanks.

Referencing A Movie Clip From A Class .as File
Okay, so I'm making a game. I've made various class files for various elements on the screen and used linkage to make the movie clips on screen members of my custom classes (by right clicking on the movie clip in the library and selecting linkage, etc). But I'm having an issue...
I can't reference child movie clips. So say I have a movie clip called "sea", and within it I have one called "fish" (instance name, of course). I use linkage to make "sea" a member of my custom "SeaClass" class. However if I try to do something like this.fish.gotoAndStop(5); I get an error saying that there is no property "fish". I understand that it's looking for a "fish" function instead of the "fish" subclip, but is there any way to make it reference the subclip?
This is a big issue because I'm having to use a lot of onClipEvent(enterFrame) variable checks for my subclips and whatnot to make them execute something instead of being able to put the command straight in a function and its really bogging down code.
I hope this makes sense... thanks in advance for the help!

Referencing The Root Timeline Within Using _root In A Class
I have a class that I wrote and I need to reference the root timline but I can't use _root to do that because my movie will be loaded into another movie. Is there another way to reference root?... maybe a _global variable? If so, how would I set up that global variable on the root timline and then use it in the class?

Thanks.

Referencing A Parent Method From A SimpleButton Class
I'm new to AS3 (know AS2 fairly well), and am having trouble wrapping my head around OOP methods of doing things. I know it will keep things organized and more modular, so I'm trying to learn, but am having trouble...

Specifically, I've defined a method called showScreen within the document class (Main). I've also defined a NavButton class that's attached to a hand full of simple buttons objects. The only problem is that, when one of the buttons is clicked, I receive an error that the parent class's method (showScreen) isn't defined.

1061: Call to a possibly undefined method showScreen through a reference with static type flash.display:DisplayObjectContainer.

(It's worth noting that I'm still learning to read those fancy new errors, and that making things public / private / static have only confused me further as to their relevance to my problem.)


PHP Code:



// Main.as... abridged to save you time
package com.as3Adventures
{
    public class Main extends MovieClip
    {
        function Main()
        {
            // sets up the elements on the stage, etc
        }
        public function showScreen(which:String):void
        {
            // animates the old screen out and displays
            // another, based on the variable passed
            
            // this is the method I want to call
        }
    }
}




And


PHP Code:



// NavButton.as... also abridged
package com.as3Adventures
{
    public class NavButton extends SimpleButton
    {
        function NavButton()
        {
            // sets up the button...
            addEventListener (MouseEvent.CLICK, clickHandler);

        }
        function clickHandler (e:MouseEvent):void
        {
            // does a little magic with the button, animating, etc... then...

            trace(parent);  // returns "[object Main]"
            parent.showScreen(this.name);  // <------------ Causes headaches
        }
    }
}




I suspect that making NavButton extend MovieClip rather than SimpleButton would fix this (am I wrong? I have no idea), but doing so breaks the functionality for the button that's already been written. And besides, this seems like a fairly common thing to do - calling a method from a button.

What am I doing wrong? Any help would be much appreciated.

Referencing Buttons From Class That Extends Movieclip
I'm attaching actionscript classes to my movie clips by extending the MovieClip class and specifying the AS 2.0 class in the linkage properties in the library – with the intention of having basically no code in the FLA.

This works fine and I can respond to events and reference objects contained within that movie clip by declaring a variable with the same name as the object's instance name in the class.

PROBLEM is that the object has to be present on the first frame of the MC, or the class just doesn't know about its existence. I have a short animation on the timeline, and then the btnOK button appears for the first time a few frames later. Problem is that I can't setup any sort of event handler or listener, because when the class is initialised on the first frame it doesn't seem to know about the button.

So in the below code... if the btnOK is on the first frame of the timeline, it traces, otherwise btnOK is undefined.


Code:
class myMC extends MovieClip {

var btnOK:Button;

function myMC() {
btnOK.onPress = function() { trace("clicked") };
}
}
Yeah sure I could place the button on the first frame and show/hide it as needed but that wouldn't be ideal and would make me want to vomit.

By the way, I'm talking about normal everyday button symbols, not the Button component.

Any ideas?

Cheers.

Referencing A Parent Method From A SimpleButton Class
I'm new to AS3 (know AS2 fairly well), and am having trouble wrapping my head around OOP methods of doing things. I know it will keep things organized and more modular, so I'm trying to learn, but am having trouble...

I've defined a method called showScreen within the document class (Main). I've also defined a NavButton class that's attached to a hand full of simplebutton objects. The only problem is that, when one of the buttons is clicked, I receive an error that the document class's method (showScreen) isn't defined. I suspect I'm just not referencing it correctly.

1061: Call to a possibly undefined method showScreen through a reference with static type flash.display:DisplayObjectContainer.

(It's worth noting that I'm still learning to read those fancy new errors, and that making things public / private / static have only confused me further as to their relevance to my problem.)


ActionScript Code:
Main.as... abridged to save you time
package com.as3Adventures
{
    public class Main extends MovieClip
    {
        function Main()
        {
            // sets up the elements on the stage, etc
        }
        public function showScreen(which:String):void
        {
            // animates the old screen out and displays
            // another, based on the variable passed
           
            // this is the method I want to call
        }
    }
}


ActionScript Code:
// NavButton.as... also abridged
package com.as3Adventures
{
    public class NavButton extends SimpleButton
    {
        function NavButton()
        {
            // sets up the button...
            addEventListener (MouseEvent.CLICK, clickHandler);

        }
        function clickHandler (e:MouseEvent):void
        {
            // does a little magic with the button, animating, etc... then...

            trace(parent);  // returns "[object Main]"
            trace(parent.parent);  // returns "[object Stage]"
            parent.showScreen(this.name);  // <------------ Causes headaches
        }
    }
}

I suspect that making NavButton extend MovieClip rather than SimpleButton would fix this (am I wrong? I have no idea), but doing so breaks the functionality for the button that's already been written. And besides, this seems like a fairly common thing to do - calling a method from a button. I also suspect that using parent may be attempting to run a method for a DisplayObject rather than the Class itself, but I'm not sure.

What am I doing wrong? Any help would be much appreciated.

Referencing Main Document Class From A Loaded Swf
Hi,
I'm loading a game swf into what is essentially a shell swf, I'd like game.swf to call a function (myFunction) in the document class of shell.swf.

At the moment I am trying to use the stage within game.swf property as a reference for shell.swf (which extends from movieclip) and then calling stage.myFunction but because the property I want to call is a custom property, it throws an error at compile time saying that the method does not exist.

Any ideas? Is it possible to do this without including the definition for the shell document class in my game.swf? Is it possible to do this without storing a reference to the shell.swf document class - i.e. being able to create the reference from within the game.swf at any desired point.

Cheers
JMC
www.funsneaks.com

Referencing Other Object Classes In A Class Definition
Here's want I want to do.
I have a ball class and paddle class. I want to put a hitTestObject statement in the ball class that references the paddle class. I need the ball class to perform the same function whenever it hits an instance of the paddle class.
Can I achieve this affect with just these two classes, or do I need to write a third class to handle collisions between the two classes?

Why doesn't this work?
ball class:

ActionScript Code:
package
{
  import paddle
  import flash.display.MovieClip
  import flash.events.Event
  public class ball extends MovieClip
  {
    public var xmov:Number = 5
    public var ymov:Number = 5
    public function ball():void
    {
      stage.addEventListener(Event.ENTER_FRAME, enterframe)
    }
    public function enterframe(event:Event):void
    {
      if(this.hitTestObject(paddle))
      {
        ymov *= -1
      }
    }
  }
}

Referencing Text Field Within Custom Class
I have set up two classes, one is the DocumentClass and it imports a custom class i have made called XMLLoader. The problem is I want to change the value of a dynamic text field on the stage with the instance name xml_txt from within the XMLLoader class...


Code:
package classes
{
import flash.display.MovieClip;
import classes.XMLLoader;

public class DocumentClass extends MovieClip
{
public function DocumentClass():void
{
var xml:XMLLoader = new XMLLoader();
}
}
}

Code:
package classes
{
import flash.events.*;
import flash.net.URLLoader;
import flash.net.URLRequest;

public class XMLLoader
{
var req:URLRequest = new URLRequest("myXML.xml");
var loader:URLLoader = new URLLoader();

public function XMLLoader():void
{
loader.addEventListener(ProgressEvent.PROGRESS, loadProgress);
loader.addEventListener(Event.COMPLETE, loadComplete);
loader.load(req);
}

private function loadProgress(event:ProgressEvent):void
{
var percent:Number = ( 100 / event.bytesTotal ) * event.bytesLoaded;
trace(Math.round(percent));
}

private function loadComplete(event:Event):void
{
var newLoader:URLLoader = URLLoader(event.target);
trace(newLoader.data);
}
}
}

Packaging And Cyclic Class Referencing Problems
Anyone know of a good source that shows a good solution to these errors:?

"The class <classname> could not be loaded...",
"The class <classname> conflicts with the previously loaded class <classname>..."

I'm having a heck of a time trying to implement some design patterns, like Observer and MVC, inside packages...these patterns include some cyclic class referencing.

Thanks ahead of time,
Mike
Frustrated Flash Developer

Referencing A Class Intance At Root Level
I created a class to do different unit conversions and Its called

Convert.as

Now I have a main movie that is loading different SWF's into the stage depending on what section im in. Is there any way to create one instance of the class in the _root level and be able to access it from ALL the loaded SWF's? Ive experimented but I cannot get it to work. It seems like I have to instantiate the class in each FLA file. I don't like this because Ive got about 10 external SWF files that are using this class and if I change it I have to re publish all of those files. If I can somehow reference the class in the _root level then I would only have to publish it once. Please help...

And I have tried this...

var _root.myClass:Convert = new Convert();

but it wont work. Ive even tried this...
var myClass:Convert = new Convert();
_root.myClass2 = myClass

hoping that I could reference it but it wont work. So im at a loss...

I guess what im looking for is a Global Class that I can access ANYWHERE

Global Functions, Referencing Funcs In Document Class
Ok, maybe someone can help me out with this.

I've got a Document class for my project which handles a bunch of the applications functions. I have another class that extends MovieClip, And I create a bunch of instances of this class (movieclip) in my movie. I want to be able to call a function that is in my DOCUMENT CLASS from my other class (which is in a separate AS file).

Is this possible? I have it working but I have to pass in "this" to the constructor and then use that reference to call the function. Seems a bit sloppy, is that the only way to do it?

What about global functions? What is the best way to have a function that can be called from any class?

Referencing Nested Movie Clips From A Class File
Hey guys, its me again. With yet another question.

I am writing a class that extends the movie clip class and am having trouble with a certain part.

I have a Movieclip, and nested inside this movie clip are several other movie clips. The "Main" Movieclip has the linkage set to my class file. I have tried to link all the clips inside it to my class file but that didn't seem to work. When i go to change the image/Movie in say the 3rd nested clip it seems to change the image/movie of the "Hosting" movieclip. Is there any way to reference the nested clips from inside my class file?

As always thank you for any help that you may be able to give.


Lazerath

New Instance's Are Not Created From Class
Hello,
I have created a class called surverySlide in which I have linked to a bunch of slides. each slide registers how many questions it has to the class (itself). The problem is I need each movieclip to be its own instance of SurveySlide ( I have a surveyManager class built to deal with each. I am using attachmovie to show them in sequence on the stage (loading one after the other). I assumed by linking each movie clip to the class a new instance would be created each time but only one instance is created. I.e. the questions are put into an array that should be only for that instance but everytime a new instance is loaded it is added on to the array.

I don't know if I am explaining this clear enough so.....

in each instance of the class (which is a movie clip) I will register the question to that slide...

i.e.

slide instance 1

this.registerQuestion(1);
this.registerQuestion(2);

//if I output the array here I get 1,2

slide instance 2

this.registerQuestion(3);

//if I output the array here I get 1,2,3
//I want it to only output 3

Does anyone know off hand why this is happening?

StopAllSounds Created In Class
I have got 2 sounds created and started in functions in a class. When I try to stopAllSounds, it does not stop the sounds. Do I have to reference to the stop the sound inside each function? My code is attached (.as and .fla) fi somebody would be willing to help.
Cheers
otti







Attach Code

Class file:
....
// Public function to create sound for populating more ghosts.
public function addSoundGhost():Void {
// Create new sound instance for ghosts.
var soundGhost1:Sound = new Sound();
// Attach audio file to the instance.
soundGhost1.loadSound("Bloop.mp3",true);
// Start the sound instance.
soundGhost1.start();
}
//
// Public function to create sound for populating more ghosts.
public function soundColission():Void {
// Create new sound instance for ghosts.
var soundColl:Sound = new Sound();
// Attach audio file to the instance.
soundColl.loadSound("Bloop.mp3",true);
// Start the sound instance.
soundColl.start();
}

fla file:
var ghostArray:Array = new Array();
//
// Loop to push 5 ghosts into array and display.
for (var i:Number = 0; i <= 3; i++) {
ghostArray.push(new Ghost())
}
//
// Constantly move the ghosts.
this.onEnterFrame = function() {
// Loop to get all elemenst in array.
for (var j:Number = 0; j < ghostArray.length; j++) {
// Call function to move the objects.
ghostArray[j].move();
}
// Create one loop inside other loop, to get meeting arranged (constantly).
for(i:Number = 0; i < ghostArray.length; i++) {
for(j:Number = 0; j < ghostArray.length; j++) {
// Check that one ghost in the array does not meet himself.
// Call the collision function for the hitTest.
if ((i != j) && ghostArray[j].collision(ghostArray[i])) {
// trace("collision between ghost");
// change the alpha setting for instances during meeting time.
ghostArray[i].alpha(Math.random()*60+30);
ghostArray[i].soundColission();
}
}
}
}
....
// Stop all sounds
soundOffBtInst.onPress = function () {
ghostArray[i].stopAllSounds();
}

Assign Class To Created MC
Hey,

As we all know we can place an MC on stage and in the librarys linking setterings we can assign a class to it. In that class we can for exemple write this.y+=50 and the MC will move.

BUT, what happens when i create a MC by actionscript and want to assign a class to it?
Please dont answer that i should reference it by "var something:class=new class(mcName)" and use the referense to taget the mc by mcName.y+=50. Its the "this.y+=50" im looking for inside the class, not reference or targeting.

Is there any way to actually assign a class to an MC created by actionscript for real?

Thanks

Dynamically Referencing An External Class (not Embedded Movie Clips)
I've seen several posts for how to dynamically attach movie clips from the library, since they become their own classes. This question is how to dynamically refer to external classes.

The example that showed this was:

function createNewChart(myChart:int){
var classRef:Class=getDefinitionByName("chart"+myChart) as Class;
var newChart:*=new classRef();
}

I want to instantiate an external class versus a movieclip, and using this code outright is not the trick - I get an error (Error #1065: Variable MyClass is not defined.) from the following:

var presentationClass:String = classNameFromXmlFile; // MyClass
var classRef:Class = getDefinitionByName(classFromXMLfile) as Class;
var myClassInstance:* = new classRef();

I know that hard-coding the class here does work, so the class itself is fine, as in the following:
var myClassInstance:MyClass = new MyClass();

What is the proper syntax for dynamically doing this?

Movieclip In Library Referencing Variables In Main Document Class
I have a main.fla and a main document class (main.as)

Within the main.fla file I have a movieclip in the library with the linkage id of "myMC" and it is exported within the first frame.

Within that movieclip I have two images that I would like to attach ToolTips to, however, the key is to reference the text for the tooltips from XML as I have done previously through the main.as class.

I keep getting this error Access of undefined property toolTip and XML_mc

Here is the code within myMC in the library

ActionScript Code:

_button1.addEventListener(MouseEvent.ROLL_OVER, launchToolTip);
function launchToolTip(event:MouseEvent):void {
toolTip.addTip(XML_mc.preferences.imageAltText);
}




Note: In main.as I have toolTip and XML_mc both referenced as public variables within the package.

Any ideas?

Class For Dynamically Created Gears
I'm trying to create a class that will accept a number and a movieclip as parameters and create a gear that will be displayed and is movable and rotatable on the stage. I have a symbol that is a single tooth of the gear which is exported. The class should create a gear based on the number of teeth passed to it (first parameter) by duplicating and manipulating the "tooth" symbol passed to it (second parameter). It's been a long time since I tackled any actionscript coding and would appreciate any advise. I hope I've explained myself properly.

Don't Have Access From Class Created In AS File
I have a little problem

i can do somethink like this from script includet in Main Timeline:


ActionScript Code:
this.ekran.ekranText.text = "test";


But i have error when im create in AS file this script:


PHP Code:



package {
    import flash.display.SimpleButton;
    
    /**
    * ...
    * @author XXX
    */
    public class Przycisk1 extends SimpleButton{
        
        public function Przycisk1():void {
            
            parent.parent.ekran.ekranText.text = "test";
        }
    }
    





Im on right object level - Main Timeline

This is error description:

1119: Access of possibly undefined property ekran through a reference with static type flash.display:DisplayObjectContainer.

What I should do to fix this??

Navigating Out Of An Instance Created Within A Class
Hey all,

I have a problem and I know exactly what it is but I have no Idea how to solve it. so here it goes.

I am using Penner's tween class and I am extending it to do a spacifis task. I want it to move a Clip along the y axis and then when it is done (onMotionFinished) I want it to call a method in the Class that created the instance


Code:
MPCP.applyMove = function (movObj) {
this.yMove = new Tween (this.getMosName (), 0, "_y", Math.easeOutCirc, this.getMosName ()["_y"], movObj._y, 30, false);
this.yMove.onMotionFinished = function(){
this.click()
}
}
I know for a fact that the method call (this.click()) in the onMotionFinished block is refering to the this.yMove instance. How can I call the this.click() method that belongs to my MPC Class from inside the onMotionFinished event?

Properties In A User Created Class
If I create a class and set up one property which is a variable initiated at the start of the class but not within a function or a constructor and I reference the property from the .fla in a for loop as:

Book is the class and myBook is the new object.

myBook:Book = new Book(); // (fla script).

for(var prop in myBook) {
trace(prop);
}

the .AS contains

Class Book
{

var myProp:Number = 0;

function Book() {
}

}

The trace does not return anything. However when I include myProp (the class variable) in a function (other than Book function) and call that function from the .fla then the trace works and I can see myProp.

I would be grateful if someone could explain: Do I need to include Class variables in called functions (methods of the Class) in order for them to be properties of the Class?

thanks in advance

How To Reference An Array Created In Doc Class
Hi, I need to reference an array created in doc class that consists of Navigation Movie Clip objects.
When the mouse over happens on one of those Nav Objects, I need to reference the array that I created in Doc Class.

Doc Class Code:
var newPageNav:NavButton = new NavButton(sId,sTitle,sStatus);
menuItems.push(newPageNav);
addChild(newPageNav);

Now I need to remove them from the stage:
So when the NavButton is clicked I need to go back through that array and remove items from the stage. But when I call a function from the NavButton:

public function onButtonClick(e:MouseEvent):void
{
removeSlide();
}

the function that lives in the DocClass, removeSlide()

public function removeSlide():void {
trace(menuItems.length.toString());
}

trace returns 0, saying the array doesn't exist.

Logically I understand that I am inside a NavButton class that has a handler, so even when I call removeSlide function at the Doc Class, I am still inside Nav Button Class.

So how do I get access to that array so I can remove elements from the stage.

Thank you very much for your time.
-d.

Accessing An Array Created In One Class, From The DocClass?
Title pretty much says it all.

How can i access lets say an array called "bullets" that is stored in a class file "Turret.as", from my document class file "TestHarness.as"?

Thanks,

Gareth

Dynamic Vars Created Within The Document Class
Hi all,

Im a bit puzzled why this does not work when placed in my document class, but works when directly added a key frame in the Flash IDE.


ActionScript Code:
this['myVar1'] = new Object();

When within the document class I get this error when compiled,
ReferenceError: Error #1056: Cannot create property myVar1

I have tried the following but i still get an error.


ActionScript Code:
public static var root_Ref:Object;

root_Ref = root;

root_Ref['myVar1'] = new Object();

Thanks,
alex

SoundMixer Class...can't Control AS-created Sounds?
I'm doing a preso on loading sounds in AS3 vs. AS2.

According to the AS3 documentation, the SoundMixer class "...controls embedded streaming sounds in a SWF; it does not control dynamically created Sound objects (that is, Sound objects created in ActionScript)."

reference


However, if I load up a new AS3 document, type the following in frame1, and then put "SoundMixer.stopAll();" in frame 20, it *will* stop all sounds.

I'm not exactly complaining, but are the docs wrong, or am I just going crazy here? I have yet to find an instance where the SoundMixer class does not work as the docs describe.


var mySound:Sound = new Sound();
var mySoundRequest:URLRequest = new URLRequest("someMusic.mp3");
mySound.addEventListener(Event.COMPLETE, onSoundLoaded);
mySound.load(mySoundRequest);

function onSoundLoaded(event:Event):void
{
var localSound:Sound = event.target as Sound;
localSound.play();
}





























Edited: 08/08/2007 at 04:21:11 AM by midimidi

AS2 - Help Accesing A Variable Created From A Class In _root.
Hi,
i've been having this problem and I can't find a way to solve it.
I hope this is the propper place for this thread, if not, please tell me where to put it.
I am creating a gallery from an xml, and I need to find the size of the image and store it somewhere. I have used a class described in the book "Flash application Design solutions: The flash usability handbook" to loadMovies, and in the "onLoadInit" method I write the variable "imageSize"on _root, which probably is not the best thing to do, but it was the only idea I had. I am open to any other idea...

If I use the debugger, i get to see the correct value stored in the variable. When I access the variable through a normal "trace" in the function I get "Undefined" value. If access the variable through onPress... I get the correct value.

Can Anybody can help me understand and solve this??? I need to be able to calculate the size of the image loaded in order to dinamically place ir depending on it's size.

Above all thanks, and congratulations on the great work done here.

My actionscript is as follows:


Code:
function createGallery () {
_root.createEmptyMovieClip("mc_container",1);
mc_container.createEmptyMovieClip("mc_logo", 2);
mc_container.mc_logo.createEmptyMovieClip("mc_logoBait", 3);

var imgToLoad:String = docXML.firstChild.childNodes[0].attributes.promoImage;
var whereToLoad:Object = mc_container.mc_logo.mc_logoBait;
mc_container.attachMovie ("MC_MovieClipLoaderUI3", "preload_mc", 4, {_x:140, _y:100});
mc_container["preload_mc"].init (imgToLoad,whereToLoad);
trace(_root.imageSize);
whereToLoad._parent.onPress= function(){
trace(_root.imageSize);
}
};

var docXML:XML = new XML ();
docXML.ignoreWhite = true;
docXML.onLoad = createGallery ;
docXML.load ("xml/test.xml" );
stop ();
The simplified class:

Code:
class MovieClipLoaderUI3 extends MovieClip {
private var mLoader:MovieClipLoader;
private var owner:Object;
public var targetClip:MovieClip;
private var loadUrl:String;
//--------------------------------------------------------------------------------
function MovieClipLoaderUI3(){
}
//--------------------------------------------------------------------------------
public function init(_loadUrl:String, _targetClip:MovieClip):Void {
loadUrl = _loadUrl;
targetClip = _targetClip;
initLoad();
}
//--------------------------------------------------------------------------------
private function initLoad():Void {
mLoader = new MovieClipLoader();
mLoader.addListener(this);
mLoader.loadClip(loadUrl, targetClip);
}
public function onLoadInit(_targetClip:MovieClip):Void {
_root.imageSize = _targetClip._height;
trace(_root.imageSize);
}
//-----------------------------------------------------------------------------------
}
The xml:

HTML Code:
<?xml version="1.0" encoding="UTF-8"?>
<gallery>
<theme promoImage="images/promotion_icon.jpg">
</theme >
</gallery>
PS: I've attached the files in a zip file.















Attached Files

Inserting An Instance Name For Movie Object Created From A Class
Hello,

Would anyone provide a recommendation about having an instance name for Movie object created by a class? I have attached my sample. In one of .as file I have commented for a thing I am trying. Thank you.

How Can I Pass A Parameter From A Class To An Object Created In The .fla File?
Hi,

I am new here in this forum.

I have this class, which is working fine, but I would like to pass a parameter to the objects in my .fla file and I have no idea how.

This is a class that can be apply to any object to fade it, the problem is that the alpha percentage is fixed, and I would like to have different percentage on each object.

How could I accomplish this task?


ActionScript Code:
package {
import flash.display.MovieClip;
import flash.events.MouseEvent;
import gs.TweenLite;
import fl.motion.easing.*;

public class TestClass {
private var _clip:MovieClip;
public function TestClass(clip:MovieClip) {
_clip = clip;

_clip.addEventListener(MouseEvent.MOUSE_OVER, fadeIn);
_clip.addEventListener(MouseEvent.MOUSE_OUT, fadeOut);
}
function fadeIn(event:MouseEvent) {

TweenLite.to(_clip,1,{alpha:.5});

}
function fadeOut(event:MouseEvent) {

TweenLite.to(_clip,1,{alpha:1});

}
}
}

// This is the code I’m using in my fla file (objects in my fla file)


ActionScript Code:
var testing:TestClass= new TestClass(myMc);
var testing2:TestClass= new TestClass(myMc2);
var testing3:TestClass= new TestClass(myMc3);

Thank you to all in advance,
fs_tigre

Wrong Range Created By Textrange Class In TextArea
Hi,
I have a textarea component on UI and want to add font formatting to it using TextRange class.
My code is:


Code:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" verticalAlign="middle" backgroundColor="white">

<mx:Script>
<![CDATA[
import mx.controls.textClasses.TextRange;

private function findRangeIndex():int
{
var prev : int;
var next : int;

prev = messageSend.selectionEndIndex + 1;
//find out how many whitespaces do we have
for (var i:uint=messageSend.selectionEndIndex + 1; i<messageSend.length; i++)
{
if ((next=messageSend.text.indexOf(" ",i)) != -1 )
{
if (next - prev > 1 ) break;
prev = next;
}
else break;
}
return prev;
}
private function italicText():void
{
var index : int;

//find the index of next whitespace
if ((index = messageSend.text.indexOf(" ",messageSend.selectionEndIndex)) > -1)
{
//if you have immediate whitespace then continue else skip the process
if (index == messageSend.selectionEndIndex)
{
index = findRangeIndex();
var tr1:TextRange = new TextRange(messageSend ,true, messageSend.selectionBeginIndex, index);
}
else
{
if ((messageSend.selectionBeginIndex == 0) || (messageSend.text.charAt(messageSend.selectionBeginIndex - 1) != " "))
var tr1:TextRange = new TextRange(messageSend,true);
else
var tr1:TextRange = new TextRange(messageSend ,false, messageSend.selectionBeginIndex - 1, messageSend.selectionEndIndex);
}
}
else
{
if ((messageSend.selectionBeginIndex == 0) || (messageSend.text.charAt(messageSend.selectionBeginIndex - 1) != " "))
var tr1:TextRange = new TextRange(messageSend,true);
else
var tr1:TextRange = new TextRange(messageSend ,false, messageSend.selectionBeginIndex -1, messageSend.selectionEndIndex);

}
if (tr1.fontStyle == "normal") tr1.fontStyle = "italic";
else if (tr1.fontStyle == "italic") tr1.fontStyle = "normal";

messageSend.setSelection(messageSend.selectionBeginIndex , messageSend.selectionEndIndex);
messageSend.setFocus();
tr1 = null;
}
]]>
</mx:Script>
<mx:Canvas width="328" height="300">
<mx:TextArea id="messageSend" x="22" y="19" width="273" height="131"/>
<mx:Button x="131" y="179" label="Italic" click="italicText()"/>
</mx:Canvas>

</mx:Application>
The italic functionality works fine for all cases (I mean when you select the text written in Textarea and press the button or when you simply press the button (without selecting text) and expect that all text after that point will become italic) except when you do not have a whitespace character before the cursor position on your textarea and you press the button. What I found during debugging was that if the created TextRange has beginindex and endindex same then there will be no effect of the styling except when the beginindex = endindex = 0.

Can someone please suggest a solution? I'm seriuosly pissed off here :-(

Copyright © 2005-08 www.BigResource.com, All rights reserved