Adding Image to Simple Button Dynamically Using AS3

Hi,
I need some help trying to figure out how to dynamically add an image (PNG or JPEG) that I can place in the library to a simple button also dynamically created in AS3.
Is there a way to (1) add the image instead of using a text label and have it centered in the button?
Here's the AS3 for the simple button without the image (currently uses text label but would prefer if possible to substitute an image for the text:
        var mc2:MovieClip = new MovieClip();
        mc2.addChild( bgRed2 );
        mc2.addChild( txt2 );//currently uses text label; would prefer to use an image istead of text
        var mc2a:MovieClip = new MovieClip();
        mc2a.addChild( bgRed2a );
        mc2a.addChild( txt2a );currently uses text label; would prefer to use an image istead of text
        var clearBtn:SimpleButton = new SimpleButton();
        clearBtn.upState = mc2;
        clearBtn.overState = mc2a;
        clearBtn.downState = clearBtn.upState;
        clearBtn.hitTestState = clearBtn.upState;
        clearBtn.x = 0;
        clearBtn.y = 0;
        addChild( clearBtn );
        clearBtn.x = 55;
        clearBtn.y = stage.stageHeight-clearBtn.height;
Any help appreciated.

assign your image a class name (eg, Img1). you can then use:
var img1D:BitmapData=new BitmapData();
var img1:Bitmap=new Bitmap(img1D);
cleanBtn.upState=img1; // for example, button's upstate is the image.
// if you wanted some background and the image centered on the background, create your background (sprite or movieclip), use addChild to add img1 to your background and center it.  then assign your button's upState etc to be your background

