m_InnerDlg1.MoveWindow(&rect); // 移动到 m_InnerDlg2.MoveWindow(&rect); // 移动到
虽然楼主弄好了,但是我忘了说明一点,要在MyApp1Dlg.h最前面加上 #include <DIALOG1.h> #include <DIALOG2.h>
然后就可以在各个对话框里控制子级对话框的显式了
新建一个Style为Child,Border为None的对话框,然后在父对话框那里添加一个PictureBox(IDC_PIC1)用于定位,Visible设为False //CDlgParent.h CDialog m_InnerDlg1; // 也可以新建一个类CMyDialog CDialog m_InnerDlg2; // 也可以新建一个类CMyDialog //CDlgParent.cpp——OnInitDialog() CRect rect; m_InnerDlg1.Create(IDD_INNER_1, this); // 创建非模态对话框,父级是自己 m_InnerDlg2.Create(IDD_INNER_2, this); // 创建非模态对话框,父级是自己 GetDlgItem(IDC_PIC1)-> GetWindowRect(&rect); // 准确定位 ScreenToClient(&rect); // 千万注意别用成ClientToScreen m_InnerDlg1.MoveWindow(rect); // 移动到 m_InnerDlg2.MoveWindow(rect); // 移动到 m_InnerDlg1.ShowWindow(SW_SHOW); // 显式对话框 m_InnerDlg1.ShowWindow(SW_HIDE); // 隐藏对话框
15,980
社区成员
115,867
社区内容
加载中
试试用AI创作助手写篇文章吧