QML打开图形用户界面窗口和控制台

2022-03-30 00:00:00 user-interface qt4 console c++ declarative

我正在尝试获取一个工作正常的QML应用程序。一切都很好,只是当我运行我的应用程序时,它会打开QML窗口,但也会打开控制台窗口。为什么?代码如下:

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    QDeclarativeView view;

    view.setSource(QUrl::fromLocalFile("myfile.qml"));
    view.show();

    return app.exec();
}

Rectangle {
    width: 940
    height: 670
    color: red
}

解决方案

CMake用户。

我遇到了针对Windows的MSVC和MinGW版本的问题。(即使不是从IDE启动。)

解决方案是CMakeList中的以下行:

if (WIN32)
    set(WIN32_ON_OFF_SWITCH "WIN32")
else ()
    set(WIN32_ON_OFF_SWITCH "")
endif ()

add_executable(SomeExe
    ${WIN32_ON_OFF_SWITCH}
    #...
)

这正好将目标系统设置为远离控制台,如问题的注释中所述。

相关文章