大家好,
我在这个主题上经历了各种各样的线索,但似乎没有解决我的特定问题。包括testlib,使控制台窗口出现,我没有找到任何选项来抑制这种行为。
但我的应用程序仍然要求testlib存在(因为我非常想使用QTest :: qWait()方法),并且没有出现控制台窗口。我从其他线程尝试了一些选项,但没有任何工作。即使在使用'testlib'后我该怎么做才能抑制这个控制台窗口?
我尝试的选项是
将CONFIG - = console添加到我的.pro文件中。
QT += gui \
xml \
core \
testlib
CONFIG += qt \
windows \
uitools \
release
CONFIG -= console
LIBS += extern/ftd2xx.lib
RC_FILE = res/AC-Core.rc
QMAKE_CXXFLAGS += -Wall \
编辑qmake.conf文件,行
QMAKE_LFLAGS_CONSOLE = -Wl,-subsystem,console, to
QMAKE_LFLAGS_CONSOLE = -Wl,-subsystem,windows
欢迎任何其他抑制控制台窗口出现的想法?
谢谢!
答案 0 :(得分:0)
您不必使用QTest
来获取QTest::qWait()
的功能。如果您查看qWait()
的源代码,您可以看到它的工作原理并自行实现此功能:
inline static void qWait(int ms)
{
Q_ASSERT(QCoreApplication::instance());
QTime timer;
timer.start();
do {
QCoreApplication::processEvents(QEventLoop::AllEvents, ms);
QTest::qSleep(10);
} while (timer.elapsed() < ms);
}