ActionScript 3.0 :: Right Click Custom Menu Over A Sprite?
Feb 8, 2009
Basically I have lot of text fields that are rendered dynamically, and I want the user to be able to right click on one and edit it.
Is it good practise to use the right-click bring up custom menu on a sprite. And is the method guaranteed to work accross all browsers? Do mac mice have right mouse click buttons?
[URL]
And if not, what would be a good work around. Maybe bringing up a yahoo astra message box with the two options one for left mouse click, one for right click and edit text field?
i wanted to place some credits item in the right button menu (no links, so no events, just a label with credits). i was looking the contextmenu help, and there is an example of how to add items, disable default items and so on, but i could not find how to attach the menu to the movie (the basic part). i tried both on 'stage' and it tells me that stage does not have a property called contextMenu, so i tried to attach it to a sprite, it runs ok and compiles ok but when i right click on the sprite i get the default menu
var _menu_item:ContextMenuItem = new ContextMenuItem("here goes [code].....
I was wondering if there's any way to create a custom right click menu like in context menu(or similar) without the "Settings" and "About Adobe Flash.." etc... options?
Ive noticed a lot of flash websites have user defined items/links added to the default flash right click settings menu. In other words when we right click on such flash websites it shows links to the designers home page or associated site etc.
Just wondering if it is possible to show a movie clip based menu inside a Flash movie when the user "right-clicks" an item (a button or movie clip for example).
When I click simulate download my custom right click menu only appears once the movie has loaded. I have a layer called "actions" that contains this code:
Code: var myMenu:ContextMenu = new ContextMenu(); myMenu.hideBuiltInItems(); this.contextMenu = myMenu;
How can I make it so that my custom menu works while it's preloading?
ive followed Senoculars drop-down menu tute [URL], awsome stuff, but it seems the submenu's dont disappear to well when you roll out. ..They only disappear if you click on another menu item or when you click outside the menu.
Basically, I have a button and on click it displays a menu. I want to click that menu a second time and the menu closes. Currently, every time you click the button, the menu reopens. I pasted the Flex livedoc example below. If you click the button, the menu keeps reopening.Now, I rigged it up by setting a var to open and closed, so when clicking the button it does a check. However, if you click away from the screen, the HIDE event gets dispatched, and the menu closes. This messed up the open close var being set.
How could I make this Flex example below show the menu on button click, and then on a second button click, it closes the menu? Take into affect that if you click away from the menu, it closes it.Also, I played around with the MOUSE_DOWN_OUTSIDE event for the button and set the preventDefault, and the FlexMouseEvent event.cancelable is set to false.Changing to a PopUpMenuButton is not an option. I have to much skinning involved.Here is the Flex example:
<mx:Script> <![CDATA[ // Import the Menu control. import mx.controls.Menu;
The menu is like this http:[url]... (the site is in portuguese but it doesnt matter), when I click in on menu the actual menu does an alpha to 0 and the next menu appears using the alpha from 0 to 100 (and some animations like the cellphone going up).Now, how can I do a menu like that, whatever the menu I choose, it does that alpha animation ?
I have an array for my menu and submenus.It works fine, but I have to click again on the menu to close it.When it's open it's completly open it takes too much space.how I could make a menu close when I click on another menu item..this is the code on the frame on my main timeline:
I've got a drop down menu. I want to click a tab to make it drop then, if it's open, click it again to close. I've tried a million variations on the script below:
var btn_grp1:String function main1Down(event:MouseEvent):void { if (btn_grp1 != "dwn") {
[Code]....
This works too (once). So the drop down buttons all disapear again, but it won't re-set. The drop down menu stays up from then on.
BTW i'm not set on this method, it just seemed the most obvious i.e. if menu hidden, then show it, set some variable to down (showing), else hide the menu, set var to up (hidden). Not working though.
I've got an app where numerous Sprite objects are being placed on the stage, and then when an event occurs (mouse click most likely) I want all the Sprites to move, independently, based upon an algorithm that each Sprite has. I can't get the Sprite objects to respond to the event; I get no errors.
Here's my Event class: package { import flash.events.Event; public class MyCustomEvent extends flash.events.Event { public static const CONTROL_TYPE:String = "moveThem"; [Code] .....
I am writing a class button that extends Sprite. I use graphic fill to draw button and then use addEventListener to add Tween to MouseOver event. Problem is:
1) If I use MOUSE_OVER event, the tween became sometimes corrupt when Mouse is INSIDE the button.
2)If I use ROLL_Over event, the tween became sometimes corrupt when Mouse is NEAR the button BUT ok WHEN mouse is far enough.
Basiclally a simple thing, however i dont get an idea on how to solve this one:
Say I have a sprite which is already existing during runtime and at some certain point I want to attach some custom data to it, say, in a string.
How would I do that?
s:Sprite = new Sprite(); s["extra"] = .... gives me an error, so i got exactly that far till here.
s.name is already reserved for another string and for sure I thought about just adding a TextField with the string inside to it, like
s.addChild(myStringTf);
But I know there is a better way, I just cant find it. hasOwnProperty() just returns a boolean true in case i match the value already assigned to it, right? Isn't there a way to attach an annonymouse object to it?
I have a sprite A which has a child, sprite B.Sprite B has a variable, instance of class C which only extends EventDispatcherIn class C, I dispatch a custom Event. The eventlistener in sprite B reacts on the event.The same eventlistener in class A doesn't respond.If I dispatch the same custom event in the eventhandler in class / sprite B, this event is seen in class / sprite A.Is there a difference in events going through the displaylist and those who are from an EventDispatcher?
I am following this page to create a custom preloader extending Sprite to load an animation SWF, but it is not working (the animation SWF is not displaying): [URL]. I know the Animation.swf file is okay, because if I load it into the main app it displays and runs. The preloader works if an image is loaded by the preloader instead of the animation SWF. test.mxml (main app)
BTW, I typically have many more lines of ComboBox in the app to force the preloader to display, but limiting number of lines here.
I've made a simple package that creates a custom textfield and a circle sprite. pressing the circle sprite is supposed to update the textfield text with some sent string. The string is being sent by using a custom event. The problem is, for some reason the script never reaches the function that handles the custom event....why isn't the updateText event firing??
am loading an image onto stage dynamically. When I click on the loaded image, i am drawing a circle/rectangle[which is of Sprite type] at exact pixel-position on the image and making these circles/rectangles(Sprite_objects) visible there itself. In this way, I am adding as many number of Sprites_objects, till I continue clicking on the same image present on the stage.
The code in my application(which displays red colored rectangles when you click on the image) is as follows:
If you copy the code into ur actionsPanel directly,then make sure "image1.jpg" file * is present beside the .fla file.Since it gets loaded iff it is present in same directory.
*/ var myContainer:MovieClip = new MovieClip(); var temp_x:int,temp_y:int; //Loading an image dynamically and adding listeners... var urlReq:URLRequest=new URLRequest("image1.jpg"); var loader:Loader = new Loader(); loader.load(urlReq);[code]....
I am new at AS3 and for a simple task it seems I have a lot of code but here is my problem.The code below displays wind direction and the speed of it, but I want to convert that code into a re-usable function where each time displaySprite (after adding and event listener ie: displaySprite.addEventListener(MouseEvent.MOUSE_CL ICK, clearAndRedraw); ) gets clicked it will redraw the same sprite with new information.
Here, my loader instance name is: myLoader. When I click on the dynamically loaded image, I need to place a small red rectangle at that particular pixel position on the image.For creating a small rectangle, I am using following code:
At the moment when I click on the continer sprite, both mouse events are bringing triggered, from the stage and the container sprite. How can I make it so I only get the object I'm clicking on and not the stage as well??
I was trying to code a rollover rollout dropdown menu in code. I made a movieclip in the library which imports a rectangle sprite. The rectangle sprite moves down on frame2 and back up on frame3. When I called the frame from document level it gives me following error:
Taking my first steps coding in AS3. So I have my main class which extends sprite and I put new mc's on top of that. Using addEventListener on any child MC's with MouseEvent.CLICK works fine, but I can't add it to the main sprite. How can I register all clicks on the screen?
Does anyone know of a way to keep a menu open after clicking one of its menu items? I have a custom menu (extended the menu object) it contains a bunch of check type menu items, the requirement I am trying to fulfill is to allow the user to click multiple menu items without the menu closing, and then have the menu close when it loses focus, is this possible? If it is can someone please explain how it can be done (pref. with a small example).
Is there a way to add custom fields to the built in browser context menu using Javascript?I know flash/actionscript can do this, how are they doing it? Example: right click onand see the custom context menu.Is this possible with pure javascript or do you have to use flash?Note, I'm looking for adding to the built in browser context menu, not using custom javascript popups to mimic them.
I have a Flex application, running with Flash Player, not AIR, that contains a Tree that I would like to put a custom context menu on.
Tried just doing <mx:Tree ... contextMenu="{MyClassWithStatic.menu}">, but that didn't do anything.
Went searching, and found this quote from some Adobe docs somewhere
In Flex or Flash Builder, only top-level components in the application can have context menus. For example, if a DataGrid control is a child of a TabNavigator or VBox container, the DataGrid control cannot have its own context menu.
so went upwards, trying each parent element until I reached my <Application>-element, which is consistent with what they wrote.
Tried making a Flex component, based on Group (the default) which contained my tree, and the context menu on the top-level element there, hoping it would work, but to no avail.
Is there any other way to manage this that I haven't found yet?
The code I use to create the menu:
var menuItems:Array = []; var rename:ContextMenuItem = new ContextMenuItem("Rename"); rename.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT,