Actionscript 3 :: Flex Canvas Keyboard Event Handling?
Oct 23, 2010In the attached code sample, keyboard events just don't work. The control never reaches handleKeyDown, no matter which key I press.
[Code]...
In the attached code sample, keyboard events just don't work. The control never reaches handleKeyDown, no matter which key I press.
[Code]...
I'd like to arrange things so that I have a chain of keyboard event handlers in my flex application, all of whom are queried when key down events occur. Basically, when a visual component is on screen, it is a candidate for handling a key press event. Something like this (clearly this is pseudocode):
<application handles_keys="F5, F6">
<tabGroup>
<tab1 handles_keys="pgup, pgdn">
<control handles_keys="0,1,2,3,4,5,6,7,8,9" />
[code]...
I have a class written that will respond to the key events the way I want it to, so how do I register one or more instances of this class to have the results I want? Also, note that there are some situations where this class should receive events that would ordinarily be handled by a UI component. The TAB key is the main example; I have a few cases where I want my key down event handler to fire even when the focus is on a text field.
I'm trying to get familiar with the whole keyboard event detection thing.Here's my sample code.
<fx:Script>
<![CDATA[
import flash.events.KeyboardEvent;
[code].....
I'm using hotkeys (ctrl + key) in my flex application. getting problem when my app is running in IE.when i press ctrl+D, im getting 'Add a Favorite' window of iE.How should i override the default behaviour of the browser.
View 1 RepliesI am developing an AIR app. In the main app I have a module loader 'mainModuleLoader'. I am creating modules as separate mxml files using the <mx:Module> tag. And I am loading such a module in mainModuleLoader dynamically using actionscript. Everything works fine.For the module which I am creating as mxml files, I would like to know how to add an unload event handler. So that, whenever I call mainModuleLoader.unload(), the unload event hander is triggered from inside the module.mxml. I have tried the following without any success.
<mx:Module creatingComplete="init()" unload="unloadHandler()"/>
<mx:Module creatingComplete="init()" remove="unloadHandler()"/>
The problem with the second statement above is that it triggers the unloadHandler even if some child is removed inside the module. I have also tried to add the following in the action script.
private function init()
{
this.addEventListener(ModuleEvent.UNLOAD, unloadHandler);
[code].....
I am developing an AIR app. In the main app I have a module loader 'mainModuleLoader'. I am creating modules as separate mxml files using the <mx:Module> tag. And I am loading such a module in mainModuleLoader dynamically using actionscript. Everything works fine.For the module which I am creating as mxml files, I would like to know how to add an unload event handler. So that, whenever I call mainModuleLoader.unload(), the unload event hander is triggered from inside the module.mxml. I have tried the following without any success.[code]The problem with the second statement above is that it triggers the unloadHandler even if some child is removed inside the module.I have also tried to add the following in the action script.[code]But, it doesn't trigger on unloading the module. Kindly let me know if I am going wrong somewhere or if there is any other method to attach the event handlers.
View 2 RepliesI am trying to listen to an event created in a spark popup tileWindow. The aim is to get an array sent and updated in the popUp, to be received by the calling application, when the popUp is closed. As commented inline below, I have tested that it reaches the point of dispatching event in the popUp- and never gets listened in main application. What am i missing?My customEvent is as follows:
package folder1
{
import flash.events.Event;
[code].....
Can I handle an event inside a loaded swf file(using swf loader) using MATE when my main application fires the event ? i want to make a remote service call based on the data i get from the main applications event , and then populate my loaded swf .
View 1 RepliesI have an app with a canvas which content changes dynamically. In my app there is a progressbar which I want to show while the canvas update is executed. Is there any event to call just before the update starts?
View 1 RepliesAs of Flex 4, I'm using s:Group instead of mx:Canvas.
With s:Group , show event is not fired when the container is visible like with mx:Canvas. creationComplete event fire only once. How can I detect show event or something alike in Flex 4 or should I just use the mx:Canvas instead ?
According to Cairngorm architecture, we always have a fault handler in every command class for each service.How we can create a single Class for handling Fault handler event for all the services.
View 2 RepliesI'm trying to handle movement of my Hero Class by adding event listeners in my constructor. I'm trying to move my Hero object.Inside my hero constructor, I have:
Code:
//Adding Event listeners
this.addEventListener(KeyboardEvent.KEY_UP, reportKeyUp);
this.addEventListener(KeyboardEvent.KEY_DOWN, reportKeyDown);
this.addEventListener(Event.ENTER_FRAME, EnterFrame);
And then I have functions for each of the events above. For some reason,the event listeners for key up and key down are never being triggered.
I am trying to use Javascript to intercept keyboard events, so I can do CMD-W for "close-window" and whatnot, inside a Flash application, so the Browser doesn't get to use them. Well, I am able to listen for ALT, CTRL, and CMD onKeyDown/onKeyPress events, but I am not able to listen to anything else...
Here is the code, in the index.html file from a Flex Project:
<script language="JavaScript" type="text/javascript">
document.onkeydown = function(event) {applicationKeyboardHandler(event)}
document.onkeypress = function(event) {applicationKeyboardHandler(event)}
function applicationKeyboardHandler(event) {
alert("Key Pressed")
} </script>
I would like to make it so it could listen to any key press, not just alt/ctrl/cmd.
I have the following code in my flex project.
[Code]...
I want to dynamically add different items to thumbContent canvas and use scroller canvas to scroll. I see than the height of thumbContent bigger than 7977 it truncate from scrolling. So - I see the scroller canvas with empty space on top. Then I scroll to bottom - I see the content of thumbContent and at bottom scrolling I see empty space too.
Is there any cross-platform-safe method for dealing with keyboard shortcuts in Flash? For example, on my Mac, pressing ctrl+f results in a KeyboardEvent where the keyCode is 6, but on Windows, the keyCode is 70.
View 1 RepliesI'm trying to skin a canvas with an image (which is essentially a custom border for the canvas). I've been trying the backgroundImage style as well as the borderSkin style. I can't get the image to scale to the full size of the canvas though. I was wondering what the best way to go about this is.[code]...
View 2 RepliesThe app I want to build is an interactive map for a site I'm designing. In a nut shell, students looking to enter an exchange program should be able to use the map-image (as in, an actual 'map of the world') to preview possible destinations (I've attached an image of the two basic states to clarify).
After an introductory animation, I want a mouse-over to trigger a function that populates the map-image with a series of buttons. I need the buttons to be distributed according to information in an XML file (ie. x/y coords, some information text, and an animation to load upon being clicked). I want each button to call a mouse-over function that loads info data from an XML field and place it in a dynamic text field at the top. Then, I want each button, when clicked, to call a function that animates replacing the map-image with an image of the corresponding travel destination. Finally, I want a button on each image that will clear that image from the stage and call the function that populates the map so the process can start again.
I'm working out of a couple of books on AS3, but I'm a little hazy on how I ought to be constructing this thing. So here's the first place I've run aground: After the intro animation, I want the user to mouse-over the stage and have a second animation play (clearing away the introductory text), and I want the conclusion of the clearing animation to immediately call the map-populate function; but I don't want a mouse-over to have any effect until the introductory animation is finished. Is there an event dispatched automatically at the end of an animation? What is the event listener class?
I'm not sure if I should be storing each of these animations in an independent .fla file or if I should create them on all one timeline and have the program redirect to specific frames.
I have a textArea and would like to prevent the default behavior for certain keys such as the enter key from being run upon user input. However, KeyboardEvent is not cancelleable so preventDefault does not work.
View 2 RepliesI am trying to detect the key down event for the alt key in flex. I have a standard event listener for KeyboardEvent.KEY_DOWN and KeyboardEvent.KEY_UP but don't get any response for the alt key (or ctrl key).
I know I can detect if the alt key was pressed via a mouse event, but I want to update the cursor when the alt key is pressed to show it will perform a different action from when it's not pressed.
I am using Safari on a Mac for developing so let me know if perhaps it's an isolated issue.
I have a custom TitleWindow component that is registered to listen for keyboard events from the user (so that esc closes the window, enter saves, etc.). However, in my testing I've found a couple cases where my keyboard event handlers don't fire. My best guess as to why this is happening is that there is some child component somewhere that has stolen focus and is stopping the keyboard events from propagating.
Unfortunately, due to the large number of components in my TitleWindow, I have no good way of knowing who has stolen the focus. My question then is, are there any good tips / techniques / tools for debugging focus issues and event propagation in Flex? Basically, I need something that will tell me who has the focus at any given time and who's handling an event at any given time... is that possible?
I'm using Flex 4.5.1 with AIR 2.7 (and Flash Builder 4.5.1) to build an app for the Blackberry Playbook.
The app has a large textarea that needs to be resized when the soft keyboard shows up. I am able to hook into the soft keyboard events and do things there.
Now, I want to resize the textarea to fit the remaining part of the screen when the keyboard shows up. I know the current and destination size and want to use a smooth animation to show the textarea resizing. (I can't already set the height and can see the textarea being correctly resized in the keyboard_activating event - but I want to do it through an animation). I've tried using the Animate class, the spark.effects.Move class and none of them seem to work in this case. They seem to run the animation but the screen does not get refreshed!
[Code]...
If I plan to implement 100 objects on stage to be listen to mouse and keyboard input, is using "function" call responsive enough? How good does eventlistner work?
View 2 RepliesI am trying to learn JavaScript and I am wondering whether JavaScript has a event listener just like ActionScript's ENTER_FRAME. Basically, I want this event listener to listen "all the time" not just wait for any particular instance (mouse click, keyboard event) of event.
View 3 Repliesi have a question to ask about asynchronous key controls This was what i did
[Code]...
and i checked with [URL]...?newspage=6249 and it looked more or less the same, so why is it that when i move my character and when i hold down a key, it just keeps on listerning to that keypress event listener, instead of just executing the other event. So say, i tap left and after which i tap right, it will work just fine, but if i hold left and tap right, the event listerner will still be listening to the left key. So, i was wondering could anyone point me in a direction as to how should i make my code stop listening to an event as soon as another event has been dispatched?
I am doing this inside a module containing viewstacks and their childs.Calling onInit() on creationComplete of module.When I am inside one of the childs of a viewstack of this module and press Enter, it doesnt not invoke the listener function at all (bp inside this does not get hit).
private function onInit():void{
this.addEventListener(KeyboardEvent.KEY_DOWN, keyPressed);
}[code]..........
When game starts, the car runs automatically. Then we click the SPACE button, movement of car stops. And the door of structure near car is available to CLICK.
But in coding I got this error code:
TypeError: Error #2007: Parameter listener must be non-null.
at flash.events::EventDispatcher/addEventListener()
at shfg_fla::MainTimeline/key_pressed()
This is some part of my game code...
case Keyboard.SPACE :
removeEventListener(Event.ENTER_FRAME,car_movement);
--street_mc.bluehome_mc.door_btn.addEventListener(MouseEvent.MOUSE_DOWN,door_ready)
[Code]....
I have a problem with event handling. I'm working on a calendar, on which events can be listed. With actionscript i loop through an XML file with the days (and if there, the events for that day). So far so good. Where it goes wrong is this: I only want to display blocks with the day numbers on it. When you click on a day, a box pops up and shows the event's for that day.
This is what i did: created a movieclip with classname mc. loop trough the xml file and for each day create a new instance of mc with the day number as text on it. This al works, but now i want to add an eventhandler for each day. How to do this?
If you have a larger project, how do you manage your custom events, do you put all of them in a single class or make multiple classes?
View 2 Replieson clicking the Search Icon , a search bar will be visible (ON) if user click anywhere on the stage the search bar will be NO visible(OFF) OR user click on ICON again the search bar will be OFF but it Stage CLICK is triggered without clicking
Code:
searchIcon.addEventListener(MouseEvent.CLICK, showSearch);
var srchBox:Boolean = true;
function showSearch(event:MouseEvent):void
[code]...
I have a class with a XML object in it. In one of the class' methods, I tell the XML object to load a document. Before I do that, I set up the onLoad event to call one of the class' other methods. The problem is that in that handler function, I can't seem to access any of my class' data. If I try to use the "this" pointer, I'm getting the XML object not my class.
A simple example:
[AS]
class MyClass
{
var theXML:XML;
[code]....