2009-02-20 53 views
2

美好的一天人們,我需要一點指導。嚴格的C Win GUI編程

基本上,我是一個從過去知道一些C的webdev,但我只爲* nix開發了一些簡單的控制檯應用程序。

不久,我想開發一個簡單的WIN程序具有GUI,並沒有得到我的手到任何以下技術:

.NET C# 的Java C++(尤其是這一個)

因爲我現在也沒有時間也沒有必要。

1)。我可以在不使用cpp的情況下使用wxWidgets(如果沒有,那麼您會建議使用其他的本地外觀和輕量級小部件工具包?) 2)。我可以使用嚴格的C使用OpenCV嗎? (沒有模板,內聯函數等) 3)。除了MinGW之外,我還應該尋找其他編譯器選項嗎?英特爾值得研究嗎? (AFAIK,它有一個限制性許可)。 4)。您有什麼建議IDE以下爲Windows/C編程

  • 開發-C++
  • 與Eclipse的插件合適(不記得確切的一個)
  • 任何文本編輯器+ *編譯.BAT ??

謝謝!

+0

你在技術上使用任何這些技術的限制?如果不是這樣,你就錯失了分支並學習一門新技術的機會,這種技術可能會幫助你在比GUI更短的時間內開發這種「帶有GUI的簡單Win程序」。無論如何。 – JMD 2009-02-20 19:34:13

+0

同意。下載Visual Studio並在啓動C之前嘗試使用「Hello World」。C中的Windows GUI絕對不是微不足道的。 – Ishmael 2009-02-20 19:41:39

+0

不,我在技術上沒有限制,但真的,我覺得爲了我的需要,這個應用程序有一個列表視圖,在其中顯示一些關於圖像和OpenCV的信息以用於對象檢測。爲此單獨學習新技術會讓我的其他計劃在未來更遠。現在是時候我受到限制了.. – Karolis 2009-02-20 19:43:19

回答

0

關於wxWidgets,你可以使用https://sourceforge.net/projects/wxc 我從來沒有真正使用過它,所以我不知道它的成熟。

Mingw和Microsoft Visual C++是我最喜歡的編譯器。請記住,您始終可以使用嚴格的C並使用C++編譯器進行編譯,因爲有效的C幾乎總是有效的C++。

對於windows,過去我使用過Dev-C++,但現在Microsoft Visual C++似乎是更好的解決方案。

如果您要使用文本編輯器+ bat,請查看Notepad ++。

編輯:只是爲了澄清,使用Microsoft Visual C++並不意味着學習C++。你可以完美地使用C,因爲 - 我再說一遍 - 有效的C通常是有效的C++。不想要C++?沒問題。只要遠離C++的特性,並且在C++編譯器中仍然是安全的。

編輯:羅傑Lipscombe在註釋中指出,純C編譯器是可用在微軟的Visual C中,使用/ TC開關。

3

對於C Windows GUI編程最簡單的事情是VC++(任何版本自6.0)和查爾斯Petzold 編程Windows書。

微軟編譯器的免費快車版本應該可以正常工作 - 我不確定是否需要下載平臺SDK或者是否有平臺SDK。

1

您可以直接編寫Windows GUI程序。下載Windows SDK並查看「GENERIC」示例(我假設它仍在此處)。這幾乎是Win32應用程序所需的最小代碼,它在普通的'C'中。

編輯:嗯,它似乎沒有安裝在這檯筆記本電腦上。你可以在網上找到here

3

如果你有興趣,直接學習基於C語言的Windows程序,而不是使用其他中間工具:

有由Charles Petzold的一個很好的參考書叫Programming Windows。這絕對是開始的方式。絕對一切都很清晰,你永遠不需要C++。

作爲一個整體,Windows API是爲C程序員而構建的。像真正的應用程序窗口這樣的所有花哨的東西都作爲「HANDLE」傳回,它們或多或少只是指向操作系統對象表的指針。你作爲程序員從來不需要處理對象,只需處理它們的句柄。

此外,這本書很好地描述了Windows event-loop。如果你不熟悉它,它會被詳細描述。

祝你好運!

1

這可能值得重新考慮C#.NET。您可以在幾天內輕鬆學習C#,並快速開發出流暢的應用程序。比較而言,基於C的直線式Windows庫,特別是Win32,是BRUTAL。你會花一個星期的時間來編寫一個簡單的應用程序,這需要在C#中花費幾分鐘。

1

我能想到的唯一基於C的工具包就是GTK +的Windows端口。我沒有在Windows環境中使用它的經驗。儘管在Linux方面它已經非常成熟,如果你的需求很簡單,可能已經足夠了。

學習Win32 API很難!但是和其他人一樣,如果你堅持走這條路,Petzold的書就是要走的路。

我的觀點是,僅僅使用C和Win32 API來開發Windows GUI將比學習僅僅足夠的C++來利用其中一個基於C++的框架更困難。你仍然可以用C語言完成大部分工作。

至於免費的IDE,我將使用Visual Studio 2008 Express Edition。

1

你不需要任何東西。

只需使用C和WIN32 API,像真正的程序員,而不是孩子..

見VS的Win32嚮導