Ich möchte nicht auf eine Schaltfläche oder das Formular klicken, ich möchte nur wissen, ob der Benutzer die linke Maustaste drückt, während der Cursor in der Form ist.Erkennen, wenn Sie eine Maustaste drücken und welche WinForm C#
Ich habe dies versucht:
private void PlayForm_KeyDown(object sender, KeyEventArgs e)
{
if(e.KeyCode == Keys.LButton)
{
...
}
}
aber es funktioniert nicht.
Ich habe auch versucht PlayForm_Click()
aber es funktioniert nur, wenn der Klick auf die ‚Leinwand‘ ist, wenn es etwas anderes auf wird es nicht
'KeyDown' keine Maus bezogenes Ereignis ist. Vielleicht möchten Sie stattdessen ['MouseDown'] (https://msdn.microsoft.com/en-us/library/ms171542 (v = vs.110) .aspx) verwenden? – Sinatr
Sie haben das gleiche Problem mit MouseDown. Welche Kontrolle Sie auch immer haben, ist diejenige, die Mausereignisse erhält. Wenn das eine Schaltfläche ist, werden die Mausereignisse angezeigt. Wenn es keine Kontrolle gibt, wird es das Formular selbst sein. Sie müssen das Ereignis auf dem entsprechenden Steuerelement behandeln. –
@Sinatr nein es verhält sich genauso wie PlayForm_Click() –