• ベストアンサー

ダイアログからビュークラスのメンバ変数へ代入するには?

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

質問者が選んだベストアンサー

  • ベストアンサー
  • txrx
  • ベストアンサー率45% (83/184)
回答No.1

ダイアログのコンストラクタに変数を増やすなどして、Viewクラスのポインタをダイアログに登録します。 ダイアログのボタンクリックハンドラで既に登録されているViewクラスのポインタを使用して希望の変数を変更するとできます。 これは色々な方法があります。 逆にダイアログクラスにボタンのクリック結果を変数として残しておき、ダイアログが終了してからダイアログのクリック結果をViewクラスが確認する方法もあります。 他には、ダイアログのボタンクリックハンドラから、Viewクラスへメッセージを送信するという方法もありますね。 色々有るので色々勉強してくださいね。

hiyahiya12345
質問者

お礼

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

すると、全ての回答が全文表示されます。

関連するQ&A