📄 game.cpp.html
字号:
117: <i><font color=#9A1900> Constructs a clock window.</font></i>
118: <i><font color=#9A1900> @param parent the parent window</font></i>
119: <i><font color=#9A1900> */</font></i>
120: <b><font color=#000000>ClockWindow</font></b><font color=#990000>(</font>wxWindow<font color=#990000>*</font> parent<font color=#990000>)</font><font color=#990000>;</font>
121: <i><font color=#9A1900>/**</font></i>
122: <i><font color=#9A1900> Sets the time of the clock and repaints it.</font></i>
123: <i><font color=#9A1900> @param h the hours</font></i>
124: <i><font color=#9A1900> @param m the minutes</font></i>
125: <i><font color=#9A1900> */</font></i>
126: <font color=#009900>void</font> <b><font color=#000000>set_time</font></b><font color=#990000>(</font><font color=#009900>int</font> h<font color=#990000>,</font> <font color=#009900>int</font> m<font color=#990000>)</font><font color=#990000>;</font>
127: <i><font color=#9A1900>/**</font></i>
128: <i><font color=#9A1900> Paints the clock.</font></i>
129: <i><font color=#9A1900> @param event the event descriptor</font></i>
130: <i><font color=#9A1900> */</font></i>
131: <font color=#009900>void</font> <b><font color=#000000>OnPaint</font></b><font color=#990000>(</font>wxPaintEvent<font color=#990000>&</font> event<font color=#990000>)</font><font color=#990000>;</font>
132: <b><font color=#0000FF>private</font></b><font color=#990000>:</font>
133: Clock clock<font color=#990000>;</font>
134: <b><font color=#000000>DECLARE_EVENT_TABLE</font></b><font color=#990000>(</font><font color=#990000>)</font>
135: <font color=#FF0000>}</font><font color=#990000>;</font>
136:
137: <i><font color=#9A1900>/**</font></i>
138: <i><font color=#9A1900> The frame that contains the clock window and the</font></i>
139: <i><font color=#9A1900> fields for entering a guess.</font></i>
140: <i><font color=#9A1900>*/</font></i>
141: <b><font color=#0000FF>class</font></b> GameFrame <font color=#990000>:</font> <b><font color=#0000FF>public</font></b> wxFrame
142: <font color=#FF0000>{</font>
143: <b><font color=#0000FF>public</font></b><font color=#990000>:</font>
144: <i><font color=#9A1900>/**</font></i>
145: <i><font color=#9A1900> Constructs the game frame.</font></i>
146: <i><font color=#9A1900> */</font></i>
147: <b><font color=#000000>GameFrame</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
148:
149: <i><font color=#9A1900>/**</font></i>
150: <i><font color=#9A1900> Starts a new round, with a new clock time.</font></i>
151: <i><font color=#9A1900> */</font></i>
152: <font color=#009900>void</font> <b><font color=#000000>new_round</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
153: <i><font color=#9A1900>/**</font></i>
154: <i><font color=#9A1900> Processes the player's guess.</font></i>
155: <i><font color=#9A1900> @param event the event descriptor</font></i>
156: <i><font color=#9A1900> */</font></i>
157: <font color=#009900>void</font> <b><font color=#000000>OnGuess</font></b><font color=#990000>(</font>wxCommandEvent<font color=#990000>&</font> event<font color=#990000>)</font><font color=#990000>;</font>
158: <i><font color=#9A1900>/**</font></i>
159: <i><font color=#9A1900> Prompts the player to enter a name.</font></i>
160: <i><font color=#9A1900> @param event the event descriptor</font></i>
161: <i><font color=#9A1900> */</font></i>
162: <font color=#009900>void</font> <b><font color=#000000>OnPlayerName</font></b><font color=#990000>(</font>wxCommandEvent<font color=#990000>&</font> event<font color=#990000>)</font><font color=#990000>;</font>
163: <i><font color=#9A1900>/**</font></i>
164: <i><font color=#9A1900> Prompts the player to enter a level.</font></i>
165: <i><font color=#9A1900> @param event the event descriptor</font></i>
166: <i><font color=#9A1900> */</font></i>
167: <font color=#009900>void</font> <b><font color=#000000>OnPlayerLevel</font></b><font color=#990000>(</font>wxCommandEvent<font color=#990000>&</font> event<font color=#990000>)</font><font color=#990000>;</font>
168: <b><font color=#0000FF>private</font></b><font color=#990000>:</font>
169: ClockWindow<font color=#990000>*</font> window<font color=#990000>;</font>
170: wxTextCtrl<font color=#990000>*</font> hour_text<font color=#990000>;</font>
171: wxTextCtrl<font color=#990000>*</font> minute_text<font color=#990000>;</font>
172: Player player<font color=#990000>;</font>
173: <font color=#009900>int</font> current_hours<font color=#990000>;</font>
174: <font color=#009900>int</font> current_minutes<font color=#990000>;</font>
175: <font color=#009900>int</font> tries<font color=#990000>;</font>
176: <b><font color=#000000>DECLARE_EVENT_TABLE</font></b><font color=#990000>(</font><font color=#990000>)</font>
177: <font color=#FF0000>}</font><font color=#990000>;</font>
178:
179: <i><font color=#9A1900>/**</font></i>
180: <i><font color=#9A1900> The clock game application.</font></i>
181: <i><font color=#9A1900>*/</font></i>
182: <b><font color=#0000FF>class</font></b> GameApp <font color=#990000>:</font> <b><font color=#0000FF>public</font></b> wxApp
183: <font color=#FF0000>{</font>
184: <b><font color=#0000FF>public</font></b><font color=#990000>:</font>
185: <i><font color=#9A1900>/**</font></i>
186: <i><font color=#9A1900> Constructs the application.</font></i>
187: <i><font color=#9A1900> */</font></i>
188: <b><font color=#000000>GameApp</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
189: <b><font color=#0000FF>virtual</font></b> <font color=#009900>bool</font> <b><font color=#000000>OnInit</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
190: <b><font color=#0000FF>private</font></b><font color=#990000>:</font>
191: GameFrame<font color=#990000>*</font> frame<font color=#990000>;</font>
192: <font color=#FF0000>}</font><font color=#990000>;</font>
193:
194: <b><font color=#000000>DECLARE_APP</font></b><font color=#990000>(</font>GameApp<font color=#990000>)</font>
195:
196: <b><font color=#000000>IMPLEMENT_APP</font></b><font color=#990000>(</font>GameApp<font color=#990000>)</font>
197:
198: <b><font color=#000000>BEGIN_EVENT_TABLE</font></b><font color=#990000>(</font>ClockWindow<font color=#990000>,</font> wxWindow<font color=#990000>)</font>
199: <b><font color=#000000>EVT_PAINT</font></b><font color=#990000>(</font>ClockWindow<font color=#990000>:</font><font color=#990000>:</font>OnPaint<font color=#990000>)</font>
200: <b><font color=#000000>END_EVENT_TABLE</font></b><font color=#990000>(</font><font color=#990000>)</font>
201:
202: <b><font color=#000000>BEGIN_EVENT_TABLE</font></b><font color=#990000>(</font>GameFrame<font color=#990000>,</font> wxFrame<font color=#990000>)</font>
203: <b><font color=#000000>EVT_BUTTON</font></b><font color=#990000>(</font>ID_GUESS<font color=#990000>,</font> GameFrame<font color=#990000>:</font><font color=#990000>:</font>OnGuess<font color=#990000>)</font>
204: <b><font color=#000000>EVT_MENU</font></b><font color=#990000>(</font>ID_PLAYER_NAME<font color=#990000>,</font> GameFrame<font color=#990000>:</font><font color=#990000>:</font>OnPlayerName<font color=#990000>)</font>
205: <b><font color=#000000>EVT_MENU</font></b><font color=#990000>(</font>ID_PLAYER_LEVEL<font color=#990000>,</font> GameFrame<font color=#990000>:</font><font color=#990000>:</font>OnPlayerLevel<font color=#990000>)</font>
206: <b><font color=#000000>END_EVENT_TABLE</font></b><font color=#990000>(</font><font color=#990000>)</font>
207:
208: <i><font color=#9A1900>/**</font></i>
209: <i><font color=#9A1900> Sets the seed of the random number generator.</font></i>
210: <i><font color=#9A1900>*/</font></i>
211: <font color=#009900>void</font> <b><font color=#000000>rand_seed</font></b><font color=#990000>(</font><font color=#990000>)</font>
212: <font color=#FF0000>{</font>
213: <font color=#009900>int</font> seed <font color=#990000>=</font> <b><font color=#000000>static_cast</font></b><font color=#FF0000><int></font><font color=#990000>(</font><b><font color=#000000>time</font></b><font color=#990000>(</font><font color=#993399>0</font><font color=#990000>)</font><font color=#990000>)</font><font color=#990000>;</font>
214: <b><font color=#000000>srand</font></b><font color=#990000>(</font>seed<font color=#990000>)</font><font color=#990000>;</font>
215: <font color=#FF0000>}</font>
216:
217: <i><font color=#9A1900>/**</font></i>
218: <i><font color=#9A1900> Returns a random integer in a range.</font></i>
219: <i><font color=#9A1900> @param a the bottom of the range</font></i>
220: <i><font color=#9A1900> @param b the top of the range</font></i>
221: <i><font color=#9A1900> @return a random number x, a <= x and x <= b</font></i>
222: <i><font color=#9A1900>*/</font></i>
223: <font color=#009900>int</font> <b><font color=#000000>rand_int</font></b><font color=#990000>(</font><font color=#009900>int</font> a<font color=#990000>,</font> <font color=#009900>int</font> b<font color=#990000>)</font>
224: <font color=#FF0000>{</font>
225: <b><font color=#0000FF>return</font></b> a <font color=#990000>+</font> <b><font color=#000000>rand</font></b><font color=#990000>(</font><font color=#990000>)</font> <font color=#990000>%</font> <font color=#990000>(</font>b <font color=#990000>-</font> a <font color=#990000>+</font> <font color=#993399>1</font><font color=#990000>)</font><font color=#990000>;</font>
226: <font color=#FF0000>}</font>
227:
228: Clock<font color=#990000>:</font><font color=#990000>:</font><b><font color=#000000>Clock</font></b><font color=#990000>(</font><font color=#009900>int</font> x<font color=#990000>,</font> <font color=#009900>int</font> y<font color=#990000>,</font> <font color=#009900>int</font> r<font color=#990000>)</font>
229: <font color=#FF0000>{</font>
230: centerx <font color=#990000>=</font> x<font color=#990000>;</font>
231: centery <font color=#990000>=</font> y<font color=#990000>;</font>
232: radius <font color=#990000>=</font> r<font color=#990000>;</font>
233: <font color=#FF0000>}</font>
234:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -