怎么同时显示两个模态对话框?

konfyt 2002-05-09 04:18:43
一个对话框程序,怎么弹出两个模态对话框?

第一个模态对话框必须在最后一个弹出的对话框消失后才能被点击

我该怎么做?
...全文
158 点赞 收藏 10
写回复
10 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
konfyt 2002-05-09
各位大虾:
我已经实现,不过碰到怪现象

我是这样实现的:在主对话框的初始化函数加入下列语句

SetTimer(106, 1000, NULL); //这个定时器显示 一个 登录对话框
PostMessage(WM_USER+1004, 0 ,0);//显示 一个 倒计时 提示对话框

都是模态的

当 倒计时对话框 自动关闭后, 登陆对话框 就变成非模态的了,能点击主对话框的按钮,为什么会这样?
回复
tpProgramer 2002-05-09

哦, 我说错了, cnshinhwa(月夜森林):你的第二个是非模态的对话框哦,那样是可以的,只要作好控制,使得在第二个对话框关闭之前不能访问第一个对话框就可以达到效果了。

是我没有看清楚。如果两个都是模态的,你的方法才会第一个对话框不会和第二个同时显示,只会先显示第二个, 关闭它之后再出现第一个。
回复
Hover 2002-05-09
很简单,在第一个模式对话框创建第二个模式对话框就行了,当第二个模式对话框消失了后,第一个模式对话框自然就会出来
回复
tpProgramer 2002-05-09

哦, 我说错了, cnshinhwa(月夜森林):你的第二个是非模态的对话框哦,那样是可以的,只要作好控制,使得在第二个对话框关闭之前不能访问第一个对话框就可以达到效果了。

是我没有看清楚。如果两个都是模态的,才会第一个对话框不会和第二个同时显示,只会先显示第二个, 关闭它之后再出现第一个。
回复
Hover 2002-05-09
很简单,在第一个模式对话框创建第二个模式对话框就行了,当第二个模式对话框消失了后,第一个模式对话框自然就会出来
回复
tpProgramer 2002-05-09


cnshinhwa(月夜森林):

贴主的要求是两个都显示, 象你那样做,第一个对话框不会和第二个同时显示,只会先显示第二个, 关闭它之后再出现第一个哦。

我的意思是:
两个都按照非模式显示, 然后自己加入控制,比如在两个对话框没有关闭之前不能访问它们的父窗口,在第二个对话框关闭之前不能访问第一个对话框等等,这个应该很好做到 ,使用窗口类的 EnableWindow 函数就可以了。
回复
auroraiel 2002-05-09
要是能同时弹出两个,就不叫模态对话框了。
要么你先弹出一个非模态的,同时再弹出一个模态的吧。
回复
Kevin_C_K 2002-05-09
做成一个模态,一个非模态,在模态对话框的初始化时调用非模态对话框的CREATE()函数
回复
konfyt 2002-05-09
肯定有用啦


倒过来不就行了!
这句话看不懂
回复
anjy 2002-05-09
哈哈,第一个模态对话框有何用。
倒过来不就行了!
回复
相关推荐
发帖
VC/MFC
创建于2007-09-28

1.5w+

社区成员

VC/MFC相关问题讨论
申请成为版主
帖子事件
创建了帖子
2002-05-09 04:18
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……