实例说明
- _5 a( h1 S% z
1 j" D) t( v3 x) L, I( m$ M& y' `5 e0 B& P% I
& U/ p( l N+ ^; ?6 C
" r) l8 p- O' R$ s! z1 a0 ?( d! n7 T; L% ^; F6 d4 c7 L
当鼠标点击屏幕或按下空格键,就能在屏幕上画下一个小圆点,通过颜色选择器选取不同的画笔颜色,画出喜欢的图形。
- \0 t5 E+ c' q4 k3 u3 m C* a6 \
2 H& N# j w. J, d& k7 A& z' z+ G% W
# o: U5 g* U; `; N* z9 d4 Q
2 A* f% X, u2 q* R% r V
" L) J( ]0 |( }. }1 V* E9 c 有关知识
$ w9 s. W5 X. f2 a- D
! w. k# H5 X2 F+ J1 m* j
4 `" q% E1 ]; n7 V0 {3 K
0 u/ X! z- S' ^; Z, a2 S. ]
( _3 J( c7 h/ U6 o$ y2 |$ S/ L# |+ L4 S/ a& `/ v- K- c
隐形按钮的应用。设定参数,属性,复制(删除)电影片断。
4 U/ Z% H5 Q8 u+ G) n
, E2 r' V/ q9 n: o& P' u; s* Z; ~
: I0 C* y6 k6 V" `5 r$ c) V5 a g! }2 Z- h- ?& F F+ M* _5 m
~( f! g& R: c6 I, l. P8 ]/ P, j4 W9 }, F& [
制作过程' \+ |1 |, I" j/ C5 A+ W- t
" n0 p6 k; [# e7 u) t3 n- P. Z0 \
5 }* H: V4 m' H/ N1 s
9 M+ S' e: ^1 H$ s w- ?$ H! j: @, }) W+ P6 a2 ~
. x6 C: _8 M( R) i" h' F1 m& E8 u5 }4 X 步骤1:打开Flash,建立一个新文件。按Ctrl M键,将帧速度(Frame rate)设为12帧/秒,Dimensions设为450px*300px,背景颜色为白色。
8 i1 @$ _0 d! a& z8 G/ x/ n1 s2 X% y1 F
3 W8 |( B8 Y' o3 D/ Y5 M7 k. z; ]( O
0 Q3 b \6 Y# q% j3 D- w: m
' L, A$ C* X9 p9 C$ w) n2 V
( N. I' I3 j9 \ 步骤2:从菜单栏中选择插入>添加符号(Insert>New Symbol),在出现的对话框中选按钮(Button),命名为reset,制作一个reset按钮。如图1所示。
% j7 I& W- A) n3 s
* z. F [, ^, m; Z5 Z6 @2 l+ x
/ B% e* E9 I# C. t" A5 T
( j+ T6 r* b [0 R8 ?8 z
+ H1 t4 v/ z$ S 图1 制作reset按钮
7 h* H) l8 @: t% h+ g
5 @% n1 o& x: n: c4 s' |4 G
% g' t( \2 `; X- E1 p
( o3 i+ O8 D- f/ q
" W8 O0 z' @7 V
/ `( z; I7 W x7 \' L 步骤3:将按钮reset放入到场景中,将该层命名为reset。
; a1 P6 s- i6 Y8 g; i/ c( D0 H
8 W# c3 p4 s. ?6 R4 t
5 R4 m' w9 X$ n+ S2 x) t( _1 c5 f* W8 X
) e0 R4 l" H! _* W) p/ ?
7 A8 B3 P" Q8 C; |0 d7 N3 j2 L 步骤4:新建图层bg,放在场景最底层,用矩形工具画一个方框,能够覆盖整个场景即可,颜色无所谓,因为我们要做的是一个隐形按钮。从菜单栏中选择插入>转换为符号(insert>convert to symbol),在出现的对话框中选择按钮(Button),命名为bg,编辑按钮bg, 在时间轴将矩形从Up帧拖拽到Hit帧,以建立触发区域。如图2所示
+ {; z6 Y, [) Q- _ O9 w9 j$ H0 [4 J
: Q, d+ [- H) T2 q
7 s! |' c) Z: j8 h- V " I* r/ L" j4 n/ Y
O+ [; M* G) r* Z 图2 隐形按钮的制作
1 Z, I" W, t/ P7 N& h p, n5 N) N* }$ Q0 i$ F8 j% M
7 R) M( P. B) f5 _5 g% p0 x: }, \
- }4 ~5 q9 L5 t4 H; }" N
5 Y' g3 ?5 ]/ G5 U! ^/ q& q$ b+ G S$ |1 t1 O
步骤5:从菜单栏中选择插入>添加符号(Insert>New Symbol),在出现的对话框中选电影片断(Movie Clip),命名为color,在第1帧用椭圆工具画一个黑色实心圆,不要太大,5-10px就可以了。在场景中新建图层color,将电影片断color放入图层color中。用鼠标选中电影片断color,在属性面板中将其命名为color,如图3所示。
( ]4 `0 I/ z$ S5 v. E. h! k, H& c5 J# S
1 {% S- M9 P4 {
! X3 J8 Z/ {! c- X X
( {! }9 T' `8 u& `2 c
% X/ e! L1 u- y 图3 给场景中的电电影段命名
7 s/ a' Q2 V- C) [( ^
+ m2 s$ W0 t) Y3 M9 r
3 H+ I" |: O8 |- P! a3 \- h8 P' }
8 j4 q# V$ T2 d6 t1 i3 g) g" g/ I8 V# U
$ @$ O- g' Y! F4 J8 Z 步骤6:用同样方法,新建空白电影片断point,只有一个空白关键影帧即可。在场景中新建图层point,将电影片断point放入图层point中,在属性面板中将其命名为point。
& ?" h. I: Q4 z& C _& d' g' r+ h6 n4 U2 C/ _: o" \
! U, [1 [( T8 A. _! ^9 L; M: d( P+ l
+ ~1 k! P2 N' l j. m _! I
0 g; n+ Y' e7 N0 }9 e 步骤7:好了,现在我们在场景中开始设置按钮bg的Actions。先在场景中选择隐形按钮bg,在Actions面板中插入如下命令:
9 d4 G- F1 X7 _8 A9 |0 h. U
' J1 u% ?! S4 ]% O5 m$ ~9 ]5 v
. k0 l# \4 J7 u. I+ T# ]
* @2 L) e0 g' c! S) f* ~/ n9 ]4 w/ u( J- L& v$ ~; T
( A% d( C% M" O! V; K) P. o0 U
on (press, keyPress "") {
6 `- s5 v' _, \3 t
/ b, m& \0 A" C. S* P4 {
% T9 u$ I( P- `. y//当按下鼠标或键盘”空格”键
8 \, n" s X- R& p: e7 S/ C# h9 u7 ?4 d" Z; m4 L
6 Q; p4 S( M; v0 @2 `
8 ]4 i* |3 Q& W% D& G& x m9 v
7 a/ [- J2 B1 F1 f# |# G/ f- M, q* _! V* D! F# p3 C Q
i = Number(i) 1;
r& d0 O# W, ?7 ]1 H5 m+ T0 C0 n2 B! f7 @& @. @7 v6 u
7 K% n& b0 W! Y! P //设定参数i=数值(i) 1
/ M8 \' p; `& H& X/ y' n$ U8 g" O3 k- B: v7 }
8 }2 M/ q+ n. O: T5 V( d0 O4 U& F5 K5 n: n8 Z
; O G) V. S3 |. |0 U3 Z7 B h
1 A" J1 V$ s3 r9 w. ]+ @) r0 S duplicateMovieClip ("/color", "color" add i, i);
8 G* J N9 b" F
3 A2 n. ^3 D) o2 E* U
: {1 p. p( L) _7 ^9 ~3 E //复制电影片断("/color",新名称: "/color" i,数目:i)
/ J! i u+ V# O& W; O5 z- t
3 n k( y6 F0 v3 @; Y
( R& O5 H8 r/ |' ], _
W+ ~3 g# s% ?" t) e" ]* k A( H& L" K
4 J( S) M5 ]3 S8 g8 X setProperty ("color" add i, _x, getproperty("/point", _x));
: A8 w/ \# y; N: K; D4 o$ X0 q; j/ ^2 W8 J$ C
) C) W6 x! ~+ `3 @) Q
//设定属性("/color" i的X位置为"/point"的X位置)
* K7 r0 b* @8 e! S# a( q
2 ^( W. u& Z" r, t$ d
* i, D7 n3 S. t& t! F! `
3 i6 _+ P4 m4 B6 t( z! W5 y; D
- H4 ] {8 l) m# a0 T- x7 m4 j; A1 v( S( F. J( \! V- {
setProperty ("color" add i, _y, getproperty("/point", _y));
, i4 X$ {4 K/ P0 L4 y
) X1 Q5 M# G! W V, ?) _9 T: ^; h4 s% k) Z
//设定属性("/color" i的Y位置为"/point"的Y位置)
6 y% G) j, F. j; D# e
7 g W+ m) q. }& M
9 C5 r/ d7 G$ ?- M7 L
. `! A! M: ]+ Y, C: _. q4 q% d/ o: T, v" t: i- ?- q
{. n* W" M; T1 [% M& F4 {}
& {$ o$ l- L& @4 E: Y* L) }( L% g/ N" e2 O: K# M
2 e3 R5 O& Y) U
8 }: m5 b+ }$ M4 ]/ p( C9 K& k: l1 i! I# r
! }% \- f, u8 Q2 i. I) y0 H 它们所起的作用是:当按下鼠标或时,设定参数:I=I 1,复制电影片断color,确定复制电影片断的位置。
9 Q9 h5 X4 F! W9 R0 n6 `; i# r
: u% r+ C1 D# k8 S/ s$ p% n$ W* ?9 \3 e
) f5 R- } j/ ]7 o, X! f
( m' }( z- u C8 S& S0 O% V! H; e `0 N0 y
步骤8:设置按钮reset的Actions。在场景中选择按钮reset, 在出现的Actions面板中插入如下命令:
- b6 }8 @2 W2 U& ]7 w
4 C1 _% o$ s+ N Y
/ r0 l; T7 I3 m& ^9 d1 |2 o# P5 {
; R1 b3 F4 p+ L; y. R q; r3 s z0 e$ P8 K" y. m
! m. z! G" g5 G$ m/ _
on (release) { 鼠标放开
+ c# Q+ ?1 k# R0 f+ A
$ h- |3 ], N2 `- c( g+ T1 k& G F: I& ^ ?# Q3 W
while (Number(i)>0) { 当数值i>0
( G; r! E- r6 ?% y
0 I1 w: ?5 l: C
8 {9 }% I2 _, I
6 B' m8 k2 g8 w0 S$ a3 x
4 K1 F3 _; t7 W. H: P+ i h: y5 ~
2 G" f# `0 V% t$ B/ ^" F: X& Q9 U removeMovieClip ("color" add i); 复制电影片断("color" i)
; N, W; [. G: G5 o! u( E) T" Y0 j8 F% T1 S5 a, L
0 j! o% y3 V& w' w# B
" v! Y: l3 K2 X# c6 O6 N5 Q8 x3 |3 B2 W! x
1 o" ~ Y* n9 B, a3 {) {2 T$ P2 W. B
i = i-1; 设定参数i=i-1
A* M4 @- {1 C* w0 ^
- R) q% v( L$ g# G0 p" Y
`5 l; {; T) Z
7 r: e d4 I( `2 `/ X. M8 [: g6 |) C, W$ ]: ^# ~; Q, P
7 [3 Z" J) q1 J4 \ }
1 P! U* _" V! u+ L- F% f' j& @; x+ ~2 Z
8 L x2 e. `3 c0 Z3 p" Z, |8 \- C0 y w& J: ~# n: H
4 A: q9 V' r! Q9 m+ B& H3 q
* r7 y) g# S' Q- @$ l& n
# b. k$ |* s( c
}
; p( j/ U! }* N2 ?2 Q
# E2 C# t* Y2 B& v% p
7 x( g8 y) g0 K$ e5 b2 h" s: h
$ X. e) a; _ J$ |4 Q$ o) L8 r! W5 t* c3 m8 i# s) O
鼠标事件的主要作用就是:当I>0时,清除电影片断"color" add i,使屏幕回到初始状态。好了,现在可以按下Ctrl Enter键测试一下电影。
6 X( r) Z+ A% F
, @. q. h N# R: o# Z( @
; T) q: S6 B. Z+ N/ v" n0 {% | X/ U2 [( b+ F$ E2 K
& X* [3 d* v; y3 t1 @, H
" a, l8 R3 I @+ Q) e2 a 只有一种颜色,很单调吧?现在我们把它改造成一个七彩画板。
$ m4 G* m3 A) K/ G; q/ U' G
2 L+ D7 U9 I" V5 B( }" ^8 U# k0 k# x. B. L/ F, p: @$ G9 u- w
4 F) E {+ M: n5 L3 S* S
" Q! U0 C; D1 ^
% s3 H4 A6 M, r+ n& P 步骤9:点击color层,分别选中第2至7帧,按F6增加6个关键帧。将其余层用F5键延长帧,如图4所示。
2 t8 O, u' M) Y: E+ i
2 V4 K" _, y# c: r. z
/ c6 J @! |. r! |8 w" n$ u 2 @8 d4 i! [' R/ i+ @8 ]
8 E- ^8 v. ]3 Z! w/ |7 n- Y# j0 l 图4 增加关键影帧
2 r7 O. t7 W2 C$ t0 M5 ]
5 T/ O9 ]7 m; e0 k3 ~' O
' q0 s( T+ P9 w. N9 [ B
* `( F! u: `9 ?/ A$ q# Q$ O" W2 h ~4 i
) \2 d6 n S! _; V 在场景1的第二个关键帧中,选取电影片断colorpicker,单击鼠标右键,选择Panels>Color,在弹出的Effect面板中设置颜色和透明度,通过右侧的RGB滑块,设置喜欢的颜色。如图5所示。
1 w+ G; V; a+ h: K5 K& I/ H* j6 ^4 m4 g5 C! l2 V, O
/ @# ~0 S0 G7 @) V7 f
4 ?: j; ]; T, ]6 | ^) G4 u- U
# t+ F! k7 _, a' T: \7 _" O0 Y
图5 给实例设置颜色
_" h" U* E# N- f1 P
+ k, {1 h) _2 X7 m$ r
) \3 W; N' ]( ?2 B) e. X4 ~1 q
/ ~4 R; C' c+ Q7 l% `5 x) J, p; L9 | m: _4 P2 g
2 ]& @6 [) ~6 _% C- o" s 步骤10:使用同样方法,在不同的关键影帧下分别设置电影片断colorpicker的颜色。这样在设置完毕后, colorpicker就有七种颜色了。
# l. T9 c3 N0 i2 x7 N3 ]$ L+ Q7 ]
( j* W( {+ v% x
7 p4 o9 D$ w$ u+ t ?2 } a- k+ M1 _7 i' h
# W6 X+ _1 E4 d+ {
/ k) |1 b6 G* f- E, L8 F' C4 W8 ]
步骤11:在场景中新建一图层action,建立七个空白关键影帧。每个空白关键影帧的Action都设置为stop。这样,保证电影不会循环播放。
4 u# }0 K& G; m! h* E: k: h! Y+ \+ K3 o1 B+ ~+ x0 O7 c( h
! ^( t3 _- g$ q' K$ s
. I4 S" f" P5 E+ X# N: y7 W, ?- ~6 d' ?8 d* _/ R% H9 L
8 h# E) r: F0 ^6 w; c+ ^- v 步骤12:新增电影片断“组件5”,在里面加上背景和两个按钮,如图6所示。
3 @% b+ X0 O' S* N
1 h3 e* \0 |) c9 Z' J' T' r) O
3 `. z9 L1 u$ s" U$ A! v
1 G" N6 m4 R) n* o% q
! c. S" I) V6 `+ I# k2 H' o# ? 图6 制作两个按钮
/ c9 g8 s B; t$ a% r
/ Y8 Z: d) d' J0 [7 v. z
$ N1 i! @4 G/ D' @3 B
( {9 b8 y# L% z/ }; m' Z; P
4 a$ [( l# r5 j$ L3 X, I
8 a) z/ Z2 B$ n; d/ D' q 为了控制电影向前,向后播放,分别给左侧和右侧按钮的Action设置分别为:
7 _- M. k' U' l, F) v6 X
/ t) Y! q% U0 M9 a0 O. A/ B; f6 }
8 Q# M* V2 l: J
6 U+ T6 M! ^: X* _: \/ a. ^* s1 G$ H% H6 S& ]% S2 X( S/ s
! C( O- l' b$ p) M+ O) Z 左按钮
& L* w* E/ d; u/ B( f2 t
* G; Z! i/ L6 l' @/ U
8 R u1 p! h4 K$ y# B1 \
+ u3 x5 z& p: W6 \% h
6 r) @( W |' R" V) H. P+ @: I2 ?% }% i2 J: ^9 A$ G5 c" ~
on (release) { 当鼠标放开
5 E# r8 x- p/ ?5 A8 g. V4 T4 L% R" `$ [
P8 h' Y+ f: J ^: `1 k3 ^
: o7 S, Y* C5 o+ Q9 |& `
. h( i H. {: f2 g; F% Z" V
+ s+ U/ f; m i& S | prevFrame (); 跳至上一个影帧
$ o# T* h1 f/ F6 y1 w: ?) s- X5 {) H) j1 K
. J; j- R% V6 M4 a) }: w/ m5 y+ T, D. |6 Y
* ?7 \# F2 F! G3 K, x( X
$ U& Z$ G/ U4 R- L4 G6 m
}
- j' f7 H3 [# L$ K$ k/ u+ E; H, {; o' c( O) u2 g
& J+ `5 f5 a5 m. t
0 E9 N c) E9 q* {+ s% F
' x( ^+ E6 I. t6 R; n
) X5 X/ G O4 b) X" T
右铵钮
$ f- Z# f( f% J& k
+ O. s; h, n& K5 j$ i2 b1 } J5 I( ~( Q& }
+ o. \0 e' W( b3 i
- L+ b& \2 A" f o7 s9 A
9 U2 Q8 n. m. A# ]0 Eon (release) { 当鼠标放开
' I5 K0 C% ?' H2 d6 t2 n
4 Q8 Z2 d$ v: }' a/ M$ \3 d2 j' v9 N1 y9 R& e3 k
: `7 h& D* h T9 y- y& \
8 ?# Y: s" [* |: c% H
* Q6 t; j, G+ ]- O- Y' d
nextFrame (); 跳至下一个影帧
1 g" r3 Z. {# d% V0 Y9 [/ s
9 i' p, a* [ H1 e( M0 U3 ]& a& ~- G$ n
+ g( _ D; L; v$ H# G' ^
9 q7 O: s+ i: c! d; e+ H, q' V% m6 ~7 b
}
3 d. Z0 j2 W; J0 G: C( J. Z9 ?$ T
, J, w2 d1 q: Z3 q! j( \. s
* h9 `. T7 @9 f1 R7 A) X" L- ?/ J, u+ T s: p9 r* {
& ?( X, k; T9 s5 \7 }8 u
在场景中新增图层”up