如何判断哪个物理设备点击了C#中的按钮?

时间:2010-08-26 19:17:05

标签: c# mouse click button touchscreen

我有一个带按钮的表格。此应用程序旨在在触摸屏计算机上运行。单击按钮时,我想知道它是否被鼠标或触摸屏点击。

这可能吗?如果是这样,怎么样?

2 个答案:

答案 0 :(得分:3)

private void button_Click(object sender, EventArgs e)
{
    try
    {
        ((MouseEventArgs)e).Button.ToString();
    }
    catch(Exception)
    {
        //If an exception is catch, it means the mouse was not used.
    }
}

这是一个很好的方法,因为它可以在任何时候通过鼠标“点击”按钮来触发异常,无论是触摸屏还是键盘的返回。但它会完成这项工作:)

答案 1 :(得分:1)

以这种方式从Wildhorn的回答中避免抛出异常:

MouseEventArgs thisObject = e as MouseEventArgs

if(thisObject != null)
{
//Do Something
}

它没有太大的不同,但你没有异常处理的开销。你也可以尝试多次演员,直到你得到正确的演员。