【发布时间】:2010-12-03 02:33:49
【问题描述】:
我们希望用户能够有选择地自定义我们的 QT 应用程序。因此,如果他们想为我们的应用程序创建自己的主题,他们所要做的就是加载自己的 CSS 文件。
我们真的需要创建一个插件才能做到这一点吗?如果是的话,有人可以给我基本的步骤/或如何做的快速开始吗?如果没有,我需要知道 QT 中的哪些功能才能在不创建插件的情况下做到这一点?
【问题讨论】:
标签: css qt user-interface plugins
我们希望用户能够有选择地自定义我们的 QT 应用程序。因此,如果他们想为我们的应用程序创建自己的主题,他们所要做的就是加载自己的 CSS 文件。
我们真的需要创建一个插件才能做到这一点吗?如果是的话,有人可以给我基本的步骤/或如何做的快速开始吗?如果没有,我需要知道 QT 中的哪些功能才能在不创建插件的情况下做到这一点?
【问题讨论】:
标签: css qt user-interface plugins
我有一个基于插件并用 Qt 编写的 Jabber 即时通讯工具。它包括一个 style 插件,它完全符合您的描述。该插件的来源在这里:
https://github.com/sje397/saje/tree/master/plugins/styles/
(注意:这是我的应用程序的插件 - 不是“Qt 样式插件”)
基本上你需要做的就是加载一个样式表并调用QApplication::setStyleSheet:
QFile f("filename");
if(f.open(QIODevice::ReadOnly)) {
qApp->setStyleSheet(f.readAll());
}
一个有效样式表的例子是here。请注意,它适用于我的应用程序,因此包含一些我自己的类名等。
【讨论】: