1

コードからダイアログボックス(基本的にプロパティシートクラスから派生)を閉じようとしています。以下は私のコードです:

LRESULT CSettingsSheet::OnCloseSettings(WPARAM wParam, LPARAM lParam)
{
EndDialog(IDCANCEL);
return 0;
}

問題は、endDialog がダイアログ ボックスだけでなく、メイン アプリケーション ウィンドウも終了することです。この問題の原因は何ですか?

ところで、次のようにメインウィンドウにこのダイアログボックスを作成します

if(settingsSheet.DoModal() == IDOK)
{

}
else
{

}

理想的には、終了ダイアログを呼び出す代わりに IDCANCEL でこの domodal 値を設定する必要があります。

ありがとう、クラム。

4

2 に答える 2

0

MFC には、この CPropertySheet::PressButton の関数があります。

于 2013-10-02T08:24:01.533 に答える