如何实现可携带附加消息的增强型消息框MessageBoxEx?

2026-05-20 15:530阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计8352个文字,预计阅读时间需要34分钟。

如何实现可携带附加消息的增强型消息框MessageBoxEx?

分享一个带有附加消息的增强消息框MessageBoxEx。更新于20150716 09:17。意外发现标准消息框在Windows 7有声音,而在Windows Server 2008(R2)无声,我的系统却是后者。

分享一个可携带附加消息的增强消息框MessageBoxEx

--------------201507160917更新---------------

无意中发现标准消息框在Windows7是有声音的,只是在Windows server 2008(R2)无声,而我用的刚好是后者,所以误以为是MessageBeep API在所有NT6系统都不工作造成~汗,有人在stackoverflow也提过这问题。但我仍然决定使用PlaySound API,不做修改
将声音处理交给ProcessIcon方法负责。之前考虑松耦合,所以将MessageBoxIcon和声音分开处理,但其实声音就是根据前者而来,两者天然就是耦合的,分开处理多此一举

--------------201507091034更新---------------

首先感谢猿友E204在回复中的反馈。

解决双击按钮造成的Checked状态改变问题,办法是让ToggleButton忽略WM_LBUTTONDBLCLK消息
修正收起详细信息区逻辑,改为直接取用plAttachZone.Height。

阅读全文

本文共计8352个文字,预计阅读时间需要34分钟。

如何实现可携带附加消息的增强型消息框MessageBoxEx?

分享一个带有附加消息的增强消息框MessageBoxEx。更新于20150716 09:17。意外发现标准消息框在Windows 7有声音,而在Windows Server 2008(R2)无声,我的系统却是后者。

分享一个可携带附加消息的增强消息框MessageBoxEx

--------------201507160917更新---------------

无意中发现标准消息框在Windows7是有声音的,只是在Windows server 2008(R2)无声,而我用的刚好是后者,所以误以为是MessageBeep API在所有NT6系统都不工作造成~汗,有人在stackoverflow也提过这问题。但我仍然决定使用PlaySound API,不做修改
将声音处理交给ProcessIcon方法负责。之前考虑松耦合,所以将MessageBoxIcon和声音分开处理,但其实声音就是根据前者而来,两者天然就是耦合的,分开处理多此一举

--------------201507091034更新---------------

首先感谢猿友E204在回复中的反馈。

解决双击按钮造成的Checked状态改变问题,办法是让ToggleButton忽略WM_LBUTTONDBLCLK消息
修正收起详细信息区逻辑,改为直接取用plAttachZone.Height。

阅读全文