首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >本地KDE寻找Qt 5应用程序

本地KDE寻找Qt 5应用程序
EN

Stack Overflow用户
提问于 2013-02-14 16:56:42
回答 4查看 7.7K关注 0票数 21

我在我的Kubuntu12.10Linux机器上安装了Qt5和Qt4,并注意到以下内容:

  • 用Qt4编译的程序具有本机KDE外观和感觉。我使用默认的KDE的氧气主题和我的程序(注意光滑梯度与标题和蓝色选择聚焦小部件);
  • 但是,当使用Qt5 重新编译而不对代码进行任何更改时,它使用了不同的样式(似乎称为“融合”),而且看起来很尴尬和不合适(见右图)。

我想要的是相当严格的:我希望我的应用程序适应周围的系统,即看起来总是本地的。在使用Qt4时,我习惯于默认情况下这样做。Qt5在Windows中似乎也具有正常的本机外观。但是我要做什么才能在库本图也拥有同样的东西呢?理想情况下,everywhere?我的意思是,我不想强迫我的应用程序的linux构建严格使用氧气。我希望它使用当前在KDE中设置的主题:就像在好的旧Qt4中一样。

似乎应用程序代码与这个问题无关:我没有在其中使用任何QStyle,它几乎是典型的Qt的hello-world。但以防万一https://github.com/NIA/qfractal

UPD: @peppe 已给予非常充分地回答了为什么会出现这个问题( KDE中的氧气主题是针对Qt4编译的,Qt5不能使用)。,但我仍然在上寻找如何解决这个问题的答案?,我试着找氧气的主题源来玩,但是除了Firefox主题什么都没找到。

UPD2: @kwirz 建议一个有趣的想法:强制应用程序使用GTK+主题,并在KDE设置中启用氧气- GTK ,使GTK窗口看起来类似于氧气。一方面,它看起来确实更接近氧气:

但另一方面,我们已经看到了一些微小的差异:只读行编辑变成灰色,焦点按钮仍然不亮等等。不幸的是,当试图将这种技术应用于更复杂的小部件时,会出现更多的工件(特别是在组合框和旋转器上):

因此,这种技术似乎不可能是一个完整的解决方案,但仍然非常有用的是简单的案例。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-02-17 10:42:10

氧气是KDE的一部分,所以你就是在那里找到它的。这不是一个独立的主题。您不能在Qt 5上构建KDE,它不受支持。KDE的下一个主要版本(KDE 5)将使用Qt5。

所以现在,你绝对无能为力。如果您希望您的应用程序在KDE 4中看起来和行为良好,请使用Qt4。

票数 15
EN

Stack Overflow用户

发布于 2013-02-14 17:03:11

这不是你的应用程序--只是氧气是针对Qt 4而不是Qt 5编译的,所以Qt 5不能使用它,回到默认的风格(“融合”)。请记住,样式实际上是插件 --即代码,为了加载和使用,必须符合API/ABI的要求。你需要一种针对Qt 5的氧气方式。

票数 9
EN

Stack Overflow用户

发布于 2013-04-12 07:09:31

试一试

代码语言:javascript
复制
QApplication::setStyle(QStyleFactory::create("GTK+"));

作为解决办法,如果安装了氧气-gtk,它看起来是原生的.

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14880032

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档