Qt的新手。在官方的Qt教程中,它说:
要设置项目,首先必须确定要开发的应用程序类型:是否需要基于Qt Quick或HTML5或Qt小部件的用户界面。
我们计划使用Qt进行医学图像显示,并且还使用Qt来构建GUI应用程序来控制医疗设备。他们将是两个不同的项目。
我们应该为他们使用哪种 Qt项目类型?
答案 0 :(得分:2)
我认为在Qt Quick和Qt Widgets之间没有客观正确的答案。理论上,应该能够使用任一方法复制任何UI - 因为在一天结束时,他们都在幕后使用QtGui。所以功能可能不是问题。
需要注意的一点是,Qt Quick(即QML)的设计是为了使UI编程所需的代码少得多,而且C ++知识要少得多。我会说它很好地实现了这个目标。
然而,在一天结束时,我认为这主要取决于您的开发人员已经熟悉的语言。如果你有一个C ++专业团队,那么我会选择Qt Widgets - 只是因为它很容易让他们接受,而且这是他们已经熟悉的东西。 (我猜这是因为你已经在为你的项目编写C ++代码了。)
另一方面,如果您的开发人员已经非常擅长QML(或者更常见的是,JavaScript - QML受到很大影响),那么我会选择Qt Quick,原因相同。
答案 1 :(得分:2)
文档说:
如果您的UI由少量复杂和静态元素组成,QWidgets是更好的选择,如果您的UI由大量简单和动态元素组成,QML是更好的选择。
我说:
如果您要使用桌面应用程序,我建议使用Qt Widgets,您不必使用用于QML的libs发布最终应用程序,并且整个源代码将使用C ++编写(更快,更简单,因此更容易调试)
如果你想创建手机/平板电脑(一般的触摸体验),QML将是一个不错的选择。
答案 2 :(得分:1)
我知道两种类型的Qt UI:Qt Quick和小部件。
Widgets的行为与大多数其他UI工具包一样,您有一个GUI编辑器和一个UI对象树。它们非常成熟,看起来像大多数标准UI。
Qt Quick是较新的Qt UI工具包。它使用特定于域的声明性语言(QML)来指定用户界面和用于交互的JavaScript。还有计划在Qt Quick框架内提供Qt小部件,但我不确定该项目有多远。 Qt Quick旨在提供更多动态/自定义用户界面。
据我所知,Qt将在可预见的未来继续支持这两种方法,因此您选择的方法取决于您的用例。