如何使用wxEvtHandler :: Connect将wxWidgets计时器连接到事件

xeo*_*111 5 c++ wxwidgets

我一直试图将我的计时器连接到一个函数.在我的派生类中,我在做什么

Timer->SetOwner(this,wxID_Timer);
Timer->Connect(wxID_Timer,wxTimerEventHandler( Window::OnUpdate ), NULL, this );
Run Code Online (Sandbox Code Playgroud)

我的OnUpdate声明在哪里

void OnUpdate( wxTimerEvent& event );
Run Code Online (Sandbox Code Playgroud)

任何人都可以告诉我这里有什么问题,为什么在我启动计时器后没有定期调用OnUpdate?谢谢,麻烦您了.

另外我没有使用静态事件表.关于wxTimer的其他答案对我没有帮助.

xeo*_*111 7

经过一番搜索,我确实找到了答案,没有人回答,所以我在这里发帖.有一些事情我做错了.一世.我实际上必须将班级连接到我的计时器.这意味着我必须做类似的事情

this->Connect(Timer.GetId(),wxEVT_TIMER,wxTimerEventHandler( Window::OnUpdate ), NULL, this );
Run Code Online (Sandbox Code Playgroud)

其中wxEVT_TIMER是事件类型.

同样断开连接

this->Disconnect(wxID_Timer,wxEVT_TIMER,wxTimerEventHandler( Window::OnUpdate ), NULL, this );
Run Code Online (Sandbox Code Playgroud)