wxWidgets学习笔记(二):使用wxFormBuilder、wxWidgets和Code::Blocks创建GUI程序

来源:互联网 发布:ubuntu apache服务器 编辑:程序博客网 时间:2024/05/17 08:02

一、开发环境

  • 操作系统:Fedora 23
  • 集成开发环境:Code::Blocks 16.01
  • G++版本:5.3.1
  • GTK+版本:2.24.30(使用命令sudo dnf install gtk2 gtk2-devel gtk2-devel-docs安装)
  • wxWidgets版本:3.1.0(解压源码包后进入顶层目录依次输入./configuremakesudo make install三条命令)
  • wxFormBuilder版本:3.1.70-33.1(到pkg.org下载并安装)

二、使用wxFormBuilder创建窗口类

  1. 打开wxFormBuilder,wxFormBuilder会自动新建一个工程,然后在屏幕右侧的对象偏好栏里修改并填写好工程名、文件名(这决定了后面wxFormBuilder生成的C++文件名):
    修改好工程名称、文件名称

  2. 在屏幕中间控件面板的Forms栏中点击Dialog按钮(左数第三个)新建一个Dialog窗口:
    新建一个Dialog窗口

  3. 在屏幕右侧的对象偏好栏Events栏中的OnClose后填上“OnClose”,表明处理该窗口OnClose事件的事件处理函数的函数名为“OnClose”:
    填写处理该窗口OnClose事件的事件处理函数的函数名

  4. 在屏幕中间控件面板的Layout栏中点击wxBoxSizer按钮(左数第一个)新建一个Sizer:
    新建一个Sizer

  5. 在屏幕中间控件面板的Common栏中点击wxStaticText按钮(左数第三个)新建一个静态文本:
    新建一个静态文本

  6. 在屏幕右侧的对象偏好栏里修改好静态文本的内容(label):
    修改静态文本的内容

  7. 在屏幕中间控件面板的Common栏中点击wxButton按钮(左数第一个)新建一个按钮:
    新建一个按钮

  8. 在屏幕右侧的对象偏好栏里修改好按钮的内容(label):
    修改按钮的内容

  9. 在屏幕右侧的对象偏好栏Events栏中的OnButtonClick后填上“OnQuit”,表明处理该按钮OnButtonClick事件的事件处理函数的函数名为“OnQuit”:
    填写处理该按钮OnButtonClick事件的事件处理函数的函数名

  10. 点击工具栏上的垂直居中按钮按钮使按钮和静态文本垂直居中;

  11. 保存工程,点击工具栏上的生成C++源代码文件按钮在保存工程的路径下生成类的C++源代码文件:
    生成类的C++源代码文件

  12. 点击菜单栏上的Tools菜单中的生成派生类的菜单项,生成派生类的C++源代码文件:
    生成派生类的C++源代码文件

三、使用Code::Blocks创建wxWidgets工程

  1. 使用Code::Blocks创建一个wxWidgets工程,关键步骤如下图:
    新建wxWidgets工程
    选择GUI构建器与应用程序类型
    勾选创建空工程
  2. 将刚刚由wxFormBuilder生成的四个文件添加进工程:
    将刚刚由wxFormBuilder生成的四个文件添加进工程
  3. 使用Code::Blocks新建一个wxApp派生类:
    使用Code::Blocks新建一个wxApp派生类
  4. 在TestApp类中增加virtual bool OnInit();虚函数:
    在TestApp类中增加OnInit虚函数

  5. 在testapp.cpp文件中增加包含HelloMyDialog.h头文件的预编译指令,增加启动TestApp类的IMPLEMENT_APP(TestApp);宏,并且实现OnInit函数:

bool TestApp::OnInit(){    HelloMyDialog* dialog = new HelloMyDialog(0L);    dialog->Show();    return true;}

在testapp.cpp文件中实现OnInit函数
6. 在HelloMyDialog.cpp文件中重载OnClose和OnQuit两个事件处理函数,增加Destroy();注销窗口的语句;
重载事件处理函数
7. 编译并运行:
运行结果

0 0
原创粉丝点击