2010-03-14 148 views
1

我有一個需要轉換爲控制檯的GUI C++應用程序(Visual Studio 2008)。 我沒有任何C編程經驗。大多數情況下,我使用.NET。我從哪說起呢?將GUI C++應用程序轉換爲控制檯之一

+3

'int main(int argc,char * argv []);''是你開始的地方。 – 2010-03-14 12:11:07

回答

3

向下轉換GUI應用程序是大手術。編程模型完全不同,GUI應用程序是事件驅動的。依靠消息循環來傳遞事件,並在消息處理程序中進行處理。並且通常是一組控制器,負責處理輸入的垃圾文件。

鑑於您必須徹底重新設計應用程序以使其作爲控制檯模式應用程序工作,並且您沒有使用該語言的經驗,所以使用.NET語言編寫此代碼是您的最佳方式快速完成它。

+0

我試圖在調用CreateDialog之前執行函數,並且應用程序在crtexe.c「訪問衝突」中崩潰。如何解決這個問題? – SharpAffair 2010-03-16 12:22:05

+2

我的水晶球渾濁,看不到「功能」。我只能推薦使用調試器。請閱讀:http://catb.org/~esr/faqs/smart-questions.html – 2010-03-16 12:27:02

1
  1. 創建與主
  2. 一個新的項目添加文件
  3. 在這裏你有一個控制檯應用程序無所事事。它可能仍然會創建窗口,或者如果你喜歡,隱藏窗口。
  4. 現在,將界面與現有代碼聯繫起來,這取決於您的創造力。
  5. 不要忘記下載並使用boost :: program_options來正確訪問命令行參數。
2

檢出ncursesreadline以幫助您構建豐富的控制檯應用程序。我發現你的can't use them both at once,所以如果你的應用程序更多地面向輸出/顯示或者實現單鍵交互(熱鍵),那麼嘗試ncurses,如果它更像是一次一行的用戶輸入情況,那麼嘗試ncurses。

2

從重構開始。確保GUI與業務邏輯分離。然後添加另一個接口來訪問這個業務邏輯:一個使用控制檯,而不是GUI小部件。

相關問題