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

Home>>Visual C++>>計算処理 LastUpdate:2009-01-21

計算処理

単純な計算アプリはダイアログベースを使って簡単に作ることが出来ます。

下のサンプルアプリを使って解説しますが、
ここではUpdateData関数の使い方を憶えて下さい。
(ソースファイルはサンプルコードのCalc1.zipにまとめています。)

このアプリは前2つの数字をかけ算するという単純なもので、
前2つのEdit Controlには「int」型の「m_num1」、「m_num2」を設定し、
結果を表すEdit Controlには「int」型の「m_total」を設定しています。
(コントロールのメンバ変数設定については「コントロール」を参照して下さい。)

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

基本的に単純にかけ算をしているだけですが、
かけ算の前後をUpdateDataという関数が挟んでいる点を注目して下さい。
UpdateDataはコントロール値の更新を扱うAPIです。

実はGUI(プログラム画面)上の数値を0から100に変えても、
そのままではプログラム内部には反映されません。

そのためまずUpdateData(TRUE)を使ってGUI上の最新値を取得します。
これによりm_num1、m_num2の値がユーザが入力した値に更新されます。
(これがないと常に初期値(0)になってしまいます。)

この計算の結果m_totalが求まりますが、このままではGUIの表示は更新されません。
(計算結果も初期値の0のままです。)
UpdateData(FALSE)はプログラム内部で処理した結果をGUIに反映させるAPIで、
このAPIを使うことでGUI上の値を更新しているのです。

このプログラムを実行すると、
無事にかけ算アプリとして動作します。

興味のある人はUpdateDataをコメントアウトして、動作を確認してみてください。
UpdateDataの理解向上に役立ちます。

文字表示:前項<< ページの先頭に戻る >>次項:図形描画