wxWidgets界面设计工具DialogBlocks(转载)

wxWidgets界面设计工具DialogBlocks // * create by zyzx // * 2009-3-12 // * 转载请注明来源:http://www.cppblog.com/zyzx

工欲善其事,必先利其器。在MFC上开发,有VS系列强大的可视化工具,基于wx的开发工具虽然没有VS、QT的界面设计器强大,但在灵活度上VS的界面设计器是没法比的(QT的没有用过,不做评论)。          如果选择了wx库,了解几款基于其上的界面设计工具,会大大提高开发效率。

一、wx界面设计工具简介

官方建议的工具集合:http://wiki.wxwidgets.org/Tools

在刚开始的时候,我也尝试过几款工具(wxFormBuilder、wxDev-C++、wxDesigner等),但后来还是选择了DialogBlocks-4.18。对于这些工具的选择,各有特色。选择DialogBlocks,主要是因为其灵活度很大,当然缺点就是需要手工写代码来结合工具使用。但这点对于熟悉wx以后就不再是缺点,而是她最大的优点。

二、DialogBlocks简介

DialogBlocks官方主页:http://www.anthemion.co.uk/dialogblocks/

三、DialogBlocks入门向导

安装完成后,DialogBlocks有几个实例工程可以供大家参考。

1、新建HelloWorld工程

关闭这些后点击File->New Project进入工程向导。

点击Next进入下一个选择页面

Mode中有3个选项:          Generate for C++:表示工具并不生成*.xrc(xml格式文件)配置文件,直接将窗口的一些信息(比如样式、大小、是否可见等等)直接写在源代码中,用相应的标记区别,由工具来维护此段代码区域。如果手工破坏了标记信息,工具将无法识别。          Generate C++ for XRC:表示工具将窗口信息(…)写入相应的*.xrc配置文件中,代码块中只写加载这些配置的代码。这种方式十分适合,界面大小不一致,需灵活配置界面。代码块的事件关联每一个窗口控件唯一的ID。          Generate XRC only:表示不生成源代码,只生成*.xrc配置文件。更灵活的将代码和界面设计的配置文件分开。代码块只需要通过窗口控件ID来控制其行为。

后面一路next,默认选项即可。          保存工程得到HelloWorld\HelloWorld.pjd文件,以后只要从此文件打开即可。

2、新建主wxFrame或wxDialog

3、添加其他控件

修改启动的主Frame:Main window选项修改为HelloWorld Frame的ID编号。

3、添加其他控件

比如菜单、工具条、状态条、窗口里面的控件元素等等。

注意窗口元素不是随意添加的,必须先搞清楚wx的窗口元素之间的关系。比如:wxFrame/wxDialog直接包容wxMenuBar、wxToolBar、wxStatusBar,而wxTextCtrl、wxComboBox、wxStaticText等等最好建立在wxBoxSizer之内。             wxBoxSizer是wx的特色之一,它可以对其包含的控件进行自动调整。当然需要设定其自动调整属性。以上均使用默认的属性。

       四、HelloWorld的VS工程配置

完成以上部分就说明最基本的界面框架已经做好了。我们还需要新建基于Win32的空HelloWorld工程,将DialogBlocks生成的*.h *.cpp文件添加HelloWorld工程中去。

按照上一篇关于Win32部分的配置来设置本工程。

编译运行(别忘了把wx库的*.dll文件…)结果会报出wxWidgets Assert忽略即可,原因是上面建立的wxToolBar\Tool没有找到对应的图标,把图标添加进去并设定wx资源加载路径即可。

五、绑定控件事件控制

在DialogBlock中选中wxButton:ID_BUTTON1切换右边视图到Event handlers,点选BUTTON_CLICK事件,并保存。绑定事件有两种方式,DialogBlocks采用的是静态绑定的方式,还一种是采用动态绑定事件。

再找到HelloWorld类,并添加头文件#include <wx/msgdlg.h>            void HelloWorld::OnButton1Click( wxCommandEvent& event )             {                       wxMessageBox(wxT("Hello World!\r\n单击了Button1Click!"));              }

即可得到如下效果:

时间: 2024-08-06 03:41:21

wxWidgets界面设计工具DialogBlocks(转载)的相关文章

转载:21个免费的UI界面设计工具、资源及网站

我们刚刚介绍了移动设计初探:触屏网页设计.本文将介绍一些UI界面与设计使用的元素.软件和网站.内容很丰富,适合用户体验设计师.界面设计师.产品设计师.JS前段开发.手机产品设计以及iPad和平板电脑产品设计等使用. Lumzy 官方地址:http://www.lumzy.com/ Lumzy是一个网站应用和原型界面制作工具.使用Lumzy,您可以轻松创建UI模型并即时发送到客户电脑中. Lumzy还具有团队协作编辑工具. Mockingbird 官方地址:https://gomockingbir

