繁体   English   中英

Qt应用程序在Windows下看起来和感觉都是原生的吗?

[英]Do Qt apps look and feel native under Windows?

我准备将我的一个Mac应用程序移植到Windows。 Mac应用程序使用Apple的原生Cocoa / Appkit框架进行UI。 UI是Obj-C代码,核心应用程序功能是可移植的C ++代码。

现在我正在寻找一种方法将应用程序移植到Windows并使其外观和感觉是Windows用户的原生。 我的选择是微软的MFC和Qt框架。 虽然我确信MFC应用程序具有原生的外观和感觉,但我记得从MFC编码框架本身是非常可怕的。 我从开发人员的角度看了Qt并喜欢它。

但由于我不是Windows用户,我不知道Qt应用程序是否具有本机Windows外观。

因此我的问题是:我可以制作(没有大量工作)Qt应用程序的行为,看起来它是用本机Windows框架编写的吗?

您可以轻松更改Qt应用程序的样式。 在Windows和Mac上,默认样式实际上是使用本机函数来绘制窗口,控件等。

此外,Qt确实采取了许多措施,以便即使应用程序的最小方面(您甚至不会想到的东西)也模拟特定平台的本机行为。 所以你的Qt应用程序也可以在移植时替换你当前的Mac应用程序。

我非常建议你不要使用MFC,你会后悔的(特别是如果你从未使用过本机的Win32 API)。 这与Qt在灵活性和易用性方面完全相反。

正如您可以在doc.qt.io阅读

Qt Widgets是传统的用户界面元素,通常在桌面环境中找到。 这些小部件很好地集成到底层平台,在Windows,Linux和Mac OSX上提供本机外观。

看看Qt Widget Gallery

Qt对小部件样式和主题的支持使您的应用程序能够适应本机桌面环境。

您可能对如何使您的Qt应用程序看起来像本机的演示文稿感兴趣:

Qt在每个支持的平台上使用本机样式API,但是您可以使用一些额外的技巧来确保基于Qt的应用程序的外观,感觉和行为更好。 此演示文稿将通过示例,提示和标记来帮助您使应用程序在所有平台上都看起来很棒。

他们看起来有点,他们感觉不是很多。

特别是如果你设计的应用程序与Windows一样(就像你使用可可)。 我还没有看到色带(有商业第三方克隆)和MFC蓝/黑色样式或分组图标视图中的列表视图。

不幸的是WxWidgets的编程也很难看。 肯定比MFC更好。 如果您想要一个真正的原生应用程序,MFC(如果您需要快速和小型)或.NET(如果您不关心速度),则只剩下两个选项。

以前的公司在MFC之上有一个50000 LOC层,这对于编写1992这个框架来说是必要的。 不幸的是,我不知道市场上有什么相同的东西。

问题是您的客户是否真的很欣赏它本身的外观,它会成为销售因素。 我现在正在使用QT因为它足够好了。

不,他们不。 它很接近,但控件看起来非本机。 人们的意思是它使用Win32 API渲染控件,类似于Windows呈现本机控件的方式,因此性能应该是可比的。

只有Windows特定于Windows的Windows窗体使用实际的本机Win32控件来实现常见的UI元素。

你应该看一下Style参考 是的,这是可能的,不,它根本不需要很多工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM