经过一番研究后,我发现,Qt 5现在提供了一个所谓的融合主题,这是在他们的blog posts之一desribed。我真的很喜欢黑色配置的主题,你可以在最后一张图片中看到,我想在我的应用程序中使用它,但看起来像这个配色方案是由Unity/Gnome3强制的(看起来像一个Ubuntu窗口),所以我是渴望知道是否有任何可用的样式表或解决方法将这个黑暗版本的主题应用到应用程序。是否可以在Windows上使用Qt 5 dark Fusion主题?
4
A
回答
2
AFAIK,Qt5 Fusion主题的颜色完全由调色板控制,而调色板又由系统主题控制。所以在Ubuntu上,你会得到橙色和蓝色的Windows ...
所以基本上你只需要使用一个工具或QtProject.conf文件手动调整Qt5应用程序的调色板,并且不要忘记用参数'-style fusion'来启动你的应用程序,因为除此之外,在Ubuntu上它是以GTK +外观模拟开始的。
12
我相信你已经找到它了,但是,正如TheBootroo所说,融合主题是由调色板控制的。
我发现了一个调色板here的娱乐。它根本不完整!
qApp->setStyle(QStyleFactory::create("Fusion"));
QPalette p = qApp->palette();
p.setColor(QPalette::Window, QColor(53,53,53));
p.setColor(QPalette::Button, QColor(53,53,53));
p.setColor(QPalette::Highlight, QColor(142,45,197));
p.setColor(QPalette::ButtonText, QColor(255,255,255));
p.setColor(QPalette::WindowText, QColor(255,255,255));
qApp->setPalette(p);
编辑:我创建了一个gist,所以我们可以把它功能完备。
1
这是我黑暗的调色板:
// set style
qApp->setStyle(QStyleFactory::create("Fusion"));
// increase font size for better reading
QFont defaultFont = QApplication::font();
defaultFont.setPointSize(defaultFont.pointSize()+2);
qApp->setFont(defaultFont);
// modify palette to dark
QPalette darkPalette;
darkPalette.setColor(QPalette::Window,QColor(53,53,53));
darkPalette.setColor(QPalette::WindowText,Qt::white);
darkPalette.setColor(QPalette::Disabled,QPalette::WindowText,QColor(127,127,127));
darkPalette.setColor(QPalette::Base,QColor(42,42,42));
darkPalette.setColor(QPalette::AlternateBase,QColor(66,66,66));
darkPalette.setColor(QPalette::ToolTipBase,Qt::white);
darkPalette.setColor(QPalette::ToolTipText,Qt::white);
darkPalette.setColor(QPalette::Text,Qt::white);
darkPalette.setColor(QPalette::Disabled,QPalette::Text,QColor(127,127,127));
darkPalette.setColor(QPalette::Dark,QColor(35,35,35));
darkPalette.setColor(QPalette::Shadow,QColor(20,20,20));
darkPalette.setColor(QPalette::Button,QColor(53,53,53));
darkPalette.setColor(QPalette::ButtonText,Qt::white);
darkPalette.setColor(QPalette::Disabled,QPalette::ButtonText,QColor(127,127,127));
darkPalette.setColor(QPalette::BrightText,Qt::red);
darkPalette.setColor(QPalette::Link,QColor(42,130,218));
darkPalette.setColor(QPalette::Highlight,QColor(42,130,218));
darkPalette.setColor(QPalette::Disabled,QPalette::Highlight,QColor(80,80,80));
darkPalette.setColor(QPalette::HighlightedText,Qt::white);
darkPalette.setColor(QPalette::Disabled,QPalette::HighlightedText,QColor(127,127,127));
qApp->setPalette(darkPalette);
在这里你还可以找到与无框窗和自定义样式表一compelte例如延长黑暗的调色板: https://github.com/Jorgen-VikingGod/Qt-Frameless-Window-DarkStyle
相关问题
- 1. 是否可以在Windows上使用pyflink?
- 2. Windows Phone 7.1 Light/Dark主题管理
- 3. 是否可以在现有的win32 GUI上使用QT按钮?
- 4. 是否可以在Windows Embedded Standard 7中使用默认的Windows 7主题?
- 5. Windows Phone - 是否可以更改手机上的主题颜色?
- 6. 是否可以在线程上运行主QT程序?
- 7. 是否可以在Windows上静态链接Qt :: phonon?
- 8. 如何检查themeforest.net上的主题是否可以使用php
- 9. 是否可以在Windows Phone 7应用程序中使用Silverlight Toolkit主题?
- 10. 是否可以在Windows Forms应用程序中使用主题颜色?
- 11. Fusion Tables ROWID值是否可以重置?
- 12. 是否可以使用cin与Qt?
- 13. 是否可以在Windows平台上使用SANE后端?
- 14. 是否可以在VSCode主题中使用editor.tokenColorCustomizations?
- 15. 在Windows上首次安装Qt 5
- 16. Windows Phone 7:是否可以使用主题更改手机重音颜色?
- 17. 是否可以在Windows上使用Qt在网络USB打印机上逐行打印?
- 18. 是否可以使用R命令在Windows上安装pandoc?
- 19. 是否可以在Windows Azure Service Bus上使用自定义域?
- 20. 是否可以在Windows上使用Grand Central Dispatch(`libdispatch`)?
- 21. ruby-debug-ide是否可以安装在使用ruby1.9.3的windows上?
- 22. 是否可以在Windows 10和Ubuntu上使用相同的JDK?
- 23. 是否可以在Windows上使用Mono静态编译?
- 24. 是否可以在Windows上启用X11转发到Windows?
- 25. 可以在Windows机器上运行VMWare Fusion映像
- 26. 是否可以识别WordPress主题?
- 27. 是否可以在Jetty上使用socket.io.js?
- 28. 是否可以在scrapy上使用pyexecjs?
- 29. 是否可以在Qt应用程序中使用Win32钩子
- 30. 是否可以在Windows Phone上获取总共/可用内存?
真的很好的主题!我可以在我的一个项目中使用它吗?你可以许可吗? MIT还是什么?或者我可以复制过去,然后将其许可为MIT?所有学分当然都会送给你。 – RandomGuy 2018-02-06 17:17:56
刚刚注意到你已经有了麻省理工学院的许可[你的网站](https://github.com/Jorgen-VikingGod/Qt-Frameless-Window-DarkStyle/blob/master/DarkStyle.cpp)!谢谢!我会用它并给你适当的学分。 – RandomGuy 2018-02-07 10:36:01