プロパティシートの終了処理が拾えない

[戻る]
lise 2004/01/19(月) 21:50:08
VC++6.0、MFCで開発しています。

プロパティシートにおいて、右上の×ボタンおよび
コントロールメニューの閉じる(ALT+F4)を押下した時に
ポップアップにて終了の確認をさせたいと考えています。

通常のダイアログと同様に、OnCloseにポップアップ処理を
コーディングしましたが呼ばれませんでした。

どのようにしたら良いのでしょうか?
よろしくお願いします。

ひろぴー 2004/01/20(火) 09:11:17
CPropertySheet::EndDialog()ではどうでしょうか?
MSDNに
この関数は、[OK]、[キャンセル]、[閉じる] ボタンがクリックされると、フレームワークが呼
び出します。プロパティ シートを閉じるイベントが発生したときに、この関数を呼び出しま
す。
とあります。
動作は確認していませんです。

sugar 2004/01/20(火) 09:33:27
WM_SYSCOMMANDをハンドルしてはどうでしょう?
WPARAMにSC_CLOSEがセットされてくると思います。

lise 2004/01/20(火) 21:40:47
[[解決]]
ひろぴーさん、sugarさん、ご回答いただきましてありがとうございます。

WM_SYSCOMMANDをハンドルして対応することができました。
MFCなので、OnSysCommandにてnIDにSC_CLOSEがセットされてきました。

CPropertySheet::EndDialog()はまだ試せていません。すみません。
(これって、オーバーライドできるんでしょうか?)

古いスレッドには追加発言できません。