. Стиллмен, Дж. Грин - Изучаем C#, 2-е издание
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
уб<strong>е</strong>й моль!<br />
ОЗЬМИ в руку карандаш<br />
Заполнит<strong>е</strong> проб<strong>е</strong>лы, чтобы игра «Уб<strong>е</strong>й моль» заработала. Вам нуж<strong>е</strong>н код, подд<strong>е</strong>рживающий<br />
обратны<strong>е</strong> вызовы. Когда программа буд<strong>е</strong>т готова, пров<strong>е</strong>рьт<strong>е</strong> <strong>е</strong><strong>е</strong> работу в ИСР!<br />
p u b l i c p a r t i a l class Forml : F o r m {<br />
M o l e mole;<br />
R a n d o m r a n d o m = n e w R a n d o m {);<br />
p u b l i c F o r m l 0 {<br />
I n i t i a l i z e C o m p o n e n t ();<br />
}<br />
m o l e = n e w M o l e ( r a n d o m , n e w M o l e . ________<br />
t i m e r l .In t e r v a l = r a n d o m . N e x t (500, 1000)<br />
t i m e r l . S t a r t 0 ;<br />
p r i v a t e v o i d t i m e r l _ T i c k ( o b j e c t sender, E v e n t A r g s e)<br />
t i m e r l . S t o p 0 ;<br />
T o g g l e M o l e () ;<br />
J ) ;<br />
форма п<strong>е</strong>р<strong>е</strong>да<strong>е</strong>т д<strong>е</strong>л<strong>е</strong>гата<br />
указыван>и1,ий на м<strong>е</strong>тод<br />
обратного вызова в конструктор<strong>е</strong><br />
моли.<br />
Э т о т<br />
м<strong>е</strong>тод<br />
управля<strong>е</strong>т<br />
появл<strong>е</strong>ни<strong>е</strong>м<br />
и исч<strong>е</strong>знов<strong>е</strong>ни<strong>е</strong>м<br />
моли<br />
по р<strong>е</strong>зуль-j<br />
татам<br />
/ " " ^ p r i v a t e v o i d T o g g l e M o l e 0 {<br />
if ( m o l e . H i d d e n == true)<br />
m o l e .S h o w ();<br />
else<br />
m o l e . H i d e A g a i n O ;<br />
t i m e r l .I n t e r v a l = r a n d o m . N e x t (500,<br />
t i m e r l .S t a r t ();<br />
p r i v a t e v o i d M o l e C a l l B a c k ( i n t m o l e N u m b e r , b o o l show)<br />
работы if (moleNumber < 0) {<br />
тайм<strong>е</strong>ра. t i m e r l .s t o p () ;<br />
return;<br />
6 ^ Ьлок switch<br />
^арантиру -<br />
<strong>е</strong>т изм<strong>е</strong>н<strong>е</strong>ни<strong>е</strong><br />
т<strong>е</strong>кста<br />
и цв<strong>е</strong>та у<br />
^^равильной<br />
Кнопки.<br />
}<br />
B u t t o n<br />
s w i t c h<br />
button;<br />
(moleNumber)<br />
b u t t o n =<br />
b u t t o n =<br />
b u t t o n =<br />
b u t t o n =<br />
{<br />
b u t t o n l ;<br />
b u t t o n 2 ;<br />
b u t t o n s ;<br />
b u t t o n 4 ;<br />
case<br />
b r e a k<br />
case<br />
b r e a k<br />
case<br />
b r e a k<br />
case<br />
b r e a k<br />
default: b u t t o n = b u t t o n 5 ; break;<br />
{<br />
1000)<br />
(show == true)<br />
b u t t o n . T e x t = "HIT ME!"; ,<br />
button. B a c k C o l o r = Color. Red;<br />
'*<br />
} e l s e {<br />
b u t t o n . T e x t = "";<br />
IB!<br />
b u t t o n . B a c k C o l o r = S y s t e m C o l o r s .C o n t r o l ;<br />
t i m e r l .I n t e r v a l = r a n d o m . N e x t (500, 1000)<br />
t i m e r l . S t a r t ();<br />
}<br />
p r i v a t e v o i d b u t t o n l _ C l i c k ( o b j e c t<br />
m o l e .S m a c k e d (0)<br />
}<br />
{<br />
F o rm lx s [Design]<br />
Щ W h a c k -a -m o le<br />
sender, E v e n t A r g s <strong>е</strong>) {<br />
Добавьт<strong>е</strong> эти обработчики событий<br />
обычным способом, то<br />
<strong>е</strong>сть двойным щ<strong>е</strong>лчком на кнопках<br />
в конструктор<strong>е</strong> формы.<br />
ю т СО<br />
М Ы поговорим<br />
-г X<br />
П<strong>е</strong>р<strong>е</strong>тащит<strong>е</strong> эл<strong>е</strong>м<strong>е</strong>нт<br />
imeri ' Timer из окна toolbox<br />
л и дважды щ<strong>е</strong>лкнит<strong>е</strong><br />
^ на н<strong>е</strong>м.<br />
Добавьт<strong>е</strong> пять обработчиков<br />
событий для кнопок.<br />
buttonZ_click() вызыва<strong>е</strong>т<br />
mole.Smacked(l) и заставля<strong>е</strong>т<br />
button3 вызвать<br />
mole.Smacked(Z)>что за-<br />
^ ставля<strong>е</strong>т button4 вызвать<br />
mole.Smacked(3) и buttons<br />
вызвать mole.Smacked(4).<br />
522 глава 11