gpt4 book ai didi

c++ - 在 Qt Qml 控件中,ApplicationWindow 在运行时缺少原生外观的主题

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:21:34 24 4
gpt4 key购买 nike

默认情况下,Qml 控件带有一个很好的类似原生的主题。当我通过解释器将我的程序作为 qml 文件运行时,它看起来很棒,但是,一旦我将我的代码复制到 C++ 后端并构建它,它看起来完全没有主题而且非常平淡。此外,我没有启用任何类型的控件样式来使原生外观主题无效。

我唯一改变的是因为我的主 qml 文件中的根对象是一个 ApplicationWindow,我将 main.cpp 文件从加载 qmlviewer 更改为创建我自己的应用程序引擎。我在想这可能是问题所在,但我不确定。

#include <QGuiApplication>
#include <QQmlApplicationEngine>
#include <QQuickWindow>

int main(int argc, char *argv[]) {
QGuiApplication app(argc, argv);
QQmlApplicationEngine engine;

engine.load(QUrl("src/qml/main.qml"));
QObject *topLevel = engine.rootObjects().value(0);
QQuickWindow *window = qobject_cast<QQuickWindow *>(topLevel);

window->show();
return app.exec();
}

最佳答案

Documentation

We are using QApplication and not QGuiApplication in this example. Though you can use QGuiApplication instead, doing this will eliminate platform-dependent styling. This is because it is relying on the widget module to provide the native look and feel.

如果这对您没有帮助,我会感到非常惊讶。

关于c++ - 在 Qt Qml 控件中,ApplicationWindow 在运行时缺少原生外观的主题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21770426/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com