在 MFC MDI 应用程序中级联特定窗口
Posted
技术标签:
【中文标题】在 MFC MDI 应用程序中级联特定窗口【英文标题】:Cascading specific windows in a MFC MDI application 【发布时间】:2010-08-09 12:38:17 【问题描述】:一个 MDIParent Wnd 有很多 MDIchild Wnd,还有几个子对话框。
以这种方式创建对话框 --- CAutoDlg *pDlg = 新 CAutoDlg; pDlg->创建(IDD_AUTOCARD,this);
我只想级联特定类型的对话框,例如 CAutoDlg 类型的对话框。
如果我给 MDICascade() 它将级联 MDIFrame 下的所有子窗口和对话框。 除了根据前一个对话框的位置为每个对话框调用 SetWindowPos 之外,还有其他非常规的方法吗?
【问题讨论】:
【参考方案1】:没有直接的方法可以做到这一点。您可以将CAutoDlg
收集到某个容器中。使用该容器调用适当的函数进行级联。您可以使用CAutoDlg
的构造函数将对话框对象添加到该容器中,并使用析构函数从容器中删除对话框引用。
【讨论】:
以上是关于在 MFC MDI 应用程序中级联特定窗口的主要内容,如果未能解决你的问题,请参考以下文章
MFC - 当最大化子窗口的标题很长时,MDI 主框架标题被截断