如何在 QxtApplication 中隐藏控制台窗口
Posted
技术标签:
【中文标题】如何在 QxtApplication 中隐藏控制台窗口【英文标题】:How to hide console window in QxtApplication 【发布时间】:2012-09-10 06:52:50 【问题描述】:我正在尝试制作 gui Qxt 应用程序,但在启动时会创建一个控制台窗口。我不需要控制台窗口,如何隐藏它?
我正在使用 mingw gcc4.4 qt4.8 libqxt-0.6.2
.pro 文件:
QT += core gui network testlib
CONFIG += qxt
QXT += core gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TARGET = yascreens
TEMPLATE = app
SOURCES += main.cpp \
application.cpp \
configwidget.cpp \
network.cpp \
imageselectwidget.cpp
HEADERS += \
application.h \
configwidget.h \
network.h \
defines.h \
imageselectwidget.h
RESOURCES += \
resources.qrc
QMAKE_CXXFLAGS += -std=c++0x
FORMS += \
config.ui
完整来源here (github)。
【问题讨论】:
您是否尝试在您的专业文件中添加CONFIG -= console
?
是的,但仍然显示控制台窗口
【参考方案1】:
我找到了一个部分解决方案(控制台窗口出现片刻,然后隐藏)。您应该修改您的 main.cpp 文件,如:
#if defined(Q_OS_WIN)
#define _WIN32_WINNT 0x0500
#include <windows.h>
HWND WINAPI GetConsoleWindow(void); // For hiding console in windows
#endif
int main(int argc, char *argv[])
#if defined(Q_OS_WIN)
HWND hwnd = GetConsoleWindow();
ShowWindow(hwnd, 0); // For hiding console in windows
#endif
// Your application code here
// ...
【讨论】:
【参考方案2】:问题是我在 pro 文件中使用了 QTest 和 testlib。只是不要使用 QTest :)
【讨论】:
以上是关于如何在 QxtApplication 中隐藏控制台窗口的主要内容,如果未能解决你的问题,请参考以下文章