我正在度过假期学习编写Qt应用程序。几个小时前,我正在阅读有关Qt Designer的文章,这使我想知道:编写使用Qt的现实世界应用程序的人使用什么来设计他们的GUI?实际上,人们通常如何设计GUI?
就我而言,手工编写代码在概念上比使用Qt Designer更简单,尽管对于复杂的GUI,Designer可能是有意义的。使用Designer可以创建大型GUI,但随着复杂性的增加,管理它们可能变得非常困难(这只是我的看法)。我还下载了AmaroK源代码,看看那些家伙在做什么,发现许多调用addWidget()和其他类似方法,但没有Designer创建的那些XML文件(另外:Amarok必须是我最喜欢的任何平台上的应用程序)。
那么,创建GUI的“正确”方法是什么? Designer还是代码?对于本讨论,让我们考虑以下类型的GUI:
- 只需要输入、展示一些结果并退出的简单对话框。假设一个应用程序接受YouTube URL并将视频下载到用户的硬盘。这是新手可能开始的应用程序类型。
- 中级GUI,例如带有几个工具栏/菜单项的便笺编辑器。以xPad为例(http://getxpad.com/)。我会说大多数属于“实用程序”类别的应用程序都是如此。
- 非常复杂的GUI,例如AmaroK或OpenOffice。你看到它们时会知道,因为它们会让你眼花缭乱。