モードレスダイアログについて – プログラミング – Home

モードレスダイアログについて
 
通知
すべてクリア

[解決済] モードレスダイアログについて


tom
 tom
(@tom)
ゲスト
結合: 23年前
投稿: 16
Topic starter  

モードレスダイアログについて質問だがあります。
CDialogクラスを継承してCSmpDlgクラスを作成し、

void CSmpDlg::OnClose()
{
DestroyWindow();
}

void CSmpDlg::PostNcDestroy()
{
delete this;
}

とオーバーライドした関数を実装しました。

ダイアログを使用する側では
CSmpDlg* pDlg = new CSmpDlg();
pDlg->ShowWindow(SW_SHOW);

として、ダイアログを表示しています。

以上のようにして、デバッグ実行させると、
------------------------------------------------------------------------
Warning: calling DestroyWindow in CDialog::~CDialog --
OnDestroy or PostNcDestroy in derived class will not be called.
------------------------------------------------------------------------
といったメッセージがデバックウィンドウに表示されます。

PostNcDestroy()が呼ばれているはずなのですが、どうしてかわかりません。

どうか、原因がわかるかたいましたら、よろしくお願いします。


引用未解決
トピックタグ
tom
 tom
(@tom)
ゲスト
結合: 23年前
投稿: 16
Topic starter  

自分で質問しておいて、ミスを発見しました。
もう一つ作成したモードレスダイアログの警告メッセージでした。
質問のダイアログについては問題ないことがわかりました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました