MFC中實現單擊按鈕彈出對話方塊的方法
阿新 • • 發佈:2019-01-23
1、資源檢視-->Dialog-->右鍵-->新增資源-->新建-->對話方塊-->對話方塊按右鍵--新增類。例:新增CNewDlg類,在所要調的程式碼中(按鈕點選方法中),先加標頭檔案#include "CNewDlg.h ",之後在按鈕點選方法中:
void COnclickDlg::OnBnClickedOk()//第一種
{CNewDlg Dlg;
Dlg.DoModal();//模態對話方塊
}
或
void COnclickDlg::OnBnClickedOk()//第二種
{
CNewDlg *dlg=new CNewDlg;//非模態
dlg->Create(IDD_DIALOG1,this);
dlg->ShowWindow(SW_SHOW);
}
或
voidCOnclickDlg::OnBnClickedOk() //第三種
{
m_DemoDlg1.ShowWindow(SW_SHOW);
//需要在主體函式初始化里加上
m_DemoDlg1.Create(IDD_DIALOG1,this);
}
2、建立非模態的另一種方法
首先, 在工程的資源裡面3個對話方塊(假設ID是IDR_MENU1, IDD_DIALOG1, IDD_DIALOG2, IDD_DIALOG3); 其次, 對按鈕響應的函式裡新增一個COMMEND MESSAGE, 系統會自動生成一個函式, 在函式裡面寫以下程式碼 // TODO: Add your command handler code here CDialog* dlg = new CDialog;//非模態 dlg->Create(MAKEINTRESOURCE(IDD_DIALOG1)); dlg->ShowWindow(1); 其他兩項也一樣的做法