Je ne peux pas arrêter le wxTimer avec Stop()
Normalement quand je tape Espace le timer s'arrête, le wxMessageBox s'affiche mais le timervne s'arrête pas. Je n'y comprends rien.
myPanel dérive de wxPanel. j'utilise wx2.8.0
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
void C8Panel::NewGame ()
{
running = true;
myTimer.Start(50);
}
void myPanel::OnKeyDown(wxKeyEvent &event)
{
switch (event.GetKeyCode())
{
case WXK_SPACE:
wxMessageBox("espace tapé");
myTimer.Stop();
break;
default:
event.Skip();
break;
}
}
void myPanel::OnTimer(wxTimerEvent& event)
{
for (int i=0; i<20; i++)
{
//Do something
}
Refresh();
} |