Rubrik: Controls · Sonstiges | VB-Versionen: VB4, VB5, VB6 | 09.01.04 |
Doppelklick für die Standard-CheckBox Die meisten Controls besitzen ein DblClick-Ereignis, die Standard-CheckBox leider nicht. Aber nicht mehr lange... :-) | ||
Autor: Dieter Otter | Bewertung: | Views: 11.204 |
www.tools4vb.de | System: Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 | Beispielprojekt auf CD |
Die meisten Controls besitzen neben dem Click-Ereignis, das bei einem einfachen Mausklick ausgelöst wird, auch ein Ereignis für einen Doppelklick: DblClick. Die Standard-CheckBox jedoch macht hier eine Ausnahme. Ein DblClick-Ereignis sucht man vergebens.
Wie man den Doppelklick auf eine CheckBox dennoch abfangen kann, das zeigen wir Ihnen heute.
Im Click-Ereignis merken wir uns hierzu in einer statischen Variable die Zeit des letzten Mausklicks. Beim nächsten Klick auf die CheckBox berechnen wir die Zeit-Differenz. Je nach Ergebnis werten wir den zweiten Mausklick dann entweder als "Single-Click" oder eben als "Double-Click".
Private Sub Check1_Click() Static nLastClick As Single ' Zeit-Differenz zwischen aktuellen ' Mausklick und letzten Mausklick abfragen If Timer - nLastClick < 0.3 Then ' bei weniger als 0.3 Sekunden werten ' wir den zweiten Mausklick als "Double-Click" MsgBox "Doppelklick" End If ' Zeitpunkt des Mausklicks "merken" nLastClick = Timer End Sub
Die Zeitspanne wurde im obigen Code auf 0.3 Sekunden festgelegt. Hier können Sie natürlich auch einen niedrigeren oder höheren Wert einsetzen.