Page003

Window class の導入

前回までで、Windows application として一通り動くようにはなった。しかし window size を越えるような長い文書に対して、文末を見る手段が無いなど、実用レベルには達していない。実用レベルにするには Window class の選定と、より多くの message に対する処理が必要である。そこで、ここではまず汎用な window class を導入し、実際の window はそこから継承することを考える。

ここでは、基底となる window class を CMyWin、実際に使う window に対応する class を CMyAppWin としよう。

Window procedure を隠蔽するため、基底となる window class、CMyWin では若干小細工をする。

  • まず、ここで作る class の object の pointer を window handle と結びつける。
  • Window procedure では、(WM_CREATE message を除いて)window handle から、object の pointer を取り出し、message に対応した method を呼び出す。
  • これらの method は virtual にしておいて、必要なもののみ継承先である CMyAppWin で実装する。

また、constructor は protected にして、派生しなければ使えないようにしておく。

このページ用のソースファイル類を filemyapp04.tgz として固めておく。


添付ファイル: filemyapp04.tgz 16360件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2007-08-03 (金) 16:58:12 (88d)