【wxWidgets】wxWidgets特点概览
来源:互联网 发布:出奇制胜高考英语软件 编辑:程序博客网 时间:2024/06/06 17:01
【wxWidgets】wxWidgets特点概览
tkorays(http://blog.csdn.net/tkorays)
坚持。
这里简单介绍下wxWidgets程序的一些特点,这对如何编写一个使用wxWidgets的程序是很有帮助的。
要创建一个wxWidgets程序,必须要写一个继承自wxApp的类,并且实现wxApp::OnInit方法。这里的入口函数不是main,而是用wxApp::OnInit。
然后,创建一个顶层窗口,这个窗口可以继承自wxFrame或者wxDialog,每个窗口里面可以包含很多的其他窗口或空间,比如wxPanel、wxSplitterWindow。一个Frame可以包含一个菜单栏(wxMenuBar)、一个工具栏(wxToolBar)、一个状态栏(wxStatusBar)、以及图标(wxIcon)。
用户不会直接在窗口上绘图,而是通过设备上下文(device context,DC)来绘制。wxDC是wxClientDC、wxPaintDC、wxMemoryDC、wxPostScriptDC、wxMetafileDC以及wxPrinterDC的基类。当使用的函数参数为wxDC时,你可以传入以上任意一个子类,他们具有和父类相同的接口。
wxWidgets里面的事件实现可以通过DECLARE_EVENT_TABLE宏来实现(当然也可以直接通过一些函数来实现)。你可以在一个类的声明里面像添加成员函数一样添加一句DECLARE_EVENT_TABLE(),然后再在实现中以BEGIN_EVENT_TABLE开头,以END_EVENT_TABLE结尾,中间添加一些事件。其实本质上,DECLARE_EVENT_TABLE是给这个类添加了一个事件处理函数,而BEGIN_EVENT_TABLE和END_EVENT_TABLE以及中间的语句即这个函数的实现。
下面这是类的定义:
/// @file mainwindow.hclass MainWindow : public wxFrame {public:private:void OnExit(wxCommandEvent& event);void OnAbout(wxCommandEvent& event);void OnTimer(wxTimerEvent& event);void OnClose(wxCloseEvent& event);wxDECLARE_EVENT_TABLE();};
类的实现里面添加这些:
wxBEGIN_EVENT_TABLE(MainWindow,wxFrame)EVT_TOOL(MainWindow::ID_TOOL_EXIT,MainWindow::OnExit)EVT_TOOL(MainWindow::ID_TOOL_START,MainWindow::OnStart)EVT_CLOSE(MainWindow::OnClose)wxEND_EVENT_TABLE()
- 【wxWidgets】wxWidgets特点概览
- wxWidgets
- wxwidgets
- wxWidgets
- wxWidgets
- wxWidgets
- wxWidgets
- wxWidgets
- MFC、WTL、WPF、wxWidgets、Qt、GTK 各有什么特点
- MFC、WTL、WPF、wxWidgets、Qt、GTK 各有什么特点?
- Why wxWidgets?
- wxWidgets介绍
- WxWidgets 初探
- wxWidgets介绍
- wxWidgets notepad
- wxWidgets初识
- CodeBlocks+wxWidgets
- wxwidgets问题解决
- Android系统自带屏幕录像
- Oracle学习(四):组函数
- hive实践(一)安装篇
- 解决Ubuntu下安装VMware错误could not open /dev/vmmon
- cmp指令at&t汇编简单例子注解
- 【wxWidgets】wxWidgets特点概览
- Spark1.0.0 属性配置
- Android之实现遮罩动画的小技巧 类似flash遮罩动画
- 关于struts.xml的dtd错误提示
- 关于UIButton和UIImageView共存的问题
- ios开发学习笔记(这里一定有你想要的东西,全部免费)
- version和build
- dumpbin的命令
- 第八章作业