プロが教えるわが家の防犯対策術!

プログラミング初心者です.
Visual C++.netを使っています.

Viewクラスから,Domodal()にてあるダイアログを呼び出しました.
ダイアログ上のあるボタンを押したら,Viewクラスのメンバ変数へ1を代入するという処理をしたいと考えています.
 ラジオボタンやエディタコントロールであれば,DDXを利用すればよいと思うのですが,単なるボタンの場合はどうすれば,呼び出し元のViewクラスの値を操作(この場合,代入)出来るのでしょうか?

A 回答 (1件)

ダイアログのコンストラクタに変数を増やすなどして、Viewクラスのポインタをダイアログに登録します。



ダイアログのボタンクリックハンドラで既に登録されているViewクラスのポインタを使用して希望の変数を変更するとできます。

これは色々な方法があります。

逆にダイアログクラスにボタンのクリック結果を変数として残しておき、ダイアログが終了してからダイアログのクリック結果をViewクラスが確認する方法もあります。

他には、ダイアログのボタンクリックハンドラから、Viewクラスへメッセージを送信するという方法もありますね。

色々有るので色々勉強してくださいね。
    • good
    • 0
この回答へのお礼

ありがとうございました.結局,単純にダイアログボックスクラスの変数をpublicにしておいて,そこへ数値をいれて処理をし,その後view側からアクセスすることにしました.あんまり良い方法ではないかもしれませんが,とりあえずです.

お礼日時:2004/10/09 16:08

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!