簡體   English   中英

C# 鼠標右鍵單擊按鈕不會引發 mouseclick 事件

[英]C# Right mouse click on button does not raise mouseclick event

我在表單上有一個按鈕,想同時處理左右點擊。

我正在處理 MouseClick 事件,但這僅在左鍵單擊時引發。

這是我的代碼中某處的問題(我錯過的設置)還是預期的功能?

如果這無法解決,最好的解決方法是什么 - 處理 MouseUp 事件?

我想使用 MouseClick 的原因是可以自動識別雙擊。

感謝您的任何反饋。

使用鼠標向上!

    private void button6_MouseUp(object sender, MouseEventArgs e)
    {
        if (e.Button == System.Windows.Forms.MouseButtons.Left)
        {
            MessageBox.Show("LEFT");
        }
        if (e.Button == System.Windows.Forms.MouseButtons.Right)
        {
            MessageBox.Show("RIGHT");
        }
    }

沒有代碼很難回答,但總的來說,它應該可以工作。

 private void Form1_MouseClick(object sender, MouseEventArgs e)
{
  if (e.Button == System.Windows.Forms.MouseButtons.Left)
  {
    MessageBox.Show("LEFT");
  }
  if (e.Button == System.Windows.Forms.MouseButtons.Right)
  {
    MessageBox.Show("RIGHT");
  }
}

// 事件處理器

 this.MouseClick += new System.Windows.Forms.MouseEventHandler(this.Form1_MouseClick);

編輯:有一個 MouseDoubleClick 事件,您可能想用它來識別雙擊。 適用於左右鼠標按鈕。

顯然,對此的答案是OnClick不處理Button的右鍵單擊事件。 因此,解決方案是使用MouseUp / MouseDown並檢查鼠標在中途手動打開/關閉的雙擊/點擊。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM