テクニカルレシピ(Visual C++のレシピ)

Home>>Visual C++>>ダイアログベース LastUpdate:2009-01-21

ダイアログで初級アプリ

ここではダイアログベースを使って2次元グラフ表示アプリを作ってみます。

ダイアログベースのアプリ開発は簡単です。
コントロールを貼り付けて変数を設定した後、
***Dlg.cpp(***はプロジェクト名)というファイル内に、
イベントハンドラ関数の記述をすればOKです。

まず下のようなダイアログを作り、
sinの前のEdit Controlにdouble型の「m_sin」という変数、
cosの前のEdit Controlにdouble型の「m_cos」という変数、
Picture ControlにはCStatic型の「m_pict」という変数を設定します。
(コントロールのメンバ変数設定については「コントロール」を参照して下さい。)
(ソースファイルはサンプルコードの2D_Graph.zipにまとめています。)

Showボタンのイベントハンドラ関数は下の通りです。

大まかな処理を言うと、Rectangleで白い背景を描画し(@)、
MoveTo、LineToを使って補助線・中心線(A)とグラフ(B)をかき分けています。

特にSelectObjectで線・ブラシの色や実線・点線を切り替えている点をよく見て下さい。
線はCPen型のオブジェクト、塗りつぶしはCBrush型のオブジェクトをSelectObjectに渡せば、
SelectObjectが自動的に入力オブジェクトを判断して、線やブラシを切り替えてくれます。

このオブジェクトを最初に切り替えるときにoldpenやoldbrといったポインタをとっておき、
最後にSelectObjectで戻すのはお約束だと思っておいて下さい。要は初期化です。

このプログラムを実行すると下の通りになります。

いかがでしょう。
わずか70行くらい書くだけで、この程度のGUIは簡単に作ることが出来ます。

※なおこのプログラムは簡単のため再描画を考慮していません。
※興味のある方は再描画処理をご覧下さい。

画像表示:前項<< ページの先頭に戻る >>次項:シングルDocument