小弟问个MFC问题

来源:百度知道 编辑:UC知道 时间:2024/06/18 22:42:15
我创建MFC对话框,开始的时候显示一个非模态对话框A,A可以通过按钮显示非模态对话框B,但是B显示出来时这两个窗口看起来有父子窗口的联系(激活B窗口A窗口被遮挡,但是激活A窗口,A仍然被B遮挡,除非最小化B),这个怎么解决.
显示A用的 a->create(IDD_ABC);a->showwindow(SW_SHOW);B用的相同办法

你把a和b的实例都在主DLG中创建。

显示的时候调用
pmain->a->showwindow(SW_SHOW);
pmain->b->showwindow(SW_SHOW);

没明白你说什么.可能我理解能力不行.能再详细点吗?比如把代码帖出来.
补充:
m_d1.Create(IDD_DIALOG1,this);
m_d1.ShowWindow(SW_SHOW);
还有,把你对话框的类型都设置为CHILD,BORDER也设置成NONE类型.
你的A窗口被创建了,然后你点A窗口里的按钮,在A窗口创建出了B,这样,B就是A的子窗口了.一定是把A遮挡了.要想不让B总挡住A,用下边的方法:
在A下方就是B挡不到的地方,放置一个按钮,然后在按钮的单击事件中.让B.showwindow(sw_hide);这样B行了.

你说的不清不楚,我也不明白什么意思
这个方法你试试吧,在按钮事件里添加一句
b->SetParent(NULL);
意思是设置父窗口为空

我的天呐,B是模态对话框那,
当然会出现这种现象了
如果按照楼下的说法的话,只是把父窗口给隐藏了,也打不到的你的那个要求。
仔细分析一下了。
学东西不能什么都问,做好事别人给点提示自己就能解决,进步的做好方法。
加油~~