包含wxWidgets的头文件。可以单个文件(例如wx/window.h),或者使用一个全局包(wx/wx.h),它包含了大多数通常需要的头文件(不是所有的头文件)。
每个应用程序都应该定义一个派生自wxApp的新类。通过重写wxApp的OnInit()虚拟方法,程序可以被初始化,例如通过创建一个新的主窗口。

#include <wx/wxprec.h>
#ifndef WX_PRECOMP#include <wx/wx.h>
#endif// application class
class wxMiniApp : public wxApp
{public:// function called at the application initializationvirtual bool OnInit();};

通过从wxFrame派生一个类并在其构造函数中给它一个菜单和一个状态栏来创建主窗口。
希望响应事件的类(例如鼠标单击或来自菜单或按钮的消息)必须使用下面的宏声明一个事件表。


wxDECLARE_EVENT_TABLE();

最后,必须在处理方法中处理这些事件。处理方法既不需要是虚拟的,也不需要是公共的。

class MyFrame: public wxFrame
{public:MyFrame(const wxString& title, const wxPoint& pos, const wxSize& size);
private:void OnHello(wxCommandEvent& event);void OnExit(wxCommandEvent& event);void OnAbout(wxCommandEvent& event);wxDECLARE_EVENT_TABLE();
};

必须给对菜单命令它一个惟一的标识符为,这个标识符可以定义为const变量或enum元素。

enum
{ID_Hello = 1
};

wxWidgets随笔(1)-hello,world相关推荐

  1. wxWidgets随笔(10)-fedora环境配置

    1.wxwidgets安装 sudo yum install wxGTK-devel sudo dnf install wxGTK wxGTK-devel wxGTK-gl wxBase wxsvg ...

  2. wxWidgets随笔(13)-wxBoxSizer类Basic Box Sizer(2)

    Add()的第一个参数显然是要添加的wxWindow或wxSizer.第二个选项在文档中以"option"的形式出现,但是用"proportion"可能更好.这 ...

  3. wxWidgets随笔(11)-wxFrame类

    wxFrame类是一个窗口,它的大小和位置(通常)可以由用户更改. 它通常有粗粗的边框和标题栏,还可以包含菜单栏.工具栏和状态栏.框架可以包含任何不是框架或对话框的窗口. 通过CreateStatus ...

  4. wxWidgets随笔(10)-wxApp类

    当wxUSE_GUI=1时,wxApp类表示应用程序本身. 除了wxAppConsole提供的功能外,它还跟踪顶部窗口(请参阅SetTopWindow())并增加对视频模式的支持(请参阅SetVide ...

  5. wxWidgets随笔(9)-utf8~wxString存储二进制数据(4)

    使用wxString存储二进制数据 可以使用函数wxString::To8BitData和wxString::From8BitData来存储二进制数据(即使它包含空值). 注意,即使允许使用NUL字符 ...

  6. wxWidgets随笔(7)-utf8中文(3)

    wxMessageBox("Hello, world!"); wxMessageBox(L"Salut \u00E0 toi!"); // U+00E0 is ...

  7. wxWidgets随笔(6)-utf8中文(2)

    当使用Microsoft Visual c++时不能编译,需要更改为使用mb_str()(这对于包含Unicode字符的文件名无效,请考虑使用wxWidgets类和函数来处理这些文件名,因为标准c++ ...

  8. wxWidgets随笔(5)-utf8中文(1)

    在wxWidgets 3.0中对Unicode的支持已经发生了根本的变化,很多与以前版本的库相关的现有资料已经不再正确. 臭名昭著的宏wxT()和_T()不再需要了.基本上,您可以从任何使用它们的代码 ...

  9. wxWidgets随笔(4)-hello,world

    wxApp::OnInit()在启动时调用,应该用于初始化程序,可能会显示"闪屏"并创建主窗口(或多个).框架应该得到一个标题栏文本("Hello World" ...

  10. wxWidgets随笔(3)-hello,world

    不需要为"About"和"Exit"定义标识符.然后,我们实际实现一个事件表,其中的事件被路由分配到类MyFrame中各自的处理函数. 有预定义的宏用于路由分配 ...

最新文章

  1. 错误linux autocof.h,【技巧】一种提高 [ 定位Linux内核编译错误 ] 效率的方法
  2. adb push和pull使用
  3. ubuntu装机必备
  4. python gc内存_禁用 Python GC,Instagram 性能提升10%
  5. C++ 注册表取值 按行读取txt文件 时间差天数 格林威治时间转标准时间
  6. 【转】C++一次读取整个文件
  7. golang grpc demo
  8. 2018.09.15 vijos1053Easy sssp(最短路)
  9. VC2010运行C程序时黑框一闪就没
  10. 盲人编程_帮助盲人学习编码
  11. LeetCode--11.盛最多的水(双指针,暴力)
  12. Linux下MySQL server和client安装
  13. linux vmware 服务,学习笔记:在Linux虚拟机上搭建node服务
  14. 使用kindeditor直接粘贴本地图片或者是qq截图
  15. 关于流式计算和Excel的练习题
  16. 占优策略名词解释_占优策略均衡
  17. 神经网络之父Hinton介绍及其论文介绍
  18. Kaggle所有量化金融竞赛汇总。
  19. 哲理故事与管理之道(22)-用竞争激励下属
  20. 学习JQuery - 10

热门文章

  1. xshell上vim小键盘无法使用的解决方法
  2. notepad++默认的快捷键整理
  3. 不信任的 .exe 怎么办,用 Windows 沙盒啊!
  4. 20161104面试题-面试常问问题
  5. Hacker News与Reddit的算法比较
  6. “注册编辑已被管理员停用”之解决办法
  7. DataGrid/DataList在ASP.NET中应用
  8. java创建日程到期提醒_Mac用户必备日程时间管理器,有计划有效率的人生才算完美!...
  9. MATLAB R2021a v9.10 for win 最新无限制中英文完美版 数据处理软件
  10. 计算机说课如何做课件ppt,《我的新工具——计算机》说课课件.ppt