1

虽然我的操作系统是 Windows,但我希望我的应用程序看起来像 Mac 应用程序。我知道我可以使用QApplication::setStyle.

QApplication::setStyle(new QWindowsVistaStyle)

我也知道Qt提供MacStyle,因为MacStyle

QApplication::setStyle(new QMacStyle)

但是,似乎QMacSytle没有声明。编译器无法识别它。Qt网页上说

Warning: This style is only available on Mac OS X because it relies on the HITheme APIs.

还有其他方法可以使用该Mac OS样式窗口吗?因为我需要使用它。

4

1 回答 1

13

Qt5有设置风格的新方法。例如:

QApplication a(argc, argv);
qDebug() << QStyleFactory::keys();
a.setStyle(QStyleFactory::create("Fusion"));

在我的电脑输出是:

(“Windows”、“WindowsXP”、“WindowsVista”、“Fusion”)

如您所见,mac os 样式不可用。

QStyleFactory 类创建 QStyle 对象。

QStyle 类是一个抽象基类,它封装了 GUI 的外观。QStyleFactory 使用 create() 函数和一个标识样式的键创建一个 QStyle 对象。样式要么是内置的,要么是从样式插件动态加载的(参见 QStylePlugin)。

可以使用 keys() 函数检索有效密钥。通常它们包括“windows”和“fusion”。根据平台,“windowsxp”、“windowsvista”、“gtk”和“macintosh”可能可用。 请注意,键不区分大小写。

于 2014-12-30T09:32:53.000 回答