. Стиллмен, Дж. Грин - Изучаем 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>ш<strong>е</strong>ни<strong>е</strong> упражн<strong>е</strong>ния<br />
возьми в руку карандаш<br />
'<strong>е</strong>ш<strong>е</strong>ни<strong>е</strong><br />
Вот как долж<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 />
}<br />
p r i v a t e v o i d F o r m l _ L o a d ( o b j e c t sender, E v e n t A r g s e) {<br />
}<br />
c l a s s M o l e {<br />
m o l e = n e w M o l e ( r a n d o m , n e w Mole,<br />
Popup<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 />
p u b l i c _<br />
p r i v a t e<br />
Popup<br />
p o p U p C a l l b a c k ;<br />
v o i d P o p U p d n t hole, b o o l show)<br />
p u b l i c M o l e ( R a n d o m random, P o p U p p o p U p C a l l b a c k ) {<br />
t h i s . r a n d o m = random;<br />
}<br />
t h i s .___________<br />
h i d d e n = true;<br />
popUpCallback<br />
p u b l i c v o i d S h o w O {<br />
t i m e s S h o w n + + ;<br />
h i d d e n = false;<br />
}<br />
h o l e = r a n d o m .N e x t (5);<br />
popUpCallback<br />
p u b l i c v o i d H i d e A g a i n O {<br />
h i d d e n = true;<br />
}<br />
popUpCallback<br />
C h e c k F o r G a m e O v e r ();<br />
(hole, true)<br />
(hole, false)<br />
p u b l i c v o i d S m a c k e d ( i n t h o l e S m a c k e d ) {<br />
if ( h o l e S m a c k e d == hole) {<br />
t i m e s H i t + + ;<br />
h i d d e n = true;<br />
C h e c k F o r G a m e O v e r ();<br />
popUpCallback<br />
(hole, false)<br />
popUpCallback<br />
MoleCallBack<br />
Форма п<strong>е</strong>р<strong>е</strong>да<strong>е</strong>т ссылку на<br />
м<strong>е</strong>тод MokCallBackQ о Ь <strong>е</strong>кт у<br />
Mole, что позволя<strong>е</strong>т мол« вызывать<br />
данный м<strong>е</strong>тод.<br />
М О Л & опр<strong>е</strong>д<strong>е</strong>ля<strong>е</strong>т свой<br />
д<strong>е</strong>л<strong>е</strong>гат и и сп о льзу<strong>е</strong>т <strong>е</strong>го<br />
для задания закры т ого<br />
поля, в кот ором буд<strong>е</strong>т<br />
хранит ся ссылка на м<strong>е</strong>-^<br />
mod в форм<strong>е</strong>, м<strong>е</strong>няющий<br />
цв<strong>е</strong>т кнопок.<br />
Создав новый экз<strong>е</strong>мпляр объ<strong>е</strong>кта Mole,<br />
\ форма п<strong>е</strong>р<strong>е</strong>да<strong>е</strong>т конструктору в ка-<br />
\ ч<strong>е</strong>ств<strong>е</strong> парам<strong>е</strong>тра ссылку на м<strong>е</strong>тод<br />
MoleCallBackQ. Эта строка в конструктор<strong>е</strong><br />
копиру<strong>е</strong>т ссылку в пол<strong>е</strong><br />
popUpCal back. М<strong>е</strong>тоды конструктора<br />
при помощи этого поля м о <br />
гут вызывать м<strong>е</strong>тод MoleCallBackQ<br />
в форм<strong>е</strong>.<br />
V — Когда м о ль показы ва<strong>е</strong>т ся, пря<br />
ч <strong>е</strong> т с я или оказы ва<strong>е</strong>т ся у д и -<br />
т Т 1 объ<strong>е</strong>кт ^о1<strong>е</strong> и % о л ^<br />
д<strong>е</strong>л<strong>е</strong>гат рорирСаНЬаск °<br />
зова м <strong>е</strong>т ода, м <strong>е</strong>няю щ <strong>е</strong>го цб<strong>е</strong><br />
и т <strong>е</strong> к с т к н о п о к ф о р м ы .<br />
524 глава 11