WinMain関数では、次のように処理が進みます。
5,6,7がwhile文でグルグル回しになっています。 いつまでグルグル回しになっているかというと GetMessage関数が0を返すまでです。 0を返すのはWM_QUITメッセージを取得したときです。1.hPreInst(インスタンスハンドル)のチェック (32ビット版ではhPreInstは常にNULLです) 2.WNDCLASS構造体の各メンバの定義 3.ウィンドウの登録 4.ウィンドウの作成 5.メッセージの取得 6.メッセージの翻訳 7.ウィンドウ・プロシージャへメッセージを送る
Windowsでは、同じアプリケーションを複数起動できるため、
複数実行する場合はアプリケーションのコピーを実行します。
このコピーのことをインスタンスといいます。
最初に自分自身が実行されていないかインスタンスハンドルを
調べます。初回起動の時に限って2.3.が実行されます。
ここでは、何をしているかというとウィンドウの外観を
定義しているわけです。そして4.でいよいよウィンドウの
作成をします。イントロダクションで作ったプログラムを
実行すると次のようになります。
実際は、もう少し大きいウィンドウができます。
(縮めてあります。)旗のアイコンの所をクリックすると
システムメニューが出てきます。右上のアイコン化、最大化、
終了ボタンを押すとそれぞれの動作をします。
もちろん、ウィンドウの大きさとか位置も変えられます。
立派なウィンドウズアプリケーションです。
今回は、大ざっぱにウィンドウを作る流れを解説しました。
何度もいいますが、この部分はどんなアプリケーションでも
似たり寄ったりです。従って、今のうちは各関数の細かい
ことはわからなくても問題ありません。ある程度プログラムが
書けるようになってから少しずつヘルプとか参考書を読んで
理解していって下さい。今の段階で、それぞれの関数の
すべてを知ろうとすると必ず挫折します。
Update Mar/15/1997 By Y.Kumei