Android:界面设计工具DroidDraw

DroidDraw是款强大的安卓界面设计软件,基于Java Swing开发,可以通过它拖动控件.设置层属性.设置颜色等步骤轻松地生成复杂的安卓XML布局文件. >>>>>>>>下载 Android:界面设计工具DroidDraw

Android原型界面设计工具

 第 1 页:原型界面制作工具Lumzy  第 2 页:在线工具Mockingbird  第 3 页:开源UI工具The Pencil Project  第 4 页:JS开发工具包Dojo  第 5 页:排版托管Mocklinkr  第 6 页:在线排版工具MockFlow  第 7 页:Serena Prototype Composer  第 8 页:在线绘图工具Cacoo  第 9 页:UI工具DENIM  第 10 页:网上应用线框Hot Gloo  第 11 页:User Interfa

Android的界面设计工具——DroidDraw

软件名称:DroidDraw 软件大小:489KB(Windows版本) 支持系统:Mac OS X/Windows/Linux 下载地址:http://code.google.com/p/droiddraw/ ADT中的界面开发工具实在是很烂,通常情况下都需要硬编码,对于程序员来说不但效率比较低下,而且调试起来极其不方便,还好在Google未推出GUI的“所见即所得”的工具之前,我们找到这款软件DroidDraw,这款软件采用Java开发而成. DroidDraw目前是一个公开的Google

【转载】好的用户界面-界面设计的一些技巧

如此有用的文章我已记不得是什么时候发现的了,但在看完的那一刻便想将之翻译,分享给大家自己也受用. 时间过了很久,来到了2014年,终于静下心来花了大把时间连同图片一起译成了中文.像我这样业余的翻译六级分数只够及格的程序员,不敢说做到信雅达,但求意思到位. 1 尽量使用单列而不是多列布局 单列布局能够让对全局有更好的掌控.同时用户也可以一目了然内容.而多列而已则会有分散用户注意力的风险使你的主旨无法很好表达.最好的做法是用一个有逻辑的叙述来引导用户并且在文末给出你的操作按钮. 2 放出礼品往往更具

好的用户界面-界面设计的一些技巧

原文地址:http://www.cnblogs.com/Wayou/p/goodui.html 如此有用的文章我已记不得是什么时候发现的了,但在看完的那一刻便想将之翻译,分享给大家自己也受用. 时间过了很久,来到了2014年,终于静下心来花了大把时间连同图片一起译成了中文.像我这样业余的翻译六级分数只够及格的程序员,不敢说做到信雅达,但求意思到位. 1 尽量使用单列而不是多列布局 单列布局能够让对全局有更好的掌控.同时用户也可以一目了然内容.而多列而已则会有分散用户注意力的风险使你的主旨无法很好

用户界面设计经验分享:界面设计技巧分享

如此有用的文章我已记不得是什么时候发现的了,但在看完的那一刻便想将之翻译,分享给大家自己也受用. 时间过了很久,来到了2014年,终于静下心来花了大把时间连同图片一起译成了中文.像我这样业余的翻译六级分数只够及格的程序员,不敢说做到信雅达,但求意思到位. 1 尽量使用单列而不是多列布局 单列布局能够让对全局有更好的掌控.同时用户也可以一目了然内容.而多列而已则会有分散用户注意力的风险使你的主旨无法很好表达.最好的做法是用一个有逻辑的叙述来引导用户并且在文末给出你的操作按钮. 2 放出礼品往往更具

一些关于界面设计的技巧

最近做项目有些忙,百忙之中老师让我给新生讲下界面设计的知识o(╯□╰)o(只因自己会小弄些PS戳我),这就尴尬了讲什么好呢?偶然间看到刘哇勇前辈翻译过这篇文章,但是发现前辈第40点以后就没译了.我就打算在前辈的翻译的基础上把剩下的部分给翻译完(自己英语不是特别好,所以就模糊翻译了),一来加深自己对设计的理解,二来到时也可以和朋友一起分享这篇文章.做好一名合格的程序员,我们应该有一些自己对设计的理解,这样我们大局观才能更加宽广. 1 尽量使用单列而不是多列布局 单列布局能够让对全局有更好的掌控.同

推荐几款软件界面模型设计工具

一:GUI Design Studio 界面模型设计中很实用的一个工具GUI Design Studio,可以让界面示意图实现基本的交互,便于演示.交流. GUI Design Studio提供的了大部分C/S.B/S组件的示意图,可组合使用,在一般软件界面模型设计阶段基本可以满足需要. 推荐需求.界面设计开发等界面原型相关人员使用. http://www.carettasoftware.com/gdsdownloads-v4.html 二.腾讯的UIDesigner 在软件设计阶段,交互设计师