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