c++ - QML:关闭 QQuickWindow 会关闭我的应用程序

标签 c++ qt qml qtquick2 qt-quick

当 QML 引擎创建窗口时,它会隐式地将 QQuickWindow 连接到应用程序的关闭事件,因此如果我关闭 QML 窗口应用程序也会退出。有没有办法避免这种行为? 我想定期加载和销毁 QQuickWindow 的实例,这样就不会关闭我的应用程序。

最佳答案

您可以在QGuiApplication中使用setQuitOnLastWindowClosed。该属性指示当最后一个窗口关闭时应用程序是否应该退出。默认值为 true,您可以将其更改为 false。

你的主要内容可以是这样的:

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

    qApp->setQuitOnLastWindowClosed(false);

    QQmlApplicationEngine engine;
    engine.load(QUrl(QStringLiteral("qrc:///main.qml")));

    return app.exec();
}

关于c++ - QML:关闭 QQuickWindow 会关闭我的应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27913666/

相关文章:

c++ - 结构内重载运算符的调用约定?

c++ - (Qt C++)带有可检查按钮的 QButtonGroup?

qt - 如何制作一些可重用的 QML 对象,它可以注入(inject)另一个 QML 对象?

c++ - 'auto' 关键字如何知道何时使用 const_iterator 匹配函数重载?

c++ - 当对象绑定(bind)到成员函数时,为什么 std::function 会调用析构函数?

c++ - 从基类继承了什么?

qt - 如何根据属性向 DelegateModelGroup 添加元素

c++ - C++ 中的多重继承(Qt 示例)

c++ - Qt-有没有办法优先调整子窗口小部件的大小

qt - QML 连接 : Implicitly defined onFoo properties in Connections are deprecated