7.6. Defining Hit Areas for Movie Clips
Problem
You want to define a hit area for a movie clip used as a button.
Solution
Create a second movie clip to serve as the hit area. Then assign a
reference to the hit area movie clip to the
hitArea property of the button movie clip.
Discussion
When you create button symbols at authoring time, you can create
alternate hit areas using the Hit frame of the
button’s timeline. This can be very useful if the
artwork in the button is not solid or if you want to define a hit
area that is otherwise different from the shape defined by the
button’s artwork.
You can also define hit areas for movie clips used as buttons. All
movie clips have a built-in property named
hitArea. If hitArea is left
undefined, Flash automatically uses the movie clip’s
artwork as the hit area. However, you can assign the
hitArea property a reference to another movie clip
to serve as the hit area.
The following example shows how a custom hit area can be useful when
dealing with odd shapes or outlines. Using code, we generate a movie
clip that contains 100 small, unfilled circles that are aligned to
form a square grid. We then assign an onRelease(
) event handler method to the movie clip instance. Testing
the code reveals that the movie clip’s rollover
state is activated only when the mouse pointer is directly over one
of the circle outlines.
// Include theDrawingMethods.asfile from Chapter 4 for itsdrawCircle( )method. #include "DrawingMethods.as" // Create the button movie ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access