Thursday, October 1, 2009

Windows Programming - A Short Introduction

使用環境:Visual C++ 2008


至今在Visual C++中,想要建立一個可以跟使用者互動的應用程式大概有三種方式,
分別是使用Windows API,MFC以及Windows Forms。以下將分別簡介這三種方法:


(1) Windows API:透過Windows API的函式,我們所寫的應用程式就可以跟作業系統做溝通。而利用Windows API來撰寫一個Windows程式至少需要透過兩個函式:WinMain(),它負責程式視窗的初始化;以及WindowProc(),負責處理應用程式的訊息,當有訊息產生,Windows會自動呼叫此函式。當然,這兩個函式都是透過Windows提供的API來跟Windows做溝通。我們來看一下利用這兩個函式所建立的視窗樣貌:


















(2) MFC:MFC是一個封裝Windows API之類別的集合,它簡化了利用Windows API來開發程式,也就是說,我們可以經由一些簡單的類別繼承,加上一些簡單的程式碼,就可以產生我們想要的結果。例如,下圖是繼承CWinAppCFrameWnd,且透過這兩個類別的成員來幫我們產生的視窗圖示:















(3) Windows Forms: Windows Forms應用程式需在CLR環境下執行,它比前面兩種分法更方便建立視窗,programmer完全不需要寫任何code就可以產生如下圖的視窗,並且自動產生code:

















結論:
就以寫GUI為目的來講的話,透過Windows API當然是最吃力的方法,至於剩下來的兩種方法的話,只能說看應用來決定要使用哪種方法,兩種方法各有所長。

[Reference]
Ivor Horton's Beginning Visual C++ 2005, Ivor Horton

0 意見: