Share via


Control.MouseCaptureChanged Kejadian

Definisi

Terjadi ketika kontrol kehilangan tangkapan mouse.

public:
 event EventHandler ^ MouseCaptureChanged;
public event EventHandler MouseCaptureChanged;
public event EventHandler? MouseCaptureChanged;
member this.MouseCaptureChanged : EventHandler 
Public Custom Event MouseCaptureChanged As EventHandler 

Jenis Acara

Contoh

Contoh kode berikut menunjukkan MouseCaptureChanged peristiwa untuk Button kontrol.

private void button1_MouseDown(object sender, MouseEventArgs e)
{
    System.Diagnostics.Debug.WriteLine("button1_MouseDown");
}

private void button1_MouseUp(object sender, MouseEventArgs e)
{
    System.Diagnostics.Debug.WriteLine("button1_MouseUp");
}

private void button1_MouseCaptureChanged(object sender, EventArgs e)
{
    System.Diagnostics.Debug.WriteLine("button1_MouseCaptureChanged");
}
Private Sub Button1_MouseDown(ByVal sender As System.Object, _
ByVal e As MouseEventArgs) Handles Button1.MouseDown
    Debug.WriteLine("Button1_MouseDown")
End Sub

Private Sub Button1_MouseUp(ByVal sender As System.Object, _
ByVal e As MouseEventArgs) Handles Button1.MouseUp
    Debug.WriteLine("Button1_MouseUp")
End Sub

Private Sub Button1_MouseCaptureChanged(ByVal sender As System.Object, _
ByVal e As EventArgs) Handles Button1.MouseCaptureChanged
    Debug.WriteLine("Button1_MouseCaptureChanged")
End Sub

Untuk menguji contoh ini, jalankan di debugger dengan menekan F5. Buka jendela Output di Visual Studio sehingga Anda dapat melihat kapan peristiwa dinaikkan. Button Klik dan perhatikan output berikut.

button1_MouseDown

button1_MouseUp

button1_MouseCaptureChanged

Sekarang, klik dan tahan tombol mouse kiri pada Button kontrol. Saat masih mengklik mouse, tekan ALT+TAB untuk beralih ke program lain. Perhatikan bahwa MouseCaptureChanged peristiwa dinaikkan memungkinkan Anda untuk berpotensi menangani skenario ini. Bergantung pada tindakan Anda, MouseUp peristiwa mungkin tidak dimunculkan. Anda juga dapat mencoba pengujian ini dengan kunci Windows atau CTRL+ESC.

button1_MouseDown

button1_MouseCaptureChanged

Keterangan

Dalam skenario yang jarang terjadi, Anda mungkin perlu mendeteksi input yang tidak terduga. Misalnya, pertimbangkan skenario berikut.

  • Selama operasi mouse, pengguna membuka menu Mulai dengan menekan tombol Windows atau CTRL+ESC.

  • Selama operasi mouse, pengguna beralih ke program lain dengan menekan ALT+TAB.

  • Selama operasi mouse, program lain menampilkan jendela atau kotak pesan yang mengambil fokus jauh dari aplikasi saat ini.

Operasi tetikus dapat mencakup mengklik dan menahan mouse pada formulir atau kontrol, atau melakukan operasi seret mouse. Jika Anda harus mendeteksi kapan formulir atau kontrol kehilangan tangkapan mouse untuk skenario ini dan skenario tak terduga terkait, Anda dapat menggunakan peristiwa tersebut MouseCaptureChanged .

Berlaku untuk