WPF Timer的小问题,很是困惑啊。。。

simon1990 2012-09-30 01:46:31
各位好,我最近在做一个类似于播放器的东西,点击暂停播放按钮后10秒,需要弹出一个对话框,这个对话框弹出的时候不能有别的对话框存在。
我的做法是,点击暂停后启动Timer计时,10秒后timer会响应一个函数,函数里先是NEW了一个window,然后又做了一堆事件的+=,最后才show出来这个对话框,现在有个小问题就是如果特别巧,我在执行到tick函数里之后,用户如果刚好点了什么,弹出某个对话框,就会被我弹出的对话框盖住。。。不知道各位有什么解决方案。。。先谢谢了。。
...全文
172 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
[Quote=引用楼主 的回复:]
各位好,我最近在做一个类似于播放器的东西,点击暂停播放按钮后10秒,需要弹出一个对话框,这个对话框弹出的时候不能有别的对话框存在。
我的做法是,点击暂停后启动Timer计时,10秒后timer会响应一个函数,函数里先是NEW了一个window,然后又做了一堆事件的+=,最后才show出来这个对话框,现在有个小问题就是如果特别巧,我在执行到tick函数里之后,用户如果刚好点了什么,……
[/Quote]

这有什么可纠结的?系统设计就是如此,有些对话框不是模态的,而模态对话框就是会比非模态对话框优先,而你的程序就是这样以它预设的对话框为主次之分的。

如果你觉得纠结,请先写出逻辑来说明到底有什么可纠结的再说。
devmiao 2012-09-30
  • 打赏
  • 举报
回复
定义一个私有bool变量。
弹出对话框前加一个判断,如果有对话框了,就不弹出,或者将它关掉。
木头杭 2012-09-30
  • 打赏
  • 举报
回复
设置属性topmost=true;//置于最前面
simon1990 2012-09-30
  • 打赏
  • 举报
回复
[Quote=引用楼主 的回复:]
各位好,我最近在做一个类似于播放器的东西,点击暂停播放按钮后10秒,需要弹出一个对话框,这个对话框弹出的时候不能有别的对话框存在。
我的做法是,点击暂停后启动Timer计时,10秒后timer会响应一个函数,函数里先是NEW了一个window,然后又做了一堆事件的+=,最后才show出来这个对话框,现在有个小问题就是如果特别巧,我在执行到tick函数里之后,用户如果刚好点了什么,……
[/Quote]
忘了说了, 我用的WPF。。。

110,918

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