zoukankan      html  css  js  c++  java
  • wxWidgets:简单消息处理

    早期的wxWidgets使用类似MFC的方式进行消息处理;在新版中这种映射方式仍然得以保留。

    在MyFrame.h中添加:

    private:
        void OnQuitButton(wxCommandEvent &event);
        wxDECLARE_EVENT_TABLE();

    OnQuitButton是事件处理函数,我们用它来处理按键消息。该函数接受一个wxCommandEvent引用参数。

    wxDECLARE_EVENT_TABLE()表示我们将会在该类中处理一些消息。最好将该语句放在类的最后:它会改变成员访问类型。

    消息处理函数返回void类型。

    在MyFrame.cpp中添加:

    复制代码
    void MyFrame :: OnQuitButton(wxCommandEvent &event)
    {
        Close(true);
    }
    
    wxBEGIN_EVENT_TABLE(MyFrame, wxFrame)
        EVT_BUTTON(ID_BUTTON_QUIT, MyFrame::OnQuitButton)
    wxEND_EVENT_TABLE()
    复制代码

    我们使用wxBEGIN_EVENT_TABLE(MyFrame, wxFrame)和wxEND_EVENT_TABLE()来定义消息映射表。

    宏wxBEGIN_EVENT_TABLE的两个参数中,MyFrame表示用于处理消息的函数所在的class;wxFrame表示MyFrame处理不了的消息将由wxFrame处理。

    EVT_BUTTON给Tool指定消息处理函数。EVT_BUTTON宏的第一参数是你自己定义的Tool ID,在某个enum中从1开始指定;第二参数就是你的消息处理函数。

    在该消息处理函数中,我们关闭窗口。wxApp Framework检测到所有窗口已关闭后退出App。

  • 相关阅读:
    74HC165并转串级联芯片学习记录
    道砟电阻 钢轨阻抗 列车分路电阻
    电压的有效值、平均值与峰值
    铁路信号继电器
    C语言语法记录
    程序编译过程中错误记录
    min-max容斥
    矩阵树定理
    题解 SP1812 【LCS2
    杜教筛
  • 原文地址:https://www.cnblogs.com/wuyuxin/p/7002385.html
Copyright © 2011-2022 走看看