如何将“叮”静音当用户点击表单外部时发出声音?
我正在使用 Form.ShowDialog()
显示一个表单,在此表单中我覆盖了 void WndProc(ref Message m)
因为我想在用户单击时关闭此表单表单区域之外。
private const int WM_NCACTIVATE = 0x0086;
protected override void WndProc(ref Message m)
{
switch (m.Msg)
{
case WM_NCACTIVATE:
if (_canClose) // when user click outside form, close form
this.Close(this, EventArgs.Empty);
break;
default:
break;
}
base.WndProc(ref m);
}
这段代码按我的预期工作,但有一个小问题,每次用户在表单区域外单击时,Windows 都会播放 DING
声音,我想在处理此代码时“静音”此 DING
。
更新
我根据Hassan Mujtaba
的建议设法使这个表单按我想要的方式工作,但我仍然想知道如何静音这个DING
如果我使用Form.ShowDialog。
I'm showing a form using Form.ShowDialog()
, in this Form I have override void WndProc(ref Message m)
because I want to close this form when user click outside Form area.
private const int WM_NCACTIVATE = 0x0086;
protected override void WndProc(ref Message m)
{
switch (m.Msg)
{
case WM_NCACTIVATE:
if (_canClose) // when user click outside form, close form
this.Close(this, EventArgs.Empty);
break;
default:
break;
}
base.WndProc(ref m);
}
This code work as I expected, but one minor problem, Windows play DING
sound every time user click outside Form area, I want to "mute" this DING
when this code processed.
UPDATE
I managed to make this Form work as I want to, using advice from Hassan Mujtaba
, but I still wonder how to mute this DING
if I use Form.ShowDialog
.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
使用 Form.Show() 而不是 Form.ShowDialog() 将解决该问题。
Using Form.Show() instead of Form.ShowDialog() will solve the problem.