Creating Flash Buttons

written by: Milan Midovich; article published: year 2007, month 06;


In: Categories » Computers and technology » Flash » Creating Flash Buttons

Buttons are one of the three main types of symbols that you use in Flash. The others are movie clips and graphics.

Making a New Button

There are many ways to create a button. One method is to choose Insert, New Symbol from the menu. You are presented with a dialog asking you to name the symbol and to choose whether it is a movie clip, button, or graphic. Choose Button.

The main Flash window now changes to show the button's timeline instead of the movie's main timeline. There are four frames in a button timeline. They are labeled Up, Over, Down, and Hit. They represent the three button states, and the active area of the button.

If you place a graphic, such as a circle, in the first frame and nothing in the other three frames, the Over and Down states of the button will be the same as the Up state. The active area of the button will be the same as well.

On the other hand, you can create a different graphic for each key frame.

When you are finished creating your button, return to the main timeline by clicking the name of the scene, usually Scene 1, where it appears just under the timeline.

Now, open up the library by choosing Window, Library. You should see the button in the library. Drag it to the work area in the main window.

Adding a Script to a Button

To add a script to a button, first select the button. Then bring up the Actions panel. Alternatively, you can right-click the button in Windows, or Control+click the button on the Mac. Select Actions from the menu that appears.

Make sure that the Actions panel is set to Expert mode. You can check this in the pop-up menu that is activated at the upper-right corner of the window.

Here is a typical button script. You can place this in the script window and then test the movie to see whether it works.

on (release) {
   trace("You clicked the button!")
   }

Button scripts use a special syntax that starts with the on keyword. This creates a handler. It is called that simply because it "handles" an event. In this case, the event is release, which is what happens when the user clicks the button and then releases. That is the most common type of button event.

You could also use the alternative event press in place of release. The difference is that the handler will run when the user first clicks the button and will not wait for the user to release the mouse button.

When a handler is activated, the code inside the brackets is executed. In this case, just a trace command is there. It sends a message to the Output window to let you know that the script worked.

Now let's put our knowledge of ActionScript navigation commands and button scripts to work.

legal disclaimer

1) Our website is not responsible for the information contained by this article as well for any and all copyright infringements by authors and writers. E-articles is a free information resource. If you suspect this article for any copyright infringements, please read the Terms of service and contact us to investigate the problem.
2) The E-articles directory team is not responsible for inaccuracies, falsehoods, or any other types of misinformation this tutorial may contain and will not be liable for any loss or damage suffered by a user through the user's reliance on the information gained here. Please read the Terms of service

Useful tools and features

Translate this article to...    Send this article to you or to a friend

Link to this article from your page   
If you like this article (tutorial), please link to it from your web page using the information above. Linking to this page, this is the only way to help us improve our service, the same time providing your visitors with a way to improve their online experience.

related articles

1. ActionScript: Filling a Shape with a Solid or Translucent Color
Use the beginFill( ) and endFill( ) methods to initiate and close a shape drawn at runtime. To draw a filled shape, call beginFill( ) prior to any other drawing methods, including the custom methods you have defined such as drawCircle( ) and drawPolygon( ). Invoke endFill( ) after calling other drawing methods to create the shape. You cannot apply a fill to an existing shape drawn at authoring time or runtime. You must invoke beginFill( ) before drawing the shape to be filled. This example creates a solid blue ...

2. Drawing a rectangle using ActionScript
Create a custom MovieClip.drawSimpleRectangle( ) method using the Drawing API and invoke it on a movie clip. To draw a simple rectangle, specify the stroke's attributes using the lineStyle( ) method and then draw four lines using the lineTo( ) method: // Create rectangle_mc with a depth of 1 on the main timeline. _root.createEmptyMovieClip("rectangle_mc", 1); // Specify a one-pixel, solid, black line. rectangle_mc.lineStyle(1, 0x000000, 100); // Draw four lines to form the perimeter ...

3. How to draw a rectangle with rounded corners
You want to draw a rectangle with rounded corners, an offset, or rotation.Create a custom MovieClip.drawRectangle( ) method using the Drawing API and invoke it on a movie clip. The drawSimpleRectangle( ) method is, as the name suggests, quite simple. Let's create a more complex version that also: Draws a rectangle with a specified angle of rotation Let's you specify the rectangle center's coordinates Can draw a rectangle with rounded corners The drawRectangle( ) method accepts...

4. Reusing and Organizing Code in Flash Movies
You want to reuse code that you've created for one project in another Flash movie. Or you want to write your ActionScript code in an external text editor. Place your ActionScript code in external .as files and use the #include directive to add them to your Flash movies: // Adds all the code within MyActionScriptFile.as to your Flash movie. #include "MyActionScriptFile.as" Use the #include directive to incorporate code from external text files into your Flash movie during compilation from a .fla file ...

5. Drawing a Circle using ActionScript
Create a custom MovieClip.drawCircle( ) method using the Drawing API and invoke it on a movie clip. You can create a circle in ActionScript with eight curves. Fewer curves results in a distorted circle and too many curves hinders performance. Let's create a custom method of the MovieClip class for drawing circles. This method, drawCircle( ), allows for three parameters: radius The radius of the circle x The x coordinate of the circle's center point. If undefined, the circle is centered at x =...

6. ActionScript: Repeating a Task at Timed Intervals
You want to perform an action or actions at a specific timed interval. Use the setInterval( ) function. The setInterval( ) function allows you to specify an interval (in milliseconds) at which your Flash movie will invoke a function. Use setInterval( ) to perform a particular action over time but not necessarily at the frequency of the frame rate of the movie. // Define a function. function myIntervalFunction ( ) { // Output the difference between the current timer value and its value from the ...

7. Mouse Location Flash Script
Not only can you get the location of a movie clip on the screen, you can even get the location of the mouse, also known as the cursor. What is the difference between the mouse and the cursor? The mouse is the physical device attached to your computer. You may even have a track pad or tablet instead. The cursor is the graphic that moves around the screen as you move your mouse. So, technically, cursor is the term I should be using here. However, ActionScript uses the term mouse in its keywords. I will therefore use mouse and cursor i...

8. ActionScript: Performing Actions Conditionally
You want to perform an action only when a condition is true. Use an if statement or a switch statement. You often need your ActionScript code to make decisions, such as whether to execute a particular action or group of actions. To execute an action under certain circumstances, use one of ActionScript's conditional statements: if, switch, or the ternary conditional operator (? :). The conditional statements allow you to make logical decisions, and you'll learn from experience which is more appropriate for a given situ...

9. Enhancing Standalone Projector
You want to create an enhanced Standalone Projector with features such as borderless playback, custom titles, no Flash menus, and so on. Use a third-party tool such as SWF Studio or SWFKit to create the Projector from your completed Flash movie. SWF Studio is a third-party utility that helps you overcome some of the limitations of regular standalone Flash Projectors. However, SWF Studio produces Windows projectors only. Also note that the resultant projector files are rather hefty (minimum file size is around 1.5 MB). The...

10. How to build an animated button using Flash
Time: 15 Minutes. Difficulty Level: Intermediate Requirements: Flash 8 Assumed Knowledge: Basic actionscripting, using the actions window, using variables, creating symbols. Purpose: I always wanted to animate a button from ActionScript and keep my timeline clear but it was kind of hard, until I stumbled upon this Tweening Engine from Extend. This tutorial makes use of the Tweening Engine to animate a butt...