Similar Messages

  • How to include Forward button dynamically using code?

    hello,
    i am creating my notification message dynamically using clob type document type attribute , and its working fine. But how i include the Forword Button in my message body.
    please advice

    i am allready doing that only, in that what will be the name of the button.
    can i put like this.
    htp.p( '<input type="button" name="forward">');
    then what about the event, shall i have to write the code for forward also.
    please advice.

  • Draw a Line From any Point A To any Point B Dynamically Using AS3

    I am trying to make an anmation where there are several locations(say A,B,C,D,......) made on a  map. If a person clicks on one location A and then another location B, I wanted to draw a dotted line from point A (from  destination of the plane) to point B(to destination of the plane)  using AS3. Please help me........

    Here is a quick and dirty timeline code that does it (class is below):
    var line:Shape;
    var lineGraphics:Graphics;
    var clickSwitch:int = 0;
    var mousePositions:Array = [];
    var conversion:Number = 180 / Math.PI;
    init();
    function init():void {
         drawBackground();
         line = new Shape();
         addChild(line);
         lineGraphics = line.graphics;
         stage.addEventListener(MouseEvent.CLICK, onClick);
    function onClick(e:MouseEvent):void
         clickSwitch = 1 - clickSwitch;
         mousePositions[clickSwitch] = new Point(mouseX, mouseY);
         if (clickSwitch == 0) {
              drawLine();
         else {
              removeLine();
    function removeLine():void
         lineGraphics.clear();
         line.rotation = 0;
    function drawLine():void
         lineGraphics.lineStyle(1, 0xff0000);
         lineGraphics.moveTo(0, 0);
         var dotDistance:Number = 2;
         var nextX:Number = dotDistance;
         while (line.width < Point.distance(mousePositions[0], mousePositions[1])) {
              lineGraphics.lineTo(nextX, 0);
              nextX += dotDistance;
              lineGraphics.moveTo(nextX, 0);
              nextX += dotDistance;
         line.rotation =  conversion * Math.atan2(mousePositions[0].y - mousePositions[1].y, mousePositions[0].x - mousePositions[1].x);
         line.x = mousePositions[1].x;
         line.y = mousePositions[1].y;
    function drawBackground():void
         var s:Shape = new Shape();
         var g:Graphics = s.graphics;
         g.beginFill(0xC0C0C0);
         g.drawRect(0, 0, stage.stageWidth, stage.stageHeight);
         g.endFill();
         addChild(s);
    Class:
    package
         import flash.display.Graphics;
         import flash.display.Shape;
         import flash.display.Sprite;
         import flash.events.MouseEvent;
         import flash.geom.Point;
         public class DottedLine extends Sprite
              private var line:Shape;
              private var lineGraphics:Graphics;
              private var clickSwitch:int = 0;
              private var mousePositions:Array = [];
              private var conversion:Number = 180 / Math.PI;
              public function DottedLine()
                   init();
              private function init():void {
                   drawBackground();
                   line = new Shape();
                   addChild(line);
                   lineGraphics = line.graphics;
                   stage.addEventListener(MouseEvent.CLICK, onClick);
              private function onClick(e:MouseEvent):void
                   clickSwitch = 1 - clickSwitch;
                   mousePositions[clickSwitch] = new Point(mouseX, mouseY);
                   if (clickSwitch == 0) drawLine();
                   else removeLine();
              private function removeLine():void
                   lineGraphics.clear();
                   line.rotation = 0;
              private function drawLine():void
                   lineGraphics.lineStyle(1, 0xff0000);
                   lineGraphics.moveTo(0, 0);
                   var dotDistance:Number = 2;
                   var nextX:Number = dotDistance;
                   while (line.width < Point.distance(mousePositions[0], mousePositions[1])) {
                        lineGraphics.lineTo(nextX, 0);
                        nextX += dotDistance;
                        lineGraphics.moveTo(nextX, 0);
                        nextX += dotDistance;
                   line.rotation =  conversion * Math.atan2(mousePositions[0].y - mousePositions[1].y, mousePositions[0].x - mousePositions[1].x);
                   line.x = mousePositions[1].x;
                   line.y = mousePositions[1].y;
              private function drawBackground():void
                   var s:Shape = new Shape();
                   var g:Graphics = s.graphics;
                   g.beginFill(0xC0C0C0);
                   g.drawRect(0, 0, stage.stageWidth, stage.stageHeight);
                   g.endFill();
                   addChild(s);

  • How to Access Custom Event using AS3?

    Hi All,
    Maybe it's that its Monday morning and my brain is still foggy, but I can't seem to figure out how to set custom events using AS3.
    I have a custom GridRow itemRenderer, and have declared the event using the appropriate metatags.
    Then I create the GR item dynamically using AS3 instantiation, but the event is not available for selection in the intellisense drop-down.
    Let's take the following as an example:
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Grid
         xmlns:mx="http://www.adobe.com/2006/mxml"
         xmlns:renderers="com.brassworks.renderers.*"
         creationComplete="componentInit();"
    >
         <mx:Script>
              <![CDATA[
                   private function componentInit():void
                        newRow     :MyRow     = new MyRow();
                        //newRow.myEvent is not an available option to set
              ]]>
         </mx:Script>
    </mx:Grid>
    Then the itemRenderer:
    <?xml version="1.0" encoding="utf-8"?>
    <GridRow
         xmlns:mx="http://www.adobe.com/2006/mxml"
         xmlns:classes="com.brassworks.components.classes.*"
         creationComplete="componentInit();"
    >
         <mx:Metadata>
              [Event(name="myEvent", type="flash.events.Event")]
         </mx:Metadata>
         <mx:Script>
              <![CDATA[
                   private function itemChanged(event:Event):void
                   Alert.show("test");
                   this.dispatchEvent(new Event("myEvent"));
              ]]>
         </mx:Script>
         <mx:GridItem>
              <mx:TextInput
                   change="itemChanged"
              />
         </mx:GridItem>
    </GridRow>
    How do I go about setting the handler method for custom events on instantiated items? Do I need to do this via the AddEventListener() method? Does this mean that events aren't exposed in ActionScript like they are in MXML? (In MXML all I have to do is <MyRow myEvent="handler(event)" />.)
    Thanks!
    -Mike

    Yes, I you need to do this via the addEventListener() method.
    myRow.addEventListener( "myEvent", myHandler );
    I hope that helps.
    Ben Edwards

  • How to edit xml using AS3

    I want to edit xml file on run time dynamically using AS3
    Plzzzzzzzz if it possible send the tutorials links or sample script.

    Flash player 10 has support for accessing local system file. This can be done using the FileReference class. You can browse a loca file, rad it and then save it back. But at the time of saving, the user is prompted to choose a location for saving the file.
    Else you can use some server side technology with your app to read and write files.

  • Dynamic Photo Gallery in Flash using AS3.0 and XML, but it doesn't work and missed up my app.

    Hi,
    I am creating an iPad app using AS3. The app contains three sections.
    One of those sections (chocolate sources)contains Dynamic Photo Gallery using XML. The photos, thumbnails, and text in this section are loaded from XML.
    I faced may issue when I tried to run this app:
    The gallery photos didn't show up
    The thumbnails (buttons to navigate the photo gallery) didn't show up at all. (The thumbnails should show up under the photo gallery box.)
    The text doesn't show up (the text should be in every photo as describtion)
    I want to include Swipe in the photo gallery, how can I do that?
    When I click on "Chocolate Sources" button, the photo gallery appears in every section, here are print screens describe what I mean:
    The photo gallery covers the home screen too.
    Here is my XML:
    <?xml version="1.0" encoding="utf-8"?>
    <sources>
              <section>
                        <details>
                                            Cocoa tree exists in the tropics area, such as Central and South America.
                                  </details>
                                            <image>
                                                      <url>coca1.jpg</url>
                                                      </image>
                                                      </section>
              <section>
                        <details>
                        Cocoa is supplied in many countries such as Indonesia, Ghana, Brazil, Ecuador and Cameroon.
                        </details>
                                  <image>
                                  <url>coca2.jpg</url>
                                  </image>
                                            </section>
              <section>
                                  <details>
                                  Dark chocolate helps to relax and reduce the stress and blood pressure because it has antioxidants elements, which helps in vasodilatory process.
                                  </details>
                                            <image>
                                            <url>coca3.jpg</url>
                                                      </image>
                                                                </section>
              <section>
                        <details>
                        Chocolate provides energy and hyperactive sometimes because it contains high level of caffeine and sugar.
                        </details>
                                  <image>
                                  <url>coca4.jpg</url>
                                            </image>
                                                      </section>
              <section>
                        <details>
                        Chocolate could be mixed with many different flavors, such as mint, strawberry, orange, banana, vanilla, hazelnut, almond, coconut, and etc.
                        </details>
                                  <image>
                                  <url>coca5.jpg</url>
                                  </image>
                                            </section>
              <section>
                        <details>
                                  Chocolate is expressing of well hospitality and good time due to its lovely taste.
                                  </details>
                                            <image>
                                            <url>coca6.jpg</url>
                                                      </image>
                                                                </section>
    </sources>
    And here is my Action Script for "Chocolate Sources" section:
    stop();
    function Choco1(evt:MouseEvent): void {
              gotoAndStop('16');
    choco_btn.addEventListener(MouseEvent.CLICK,Choco1);
    function Souc1 (evt:MouseEvent): void {
              gotoAndStop ('31');
    souc_btn.addEventListener(MouseEvent.CLICK,Souc1);
    function ShopIn1 (evt:MouseEvent):void {
              gotoAndStop('46');
    shops_btn.addEventListener(MouseEvent.CLICK,ShopIn1);
    import flash.net.URLLoader;
    import flash.net.URLRequest;
    import flash.events.Event;
    import flash.display.MovieClip;
    import flash.display.Loader;
    import fl.motion.MotionEvent;
    import flash.events.MouseEvent;
    import flash.sampler.NewObjectSample;
    import flash.text.TextFormat;
    var xmlLoader: URLLoader = new URLLoader (new URLRequest("sources.xml"));
    xmlLoader.addEventListener(Event.COMPLETE, finishedXmlLoader);
    var xmlFile:XML;
    var xextend:int = 10;
    var gal:galary = new galary ();
              gal.x = 85;
              gal.y = 165;
              addChild(gal);
    var txfe: TextField = new TextField ();
    txfe.x = 25;
    txfe.y = 45;
    var tformat:TextFormat = new TextFormat ();
    tformat.bold = true;
    tformat.color = 0xFFFFFF;
    tformat.size = "18";
    tformat.font = "Arial";
    txfe.defaultTextFormat = tformat;
    addChild(txfe);
    function finishedXmlLoader (e:Event): void{
              xmlFile = new XML (xmlLoader.data);
              var leng:int = xmlFile.image.length();
              txfe.text = xmlFile.image.details[0];
              for (var i:int = 0;i<leng;i++){
                        var b:thumbs = new thumbs ();
                        b.x = xextend;
                        b.y = 480;
                        b.buttonMode = true;
                        b.details = (i+1).toString();
                        addChild(b);
                        b.addEventListener(MouseEvent.MOUSE_OVER, theMosover);
                        b.addEventListener(MouseEvent.MOUSE_OUT, theMosout);
                        b.addEventListener(MouseEvent.CLICK, onMosClick);
                        var bloader:Loader = new Loader();
                        bloader.load(new URLRequest("thumbs/" + (i+1) + ".jpg"));
                        b.addChild(bloader);
                        xextend += b.width + 50;
    var loader:Loader = new Loader ();
    loader.load(new URLRequest ("pictures/coca1.jpg"));
    gal.addChild(loader);
    function theMosover(m:MotionEvent):void{
              m.currentTarget.alpha = 0.5;
    function theMosout (m:MouseEvent):void{
              m.currentTarget.alpha = 1.0;
    function onMosClick(m:MouseEvent):void{
              var loader:Loader = new Loader();
              loader.load(new URLRequest("pictures/" + m.currentTarget.details + ".jpg"));
              gal.addChild(loader);
              txfe.text = xmlFile.image.details[int(m.currentTarget.details) -1];
    I need an urgent help to fix the errors and make this section work well.
    thanks.

    try:
    txfe.text = xmlFile.section[int(m.currentTarget.details) -1].details;
    instead of
    txfe.text = xmlFile.image.[int(m.currentTarget.details) -1];
    and add your thumbs to gal, not the stage.  when you're done with the gallery, remove gal.

  • How do I create a play button for movie clip using AS3

    Hello.
    Bit new to this and have been searching the adobe forums and google. I am trying to create a button that will play an imported MovieClip.
    I have a movie clip that I've imported into it's own layer (Layer1) Frame 1.  I've given the MovieClip an instance name of foundationMovie.
    I've created a button and have that on its own layer(Layer2) above layer1, it is also in Frame 1.
    I've added a
    stop (); action to layer2
    The video is not set to autoplay.
    I want the video to start playing when the viewer clicks the button.  I know I've got to put some kind of event listener using AS3 in my timeline somewhere.
    I've found some code and I've been trying to work with it.  I'm sure I've mutilated it beyond usability but this is what I've got.
    stop ();
    player.addEventListener(MouseEvent.CLICK,play);
    function play(event:MouseEvent)
    gotoAndPlay("foundationMovie");
    If someone could point me the right direction or help me with my code I would really appreciate it.  Thanks.

    First, you need to clear up what you are working with... a movieclip and a video are usually entirely different things.
    Next, your code may get you started on your way with some changes.   You shouldn't use "play" as a function name due to there already being a play() method/function in Flash.
    If the movieclip is a movieclip and has an instance name of "foundationMovie", and your button has an instance name of "player" then the following adjusted code would normally work...
    stop ();
    player.addEventListener(MouseEvent.CLICK,playMovie);
    function playMovie(event:MouseEvent)
         foundationMovie.play();

  • How to read the contents of images folder using AS3

    Hi,
    I'd like to load the images in the folder dynamically without using XML.
    Is there a mechanism in AS3 that enables me to read directly the content of images folder directly without using XML or should I use php to do that?
    Thanks

    Yes you can do that without XML. You need to use the Loader() class to dynamically load the images. Check the documentation of the loader class.

  • Adding images and buttons without a frame appearing

    I would like to add images to some of my pages without having them appear in a frame. I would like to place some transparent gifs on the page to use as buttons for hyperlinks. I would also like to have some photos (with transparent backgrounds that appear on the page and are not surrounded by a picture frame. Any Suggestions

    iWeb seems to default to stroking newly-added images and shapes. Pages (iWeb's close relation) includes a way to change the default appearance, but I can't find anything similar in iWeb. You can, of course, remove the stroke using the Graphic Inspector (just set Stroke to None). Transparency in gifs and photo images is supported. Just drag into iWeb or use Insert > Choose... Again, remove the stroke if this appears.

  • Using a background image for the buttons in spry menu

    Hi All,
    Going nuts here.
    I'm using the vertical spry menu widget w DW CS3 and trying
    to alter the css style sheet, so that I can use a li class for each
    of the 14 links on this page, with an upstate and a hover state
    only. (the focus, and hover while down will be the same as the
    others, to keep it simple and not too distracting)
    The page is here that I will be replacing the entire
    background image in sidebar1 and sidebar2 with a custom spry menu
    with the 14 li classes for 2 seperate menus:
    http://audibleimagesav.com/blank_doc.html
    Has anyone used a background image in place of just using
    bkgrd colors and borders for the spry menu ?
    I am aware of the attributes that the help docs suggest that
    need to be altered as listed here :
    http://livedocs.adobe.com/en_US/Spry/1.4/help.html?content=WS0BB04E11-1BE3-4a67-BC94-BE7DA 93A0159.html
    I have been working on just an experimental page, that is now
    hacked up, however if you want to see that it is here with only the
    first list item coded:
    http://audibleimagesav.com/site%20theme%20ideas/sprymenu_exp.html
    The spry css menu widget for that page is here:
    http://audibleimagesav.com/SpryAssets/SpryMenuBarVertical.css
    So in short, has anyone done a bkgrd image for the main menu
    (not submenu) in a spry widget?
    Thanks in advance.
    Art
    Art Hansen
    Web Design & Marketing
    http://www.innova-techsolutions.com
    321.750.3852 - Cocoa Beach, Florida, USA

    http://meyerweb.com/eric/css/edge/popups/demo2.html
    Maybe

  • How can I use an image as a button and make it invisible unless selected?

    Hello,
    I have been trying to use this button I created in Photoshop in Encore but I cannot get it to work the way it should.  First I import the image and drag it onto my menu.  Then I select "Object" then "Covert to button".  That creates a button but I want it to be invisible unless I select it.  Creating a button this way only overlays colors on top of the image when selected vs not selected.
    What I need is to have the image been a subpicture highlight.  I tried to use Photoshop to create a layer under my buttons and use the image there, typing (=2) as the layer name.  I think this is supposed to show the button in its selected state?
    But that doesn't work.  The image is invisible when I open the menu in Encore, not matter what I select for button highlights.
    Could you please explain how to create an invisible button but use an image as its selected state and possibly another for its activated state?
    Thanks.

    Have you tried using the selections in the Encore menu viewer that show you selected and activated states?

  • How to disable the inputfield using radio button dynamically in module pool

    How to disable the inputfield on the screen using radio button dynamically in module pool.
    Please suggest .
            Thanks.
    Edited by: Lavanya YH1504 on Jul 30, 2010 1:20 PM

    I got it thank you.
    LOOP AT SCREEN.
        if  screen-GROUP1 = 'LA1'.
           If RADIO1 = 'X'.
            SCREEN-INPUT = '0'.
            MODIFY SCREEN.
         ELSEIF RADIO2 = 'X'.
           screen-input = '1'.
          ENDIF.
          MODIFY SCREEN.
        ENDIF.
      ENDLOOP.
    ENDMODULE.                 " STATUS_0100  OUTPUT
    Edited by: Lavanya YH1504 on Jul 30, 2010 1:51 PM

  • Link button to local html page using AS3

    I am using AS3 and having trouble linking a button to a local html page

    Okay, I tried both of the codes and it is still now working.
    navigateToURL(new URLRequest("file:///fishcom/Home.html"));
    I get a Windows dialog box that states that the path can not be found.
    navigateToURL(new URLRequest("./fishcom/Home.html"));
    This goes to http://./fishcom/Home.html  but not my page.
    The Flash file and the HTML page are in the fishcom folder on my desktop. Very frustrating because this was so easy in AS2. 

  • How can simple tools be used in 32-bit-per-channel images?

    I have just begin working with HDR imaging.  I am using it for what it was designed for.  The subject of the photograph is a creek, looking straight across the creek to the far bank.  The creek and the far bank are in bright sunlight.  I was in woods, and deep shadow, when I took the photograph, and so the foreground is very dark.  I converted the image to 32 bits/channel when merging it into HDR Pro, and used ACR to tone the final image.  All of that worked very well.
    But when I wanted to make some final little adjustments to the image, I found that I coulnd't!  I wanted to select a color range, but the Color Range option was grayed out.  I tried to use the magnetic lasso, but a message box popped up saying that I couldn't use that tool in 32-bit images. 
    I don't understand this limitation.  32 bits are supposed to be best for HDR images, but I can't use simple tools to edit the result? 
    And then when I switched to 16 bits, it seems I have to merge the channels first, but that loses all of the smart filters and other history that I had when working in 32 bits! 
    What is the best workflow for doing this?  Is there something I am missing that would help?
    Thanks very much!
    RobR

    Thanks again for helping me understand.
    But I'm afraid I'm still a fair bit mystified.  I'm trying to move away from why 32-bit is different from 16-bit and into what is the typical workflow for an HDR image where the goal is a realistic scene.  
    Are all edits typically done in ACR?  Or do people accept the loss of the ability to use ACR when they switch to 16-bit mode to get the simple tools like selection, dodge/burn, and so on?  It seems to me that the best of both worlds is to save the ACR-only version of the image and then convert to 16 bits and, once final editing is complete, to save that version separately?  That way, should the ACR need to be adjusted, it could be done starting from the original settings, and only the 16-bit changes would need to be redone manually.  
    Thanks again.
    RobR

  • How do I upload an image using as3 and display it without a server?

    Is it possible to upload an image using as3 and flash player 9 and then display it in a movie clip without server side assistance?
    thanks,
    JB

    Hi,
    Check out the links..
    I hope it will helps u.
    http://labs.findsubstance.com/2008/04/03/as3-upload-encode-images/
    http://flexscript.wordpress.com/2009/01/12/uploading-an-image-into-flash-without-server-si de-script-using-flash-player-10/
    Saransoft

Maybe you are looking for

  • Show the object and the line number, where the error happens in Forms

    Hi! Al lot of our programmer use the ugly when others clause to raise messages like "error <sqlcode> happens in ....". Often this hides the really error in some underlying procedures. Is it possible to call the error stack from forms like in 10g data

  • Migrating Wiki Server 10.8.5 to 10.9 Mavericks

    Hello all, i'm trying so hard to complete this migration i followed this instructions http://support.apple.com/kb/HT5697 but when i came to the point sudo serveradmin start postgres_server i get the following error: postgres_server:error = "CANNOT_ST

  • Weird white dots appearing in menu

    Hello everyone, I just noticed today that everytime I open the menu up top and rollover a button, white dots appear. Each time I rollover, the dots change position. For example, if I roll over a selection, there are a lot of dots, and sometimes there

  • IE7 Drill down issue

    Hi I'm using discoverer OracleBI Discoverer 10g (10.1.2.2) Oracle Business Intelligence Discoverer Plus 10g (10.1.2.54.25) Did any one come up with a solution for the "drill down issues when using IE7" ? I have tried the patchset in the forum but of

  • Why Can't Get Color Images from My ADS Pyro IEEE1394 Camera

    This is a list of our equipment   : Windows98SE LV6.0i NI-IMAQ for IEEE1394 Advanced IMAQ Library for LV Pyro IEEE1394 Webcam from ADS Unfortunately, we do not see any colors in the RGB Modus. We have visited your perfect support web sites and found