Выражение Lambda не распознает правую кнопку мыши [duplicate]

rtrim ($ string, ","); это самый простой способ.

4
задан Mark 18 November 2011 в 11:25
поделиться

3 ответа

По-видимому, ответ на этот вопрос заключается в том, что OnClick не обрабатывает события щелчка правой кнопкой мыши для Button s. Поэтому решение должно было использовать MouseUp / MouseDown и проверять двойные щелчки / клики, по которым мышь перемещается влево / вправо.

4
ответ дан Mark 15 August 2018 в 20:57
поделиться

Его трудно ответить без кода, но в целом он должен работать.

 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");
  }
}

// EventHandler

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

Изменить: есть событие MouseDoubleClick, которое вы можете использовать для распознавания двойных щелчков. Работает как для левой, так и правой кнопок муз.

5
ответ дан Alex 15 August 2018 в 20:57
поделиться
  • 1
    Это в основном то, что у меня есть - кроме еще более простого (я не проверяю, какую кнопку - у меня просто есть окно сообщений на каждом событии MouseClick), но оно возникает только при использовании правой кнопки мыши. – Mark 18 November 2011 в 13:43
  • 2
    Да, должно. Но для меня это тоже не работает. – Mitulát báti 18 July 2016 в 12:16

Использовать MouseUp !!

    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");
        }
    }
10
ответ дан Vova Popov 15 August 2018 в 20:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: