GUI库:使本机应用程序具备Windows窗体的简易性
2010-10-15 09:07:42 来源:Web开发网每个失败的 GUI 操作都将触发异常。这样,您就知道出错了。在调试模式中,这将生成失败的声明,并且程序会中断调试模式。这比无提示地忽略错误好得多,因为这可以了解到有东西出错了(以可视的方式),然后可以查找该错误。
与 Visual Studio 2005 集成
Visual Studio 是出色的 IDE,它的一个主要优点是可以扩展。eGUI++ 利用了这个优点;它附带提供新建窗体类向导的加载项。它还提供了类似 Visual Basic 的栏,该栏使您可以在窗体上处理控件通知。要执行此操作,只需选择一个控件,然后查看该控件可以生成的通知的列表。请注意,已经处理的通知会以粗体显示;单击某事件,将添加一个处理程序(如果以前不存在此处理程序)— 请参见图 13 中的示例。
图 13 在窗体上处理控件通知
实质上,eGUI++ 会监视资源编辑器,以便在内容发生更改时可以更新 _form_resource.h 文件(如果需要)。它使用代码补全功能完成此任务,对此我已经进行了详细介绍。
实现行为
构建 GUI 后,下一步是实现行为和考虑数据绑定。很多窗体只用于收集数据。对于初学者来说,可以实现一个通用窗体类,该类在构建过程中获取要处理的数据并将其绑定到窗体的控件。然后,您可以指定一组用于验证数据的规则。在析构过程中,如果验证规则成功,则使用来自控件的值更新原始数据;否则,原始数据将保持不变。因此,对于每种新窗体,只需在资源编辑器中创建该窗体,然后指定用于验证数据的一组规则(与创建新的窗体类并复制逻辑的过程相对)。
展望未来,您可以将标准模板库 (STL) 数组和集合、列表控件和树控件联系起来。假设我拥有一个员工数组和一个列表控件。那么我可以将此数组绑定到该控件,如下所示:
list_ctrl->bind(employees);
您可能预料到了,这将更新列表控件。而且,列表控件单元格上的任何更改都会自动与员工数组同步。
我构建 eGUI++ 的目的是创建一个优良的库,以使 GUI 编程体验变得愉快。如果您是 C++ 编程人员,我非常希望您同意我这么说。您可以到 torjo.com 下载源文件和二进制文件。
更多精彩
赞助商链接