有两个按钮的wxWidgets小程序

/*
*程序的版权和版本声明部分:
*Copyright(c)2014,烟台大学计算机学院学生
*All rights reserved.
*文件名称:
*作者:田成琳
*完成日期:2014 年 5 月 23 日
*版本号:v1.0
*对任务及求解方法的描述部分:
*输入描述: -
*问题描述:初体验wxWidgets
*程序输出:一个简单的小窗口,含有两个按钮
*问题分析:
*算法设计:
*/
#include<wx/wx.h>
class Button : public wxFrame
{
public:
    Button(const wxString& title);
    void OnSayHello(wxCommandEvent &event);
    void OnQuit(wxCommandEvent & event);
};
Button::Button(const wxString& title)
    :wxFrame(NULL,wxID_ANY,title,wxDefaultPosition,wxSize(250,150))
{
    //首先创建一个wxpanel部件。它将被放置在一个wxframe部件。
    wxPanel *panel = new wxPanel(this,wxID_ANY);
    wxButton *button = new wxButton(panel,wxID_EXIT,wxT("Quit"),wxPoint(120,70));
    wxButton *nbutton = new wxButton(panel,wxID_EDIT,wxT("SayHello"),wxPoint(20,70));
    Connect(wxID_EXIT,wxEVT_COMMAND_BUTTON_CLICKED,wxCommandEventHandler(Button::OnQuit));
    Connect(wxID_EDIT,wxEVT_COMMAND_BUTTON_CLICKED,wxCommandEventHandler(Button::OnSayHello));
    button->SetFocus();
    nbutton->SetFocus();
    Centre();
}
void Button::OnSayHello(wxCommandEvent & WXUNUSED(event))
{
    wxString str=wxT("Hello!");
    MessageBoxW(str);
}
void Button::OnQuit(wxCommandEvent & WXUNUSED(event))
{
    Close(true);
}
class MyApp:public wxApp
{
public:
    virtual bool OnInit();
};
IMPLEMENT_APP(MyApp)
DECLARE_APP(MyApp)
bool MyApp::OnInit()
{
    Button *newbutton = new Button(wxT("Button"));
    newbutton->Show(true);
    return true;
}


运行结果:

有两个按钮的wxWidgets小程序_第1张图片

心得体会:~~~

你可能感兴趣的:(有两个按钮的wxWidgets小程序)