2011-07-18 27 views

回答

13

是的。在创建您的QApplication实例之前,请在main()中举例说明,例如,您可以致电QApplication::setStyle("plastique")。一些其他的风格字符串将是:“windows”,“motif”,“cde”,“plastique”和“cleanlooks”以及根据平台,“windowsxp”,“windowsvista”和“macintosh”。

调用此函数的其他重载版本也可以工作,如QApplication::setStyle(new QWindowsXPStyle)

它也命令行上使用风格切换启动应用程序时,可以指定:

./myapplication -style motif 
+0

我的意思是我可以例如让我的应用程序与DarkRoom主题运行,而操作系统主题是在Ubuntu的人为例如。我正在讨论gnome桌面主题。 –

+2

那么,这将教会我更仔细地查看标签。对不起:) –

+0

NP :)感谢您的尝试 –

2

QT医生说:

void QApplication::setDesktopSettingsAware (bool on) [static] 

设置的Qt是否应使用系统的标准颜色,字体等等。默认情况下,这是true.This函数必须在创建QApplication对象,这样才可以称为:

int main(int argc, char *argv[]) 
{ 
    QApplication::setDesktopSettingsAware(false); 
    QApplication app(argc, argv); 
    ... 
    return app.exec(); 
} 

所以它应该工作开箱。但我注意到,当我在QtSDK中运行我的应用程序时,系统配色方案“未找到”,我的意思是我的QApplication似乎没有设置意识。我部署其中一些在一个不错的ubuntu安装,我得到rigth主题。我不知道什么是在引擎盖下,但肯定是关于$QTDIR内容的东西...

+0

谢谢,生病检查它 –

+0

这解释了我将如何使不知道桌面设置,但我怎么做使它使用Ubuntu的Darkroom主题。 –

+0

这只是提及它应该自动完成。如果没有,检查你正在链接的Qt的部署版本并且它是集成是一个好主意。包管理器中的其他Qt应用程序是否正确安装了当前的主题? – vrince

相关问题