首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >模式窗口闪烁效果

问模式窗口闪烁效果
EN

Stack Overflow用户
提问于 2011-06-01 14:59:53
回答 1查看 567关注 0票数 2

在一个典型的windows应用程序中,当一个模式对话框出现,我们在它的边界之外点击时,它会闪烁,从而表明任何超出这些边界的东西都是暂时被禁止的。

当这种情况发生时,是否有任何事件会触发?我真的需要这个效果,这样我就可以在我的WPF伪模式窗口中模拟这个行为。

谢谢。哈里什

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-06-01 15:36:02

看看这个SO问题和答案:Prevent WebBrowser control from stealing focus?

它解释了FlashWindow在后台执行的操作。我引用你感兴趣的东西:

微软没有用太多的文字来解释FlashWindow是做什么的。不幸的是,它不会发送特定的消息(比如WM_FLASH或类似的消息),这将使捕获和取消此行为变得更容易。相反,FlashWindow做了三件事:

它为闪烁间隔设置系统计时器它为第一次闪存发送WM_NCACTIVATE消息当计时器到期时发送WM_NCACTIVATE消息(在接收WM_SYSTIMER时)

因此,您必须找到您感兴趣的窗口,并尝试在宿主窗口过程中捕获WM_SYSTIMER。这是一条(非常旧的)未记录的Windows消息。值为0x118。您还可以捕获WM_NCACTIVATE,这可能更容易,因为它由.NET事件(激活、停用等)表示。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6197404

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档