非模态(模态)对话框如何向父窗口写入数据
1个回答
展开全部
第二步:拉一个按钮,为这个按钮编程如下,功能是启动一个非模态对话框
void CMy1Dlg::OnBnClickedButton1(){
// TODO: 在此添加控件通知处理程序代码
CMydialog *dlg=new CMydialog;
dlg-Create(IDD_DIALOG1,this);
dlg-ShowWindow(SW_SHOW);}第三步:在非模态对话框中得到父窗口的指针,通过指针向父窗口添加数据
void CMydialog::OnBnClickedButton1(){
// TODO: 在此添加控件通知处理程序代码
UpdateData(TRUE);
CMy1Dlg *p=(CMy1Dlg *)GetParent();
p-m_listbox.AddString(m_edit2);}
小结:GetParent()是得到父窗口的指针,对模态、非模态都有用。
非模态对话框退出时一般要用如下2个函数进行退出
void CMydialog::OnBnClickedButton2(){
// TODO: 在此添加控件通知处理程序代码
DestroyWindow();}void CMydialog::PostNcDestroy(){// TODO: 在此添加专用代码和/或调用基类
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询