CFindReplaceDialog::CFindReplaceDialog
CFindReplaceDialog オブジェクトを構築します。
CFindReplaceDialog();
解説
CFindReplaceDialog オブジェクトはモードレス ダイアログ ボックスなので、new 演算子を使用してヒープ上に構築する必要があります。
破棄時、フレームワークは、ダイアログ ボックスへのポインターに基づいて delete this を実行しようとします。ダイアログ ボックスをスタック上に作成すると、this ポインターが存在しないため、未定義の動作が発生する可能性があります。
CFindReplaceDialog オブジェクトの構築の詳細については、CFindReplaceDialog クラスの概要を参照してください。ダイアログ ボックスを表示するためには CFindReplaceDialog::Create メンバー関数を使います。
使用例
// m_pFRDlg is a pointer to a class derived from CFindReplaceDialog
// which defines variables used by the FINDREPLACE structure.
// InitFindReplaceDlg creates a CFindReplaceDialog and initializes
// the m_fr with the data members from the derived class
void CMyRichEditView::InitFindReplaceDlg()
{
if(NULL == m_pFRDlg)
{
m_pFRDlg = new CMyFindReplaceDialog(); // Must be created on the heap
m_pFRDlg->Create(TRUE, _T(""), _T(""), FR_DOWN, this);
m_pFRDlg->m_fr.lStructSize = sizeof(FINDREPLACE);
m_pFRDlg->m_fr.hwndOwner = this->m_hWnd;
m_pFRDlg->m_fr.lpstrFindWhat = m_pFRDlg->GetFindWhatStr();
m_pFRDlg->m_fr.lpstrReplaceWith = m_pFRDlg->GetReplaceWithStr();
m_pFRDlg->m_fr.wFindWhatLen = m_pFRDlg->GetFindWhatStrLen();
m_pFRDlg->m_fr.wReplaceWithLen = m_pFRDlg->GetReplaceWithStrLen();
}
}
必要条件
ヘッダー : afxdlgs.h