wxWidgets框架例子

ContractedBlock.gif ExpandedBlockStart.gif Code
 1#include "wx/wx.h"
 2
 3// 定义应用程序类
 4class MyApp : public wxApp
 5ExpandedBlockStart.gifContractedBlock.gif{
 6public:
 7    virtual bool OnInit();
 8}
;
 9
10// 定义主窗口类
11class MyFrame : public wxFrame
12ExpandedBlockStart.gifContractedBlock.gif{
13public:
14    // 主窗口类的构造函数
15    MyFrame(const wxString& title);
16
17    // 事件处理函数
18    void OnQuit(wxCommandEvent& event);
19    void OnAbout(wxCommandEvent& event);
20
21private:
22    // 声明事件表
23    DECLARE_EVENT_TABLE()
24}
;
25
26// 有了这一行就可以使用 MyApp& wxGetApp()了
27DECLARE_APP(MyApp)
28
29// 告诉wxWidgets主应用程序是哪个类
30IMPLEMENT_APP(MyApp)
31
32// 初始化程序
33bool MyApp::OnInit()
34ExpandedBlockStart.gifContractedBlock.gif{
35    // 创建主窗口
36    MyFrame *frame = new MyFrame(wxT("Minimal wxWidgets App"));
37
38    // 显示主窗口
39    frame->Show(true);
40
41    // 开始事件处理循环
42    return true;
43}

44
45// MyFrame类的事件表
46BEGIN_EVENT_TABLE(MyFrame, wxFrame)
47    EVT_MENU(wxID_ABOUT, MyFrame::OnAbout)
48    EVT_MENU(wxID_EXIT,  MyFrame::OnQuit)
49END_EVENT_TABLE()
50
51void MyFrame::OnAbout(wxCommandEvent& event)
52ExpandedBlockStart.gifContractedBlock.gif{
53    wxString msg;
54    msg.Printf(wxT("Hello and welcome to %s"),
55               wxVERSION_STRING);
56
57    wxMessageBox(msg, wxT("About Minimal"),
58                 wxOK | wxICON_INFORMATION, this);
59}

60
61void MyFrame::OnQuit(wxCommandEvent& event)
62ExpandedBlockStart.gifContractedBlock.gif{
63    // 释放主窗口
64    Close();
65}

66
67//#include "mondrian.xpm"
68//
69#include "sample.xpm"
70
71MyFrame::MyFrame(const wxString& title)
72       : wxFrame(NULL, wxID_ANY, title)
73ExpandedBlockStart.gifContractedBlock.gif{
74    // 设置窗口图标
75    //SetIcon(wxIcon(mondrian_xpm));
76
77    // 创建菜单条
78    wxMenu *fileMenu = new wxMenu;
79
80    // 添加“关于”菜单项
81    wxMenu *helpMenu = new wxMenu;
82    helpMenu->Append(wxID_ABOUT, wxT("&About\tF1"),
83                     wxT("Show about dialog"));
84
85    fileMenu->Append(wxID_EXIT, wxT("E&xit\tAlt-X"),
86                     wxT("Quit this program"));
87
88    // 将菜单项添加到菜单条中
89    wxMenuBar *menuBar = new wxMenuBar();
90    menuBar->Append(fileMenu, wxT("&File"));
91    menuBar->Append(helpMenu, wxT("&Help"));
92
93    // 然后将菜单条放置在主窗口上
94    SetMenuBar(menuBar);
95
96    // 创建一个状态条来让一切更有趣些。
97    CreateStatusBar(2);
98    SetStatusText(wxT("欢迎使用wxWidgets!"));
99}

转载于:https://www.cnblogs.com/93797743/archive/2009/02/23/1396671.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值