Dav*_*vid 12 .net c# mouse winforms
我有一个包含许多控件的表单.我需要检测鼠标是否已关闭或是否已启动.大多数时候,我没有MouseEventArgs.
有没有mouseEventArgs可以快速简便地判断鼠标是否已关闭?
有替代方案,还是这样的唯一途径?:
foreach (Control c in this.Controls)
{
c.MouseUp += new MouseEventHandler(globalMouseUp);
c.MouseDown += new MouseEventHandler(globalMouseDown);
}
bool isMouseUp = true;
private void globalMouseDown(object sender, MouseEventArgs e)
{
isMouseUp = false;
}
private void globalMouseUp(object sender, MouseEventArgs e)
{
isMouseUp = true;
}
Run Code Online (Sandbox Code Playgroud)
Lar*_*ech 19
您可以尝试使用计时器进行检查:
private void timer1_Tick(object sender, EventArgs e) {
this.Text = "Mouse Is " + (Control.MouseButtons == MouseButtons.Left);
}
Run Code Online (Sandbox Code Playgroud)
检查 Control.MouseButtons 静态属性:
if (Control.MouseButtons == MouseButtons.Left)
{
}
Run Code Online (Sandbox Code Playgroud)