主对话框包含多个子对话框的显示问题
一个 MFC 对话框程序,在主对话框上又有多级新的“子”对话框,当我将主对话框上的各级“子对话框”类型设 POPUP 时,各级对话框独立正常,但似乎与主对话框一点关系也没有一样,其甚至可以移到主对话框所属区域外面,为了保持其与主对话框相对位置的稳定在移动主对话框时要手动地移动各级“子”对话框,且移动时还要使用屏幕坐标; 当将各级“子”对话框类型设为 CHILD 时,各级对话框表现出了子窗口的属性,保持与主窗口位置关系,不能移动到主窗口所属区域以外等。但新问题也出现了 -- 子对话框所属区域变得不明确了!各级子对话框间可以相互绘制到对方区域上,甚至主对话框也能绘到它的子对话框上,将相互覆盖的两个子对话框移开后被覆盖子对话框不重绘,而且鼠标在子对话上点击时,子对话框也不会被“激活”。
我希望的效果是一个主对话框作为父窗口,其上根据需要动态创建出各级子对话框,子对话框表现出完整“子窗口”的属性 -- 即子窗口有自己独立的窗口区域,操作系统在子对话上存在无效区域时能向其发送重绘消息,鼠标点击时各子窗口能“激活”,移动父级窗口时子窗口自己跟随移动,保证相对位置的稳定。