第1章 ウィンドウを作る その1


さて、今回は一番基本になるウィンドウの作り方の解説です。 イントロダクションで、単にウィンドウだけを作るプログラムを 載せました。今回は、このウィンドウ作りについて少し解説します。

WinMain関数では、次のように処理が進みます。

1.hPreInst(インスタンスハンドル)のチェック (32ビット版ではhPreInstは常にNULLです) 2.WNDCLASS構造体の各メンバの定義 3.ウィンドウの登録 4.ウィンドウの作成 5.メッセージの取得 6.メッセージの翻訳 7.ウィンドウ・プロシージャへメッセージを送る

5,6,7がwhile文でグルグル回しになっています。 いつまでグルグル回しになっているかというと GetMessage関数が0を返すまでです。 0を返すのはWM_QUITメッセージを取得したときです。

Windowsでは、同じアプリケーションを複数起動できるため、 複数実行する場合はアプリケーションのコピーを実行します。 このコピーのことをインスタンスといいます。 最初に自分自身が実行されていないかインスタンスハンドルを 調べます。初回起動の時に限って2.3.が実行されます。 ここでは、何をしているかというとウィンドウの外観を 定義しているわけです。そして4.でいよいよウィンドウの 作成をします。イントロダクションで作ったプログラムを 実行すると次のようになります。

実際は、もう少し大きいウィンドウができます。 (縮めてあります。)旗のアイコンの所をクリックすると システムメニューが出てきます。右上のアイコン化、最大化、 終了ボタンを押すとそれぞれの動作をします。 もちろん、ウィンドウの大きさとか位置も変えられます。 立派なウィンドウズアプリケーションです。

今回は、大ざっぱにウィンドウを作る流れを解説しました。 何度もいいますが、この部分はどんなアプリケーションでも 似たり寄ったりです。従って、今のうちは各関数の細かい ことはわからなくても問題ありません。ある程度プログラムが 書けるようになってから少しずつヘルプとか参考書を読んで 理解していって下さい。今の段階で、それぞれの関数の すべてを知ろうとすると必ず挫折します。


[SDK Index] [総合Index] [Introduction] [Next Chapter]

Update Mar/15/1997 By Y.Kumei
当ホーム・ページの一部または全部を無断で複写、複製、 転載あるいはコンピュータ等のファイルに保存することを禁じます。