七、wxWidgets事件之静态事件表

一、main.h

#include <wx/wx.h>

class MyApp:public wxApp
{
public:
    virtual bool OnInit();
};
 

二、main.cpp

#include "main.h"
#include "MyFrame.h"

wxIMPLEMENT_APP(MyApp);

bool MyApp::OnInit()
{
    MyFrame *frame = new MyFrame("my frame");
    frame->Show(true);

    return true;

}
 

三、myframe.h

class MyFrame:public wxFrame
{
public:
    MyFrame(const wxString &title);
protected:
    void OnExit(wxCommandEvent &event);//1 用作静态绑定示例

private:
    wxDECLARE_EVENT_TABLE();//2 声明静态事件表的

};

四、myframe.cpp

#include <wx/wx.h>
#include "myframe.h"

// 3 静态事件表的声明
wxBEGIN_EVENT_TABLE(MyFrame,wxFrame)
    EVT_BUTTON(wxID_EXIT,MyFrame::OnExit)
wxEND_EVENT_TABLE()


MyFrame::MyFrame(const wxString &title)
    :wxFrame(NULL,wxID_ANY,title,wxDefaultPosition,wxSize(200,150))
{
    wxPanel *panel = new wxPanel(this,wxID_ANY,wxDefaultPosition,wxSize(100,100));


    //*** 4事件静态绑定按钮 ***
    wxButton *btnExit = new wxButton;
    btnExit->Create(panel,wxID_EXIT,"Exit"
                    ,wxPoint(0,button->GetPosition().y + button->GetSize().GetHeight())
            );
 

    Centre();

}
 

void MyFrame::OnExit(wxCommandEvent &event)
{
    Close(true);
}
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值