ActionScript 3.0 :: Lose MouseEvent After Creating New Class?
Apr 10, 2009
I have a main class that generates three clickable textfields (lessons). Clicking a specific lesson starts the appropriate lesson. However, once the lesson starts, I am unable to detect any mouseevents. I do not use any mouseevents in any of the lessons so I am baffled about what happened to my mouse eventlisteners. Even though I can see the nextLesson button, nothing happens when clicked. If I click it before starting my lesson, my trace indicates that I have clicked it. Do I need my lessons to somehow self-terminate when done and if so, how would I go about this. I currently use the browsers back arrow to terminate the complete session.
I followed a youtube tutorial on how to create a fancy Image Gallery but when I got to run it I keep getting the following error : interface 'flash.events.MouseEvent' could not be loaded.
Code: stop() btn1.addEventListener(MouseEvent.CLICK,play1); function play1(event:MouseEvent):void{ gotoAndStop("img1"); }btn2.addEventListener(MouseEvent.CLICK,play2); [Code] .....
I am currently doing this gallery with prev and next button.But i got this error message.."The class or interface of MouseEvent could not be loaded." [code]
This is my first time trying to use document classes in AS3. I am trying to add event listeners to a 2 levels deep movie clip, waiting for a click however I am getting the following error. ERROR: Access of undefined property MouseEvent
package { import flash.display.MovieClip; import flash.media.Sound; import flash.media.SoundChannel; public class game extends MovieClip { [Code] .....
I have several stage event handlers to enable mouseovers over several dynamically generated moviecilps on the stage that then change their alpha to indicate the mouse is over that particular mc... fairly trivial (mcOver handler). Additionally, I also want to know what MC is clicked, so I update a public variable (public var activemc:Number) with the ID of the dynamic movieclip when the mouse is over it (using a hitTest to check, which is why the EventListener is added to stage and not to the MC), which is checked in the mcClicked handler:This is in the constructor:
However, the mouseover behaviour (alpha 0 when over, alpha 1 when out) stops working as soon as I click on any movieclip on the stage, and the mcClicked ID checking (below) stops working completely. I don't know if this is to do with focus:
private function mcClicked(event:MouseEvent):void { myTextField.text = String(activemc); // activemc is a public var:Number with the movieclip //ID }
I then tried adding the event handler for the stage mouse_move again and this gets the mouseover working again but only for 1 more click, after which it stops again:
private function mcClicked(event:MouseEvent):void { myTextField.text = String(activemc); // activemc is a public var:Number with the movieclip //ID stage.addEventListener(MouseEvent.MOUSE_MOVE, mcOver);
I have a MovieClip (call it base_mc) which is under a bunch of other MovieClips (call them subclips). The MovieClips on top are all mouseEnabled with MOUSE_OVER, CLICK, etc, event handlers. I want to capture the event of MOUSE_OVER (or ROLL_OVER) on the base_mc as well. Any time I am over one of the subclips I am also over the base_mc clip. How can I capture this event?
I am using the following script to animate a navigation button, but am getting this Compiler error message: The class or interface 'flash.events.MouseEvent' could not be loaded.
button1_btn.addEventListener(MouseEvent.CLICK, showimage1); function showimage1(event:MouseEvent):void { gotoAndStop(1); }
This is my script (with more buttons done the same) to have the user click a button and a new photo appears, but the movie just runs continuously. I get an error message saying "The class or interface 'MouseEvent' could not be loaded.
I'd like to know what is the difference between MouseEvent.CLICK & MouseEvent.MOUSE_DOWN. Because when i use MouseEvent.MOUSE_DOWN for a button to set full-screen view its doesn't work, instead of this MouseEvent.CLICK works. So what was the reason.
I'm making a button for the first time, and I wanted to use a full click to drive it. However, when I use addEventListener(MouseEvent.CLICK, onClickHandler); nothing happens when I click on it. When I use (with the rest of the code being identical) addEventListener(MouseEvent. MOUSE_ down, onClickHandler); it works like a charm.
I have a MOUSE_DOWN handler that creates a CLICK event listener on a child object. Naturally, as soon as you release the mouse button, if you happen to be over the child object, the CLICK event fires.I was disappointed to discover that event.stopImmediatePropagation doesn't interrupt the CLICK event from registering the MOUSE_DOWN as part of its detection cycle. It makes sense that it doesn't but still... disappointing.A MouseEvent.CLICK consists of detecting a MOUSE_DOWN on the object and then if it's followed by a MOUSE_UP without leaving the object, he event fires. I had hoped that by cancelling the MOUSE_DOWN event, it would clear that out of the CLICK buffer, but no such potatoes, alas.This could all be handled with a flag and a couple more MOUSE_UP and MOUSE_DOWN handlers, but dang, smacks of effort
rwBtn.addEventListener(MouseEvent.MOUSE_OVER, audioOver); function audioOver(e:MouseEvent):void { var thisClip:MovieClip = e.relatedObject; thisClip.alpha = 0; }
I would like to change the alpha of the clip that is being rolled over. I don't know how to target the clip that is being rolled over. How do I do that?
Is there a way to generate an instance of a class that implements an interface based on the name of the class?
I am trying:
var ClassReference:Object = getDefinitionByName("movement.OuterSpaceMovement") as IMovement; var m:IMovement = new ClassReference as IMovement; trace("startup..." + m);
-But I am getting an error message ReferenceError: Error #1065 (OuterSpaceMovement) not defined.
I have several classes that implement the same interface (IMovement) but I need to be able to generate new instances of these classes and then pass these instances as a datatype (IMovement datatype) to other classes...
So then I tried:
var ClassReference:Class = getDefinitionByName("OuterSpaceMovement") as Class; var m:IMovement = new ClassReference() as IMovement; and this doesn't seem to work...but the following var m:IMovement = new OuterSpaceMovement();
I'm trying to create a new instance of a MovieClip when the original one has been used. Would sound easy enough. Just use: var
instanceName:ClassName = new ClassName();
the class name/mc in the library im trying to duplicate is MCg1 so
var instanceName:MCg1 = new MCg1(); right?
However, the particular object in the library i'm trying to duplicate has a base class that is an external class file (just to control it's drag drop functionality)... i.e baseclass is not set to the standard flash.display.MovieClip, or whatever the case maybe. So i end out with a: TypeError: Error #1009: Cannot access a property or method of a null object reference.
I'm creating a slideshow where each slide can have:- a video or a still- 1 audio track or many (up to 3)- 1 button or many (up to 3)I was thinking that each slide can be it's own object, and then I would pass the video, audio, buttons, etc., into it as parameters:
I have a class that represents a turret in the center of my screen.When I hold down SPACE, I want it to create a "bullet"-object that moves in the direction of the turrets cannon, every frame the SPACE key is held down. I am having problems with this cause I am getting this error when I am trying to create the object:
Error #1009: Cannot access a property or method of a null object reference.
This is where the error occurs:
ActionScript Code: public function chaingun(x_:int, y_:int, rot:int, cd:Number, spd:Number, sprd:Number, life:Number) { this.Cooldown = cd; this.Speed = spd;
[code]....
PS: What happens is that when I press the SPACE key, the "turret" class event handler runs the function "Shoot_Chaingun" and that function creates a new Chaingun-object (which actually is a bullet), that inherits the x, y, and rotation of the turret, along with some additional varaibles, including lifetime. Then upon creation, I use "addChild(this)" to add it to the main stage, and "removeChild(this)" once it's lifetime is up.
EDIT: And also, I just realized I don't have a MovieClip linked to this chaingun class. How do I make sure that every time a chaingun object is made, the MovieClip is also loaded?
I have made a preloader, yet when i bring my SWF in that i want to load, it loses all the stops that have been put int it? So it just plays all the way through?
I have made a movie is as2 and now I have download a file that is made in as3 and this one give this error: "the class or interface 'mouseevent' could not be loaded"I still wan't to use as2 because I used to it and my question is how can I change this code below that it will work in as2.
I have a presentation to do using Flash on Wednesday and have been warned by my university that files MUST be in CS4 format. So, having used CS5 to create the whole site/presentation how much will I lose back-saving it to CS4? I'm worried I'm going to have to do a lot of the same work twice.
when working in flash i use the below code and it works fine.However when i publish the file on the web using visual studio i lose the music? is there something I'm missing do i need to move the mp3 file somewhere so that is accessible to the swf file?
Code: var soundReq:URLRequest = new URLRequest("matrix.mp3"); var sound:Sound = new Sound(); var soundControl:SoundChannel = new SoundChannel();[code].....
I'm having an issue with an FLV video playback in a scene. When I go to fullscreen mode, I seem to lose the ability to adjust the video object.
I am loading a new video via FLVPlayerback(). Since the video is being loaded into the scene on top of everything else, I use swapChildren() to put my button back on top of the video. When the video is done playing, I removeChild() the video.
This works in the normal playstate.
However, if I am in fullscreen mode, swapChildren() and removeChild both do not work. If I exit fullscreen mode, they are indeed working.
I have made a game, using a new cursor image,But for some reason it's showing both? The cursor and the image? How do i lose the cursor image completely?
I have a strange problem with LocalConnection.Situation: A sample e-shop. I have a parent .swf who load 3-4 external swf.In a external swf (let's name it "X") u can order items u want.
Because i don't want to lose the informations of the 'shopping' bag of customer when the parent swf unload the 'X' and load something another (for example "contact us"), i use localconnection with both duplex between parent swf and 'X'.
Problem: In the swf "X" i have an array "Bag" which holds the id of items the customer clicked to buy. When change the external swf, i send via localconnection to the parent .swf this array (done, i tried with trace).
Very strange. I'm using the following function to pass characters to 2 text input components, but sometimes (and much more often with the "Password" field), after I click a button, the button loses focus and I have to move the mouse to regain the rollover state and be able to click the button again. When I've lost focus, if I click the mouse, it just changes the button to the rollover state but doesn't pass the value...
Here's the code: var Focus:String = ""; function KeyPadButtonClick(_id:Number) { // default the focus to the UserID if (this.Focus == "") { this.Focus = "UserID"; [Code] .....
After a user clicks a button the getURL passes some variables to a js function that displays an html lightbox type effect. After closing the lightbox and returning to the page underneath all of the buttons are now no longer clickable
basically, what am doing is that am running a flash file (playing music) in the background of the app using webview, and when I want to stop the music , I just load "about:blank".I want to keep the flash file running (music) when my app gets paused (which works fine so far) the problem is when the app resumes, pressing on pause button launches a new webview instead of changing the link in the previous one and the sound doesn't stop.the only solution I found was to kill the process and restart the app, but that's not practical, any idea of how to still be able to use the same webview when resuming the app ?
Update: guess I wasn't clear enough, I have a webview widget stated as "gone" , I only need the audio form the flash file I'm running in the webview so the "play" button loads a URL that contains the flash file (so the user only hears music, and doesn't notice that I'm using a webview), when I press the back/home button the music doesn't stop (I like it that way) but when I go back and press on play again it loads another url in a new page, you get double music
Without AutoHotkey and Firefox -unfocus since it's involved in operating another program and it doesn't work on linux and without Restore Window Focus After Flash addon since doesn't give you control over flash tabs.implementing this gBrowser.selectedTab.unfocus(); method and bind it to a keystroke in Firefox v3.6 ?I've also tried (based on the addon above)
if (document.getElementsByTagName("EMBED").length == 0) { return; } if (document.activeElement.tagName == "EMBED") {
I want my flash movie to go to a specific frame when the user moves the cursor away from the actual swf file (rollout) in the html page. I tried different things, for instance having a big transparent movieclip in the background and use hitTest:
//this code is in the root level this.createEmptyMovieClip('penCheck', 100000); this.penCheck.ref = this; this.penCheck.onEnterFrame = function() {
[code].....
This doesn't work until the user clicks outside the flash (flash loses focus).