console 當希望程式運行時同時出現 cmd 視窗,我們只需要在 pro 檔案內添加(這是一個常規用法): CONFIG += console 即可。 一般來說,我們都希望 debug 時出現 cmd 視窗,而 release 不出現 cmd 視窗,這也好辦: 網路安全 2009FLY文摘,正正部落格 WWW.2009FLY.COM win32:CONFIG(debug, debug|release):CONFIG += console
qtestlib其實不止前面的選項會出現 cmd 視窗,當我們啟用 qtestlib 模組時,Qt程式也會彈出控制台視窗 WEB技術 Ajax、RIA 2009FLY文摘,正正部落格 WWW.2009FLY.COM CONFIG += qtestlib 網路安全 2009FLY文摘,正正部落格 WWW.2009FLY.COM 或 QT += testlib 遊戲編程 2009FLY文摘,正正部落格 WWW.2009FLY.COM
- 這兩種寫法的淵源我不太清楚,前面是Qt的example中的用法,後者是Qt的manual給出的說明。反正目前兩個都能用。
這種情況下彈出控制台其實比較好理解,畢竟 qtestlib 是用來測試的,測試時彈出控制台來輸出一些中間結果,正是大家所期望的。 可是如果我們非要在一個GUI程式想使用qttestlib中的東西,而又不想要cmd視窗,怎麼辦? 一種消除cmd的辦法(注意:在Qt Windows下連結子系統與入口函數(終結版) 一文中給出更好的辦法)
說做就做,下面是Mingw和VS2008兩種環境下的Makefile修改方式:
將其中的: -Wl,-subsystem,console 網路安全 2009FLY文摘,正正部落格 WWW.2009FLY.COM 修改為 資料技術 Oracle、DBMaker、DB2 2009FLY文摘,正正部落格 WWW.2009FLY.COM -Wl,-subsystem,windows 重新編譯即可
將其中的: 作業系統核心 2009FLY文摘,正正部落格 WWW.2009FLY.COM /SUBSYSTEM:CONSOLE 移動開發,Android、iPhone 2009FLY文摘,正正部落格 WWW.2009FLY.COM 修改為 /SUBSYSTEM:WINDOWS /entry:mainCRTStartup 2009FLY文摘,正正部落格 WWW.2009FLY.COM 即可 對連結子系統的一個簡單討論,可以看看這個: http://hi.baidu.com/cyclone/blog/item/96624a90fb4ca081a977a4db.html |