MFC按钮弹出对话框并在对话框动态显示一些文字的编程实现

2024年11月30日 09:48
有1个网友回答
网友(1):

自己新建一个对话框,然后在上面放一下static控件,把对话框标题清空,如图:

 

给对话框新建一个类,比如叫CMsgDlg,然后给static控件关联一个控件变量,比如叫m_lbMsg,

然后添加两个成员变量:

 CString m_strCaption;//保存标题信息 
 CString m_strMsg;//保存提示信息

然后,添加一个构造函数,如:

CMsgDlg(CString strCaption, CString strMsg, CWnd* pParent = NULL);
//构造函数实现:
CMsgDlg::CMsgDlg( CString strCaption, CString strMsg, CWnd* pParent /*= NULL*/ )
: CDialog(CMsgDlg::IDD, pParent)
{
 m_strCaption = strCaption;
 m_strMsg = strMsg;
}

最后,添加对话框类WM_INITDIALOG事件处理函数,编写如下代码:

BOOL CMsgDlg::OnInitDialog() 
{
 CDialog::OnInitDialog();
 
 // TODO: Add extra initialization here
 this->SetWindowText(m_strCaption);
 m_lbMsg.SetWindowText(m_strMsg);
 return TRUE;  // return TRUE unless you set the focus to a control
               // EXCEPTION: OCX Property Pages should return FALSE
}

 

自定义的对话框编写完成,然后,再你要使用的地方include相关头文件,之后添加如下代码:

CMsgDlg dlg("这是标题", "这是自定义提示信息");
dlg.DoModal();

下面是运行效果:

 

这对话框的样子你可以再自己进行调整。