/* *程序的版权和版本声明部分: *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; }
运行结果:
心得体会:~~~