※ ChatGPTを利用し、要約された質問です(原文:ビジュアルベーシックでは、 AddHandlerステートメントがありましたが・・・・・)
ビジュアルベーシックとVisual C++のダイアログ処理についての困りごと
このQ&Aのポイント
ビジュアルベーシックでは、AddHandlerステートメントを使ってダイアログのボタン処理を行うことができましたが、Visual C++ではどのようにしたら良いか途方に暮れています。
質問者はビジュアルベーシックを学んだ後、Visual C++を勉強中です。ダイアログにはOKとCancelのボタンがあり、それぞれ押された際に異なる処理を行い、その後に続く処理を行いたいと考えています。
BOOL CXXXDoc::OnNewDocument() という関数内で、ダイアログを表示させるために Cfailsettei クラスを使用し、モーダルでダイアログを表示しています。ダイアログ上のボタンが押された際には、それぞれの処理を行い、その後に続けて処理を行いたいという状況です。具体的な解決方法についてアドバイスをいただきたいとのことです。
ビジュアルベーシックでは、 AddHandlerステートメントがありましたが・・・・・
ビジュアルベーシックを学んでから、
今度は、Visual C++を勉強していますが・・・
困っています、
たとえば、ダイアログの上に
OK と、Cancel のボタンがあるとします、
ダイアログを表示させて、
OK ボタンを押したら A の処理
Cancel ボタンを押したら B の処理
そして、どちらかの処理が終わったら
続く C の処理を続けてゆく
この様にするためには、どうしたらよいのでしょうか?
ビジュアルベーシックでは、
AddHandlerステートメントを
使うことができたのですが・・・・
BOOL CXXXDoc::OnNewDocument()
{
Cfailsettei cf; // 作成したダイアログボックスのクラスです
nRet=cf.DoModal(); //モーダルでダイアログを表示
// cf.buttonOK オーケーボタンを押した処理
// cf.buttonCancel キャンセルボタンを押した処理
//処理を続けてゆく
if (!CDocument::OnNewDocument())
return FALSE;
// TODO: この位置に再初期化処理を追加してください。
// (SDI ドキュメントはこのドキュメントを再利用します。)
return TRUE;
}
どうすれば、良いのでしょうか?
よろしくお願いします。
お礼
ありがとうございます おっしゃるとおりにしたところ、 問題は解決しました。 ありがとうございます!