Die Community zu .NET und Classic VB.
Menü

VB 5/6-Tipp 0143: Dropdown einer Combobox durch F4 verhindern

 von 

Beschreibung 

Die Dropdownliste einer Combobox läßt sich, wenn sie den Focus hat, vom Anwender durch Betätigen der F4 Taste auf und zuklappen. Dieser Effekt läßt sich sowohl unterbinden als auch wieder freigeben.

Schwierigkeitsgrad:

Schwierigkeitsgrad 1

Verwendete API-Aufrufe:

SendMessageA (SendMessage)

Download:

Download des Beispielprojektes [2,01 KB]

'Dieser Quellcode stammt von http://www.activevb.de
'und kann frei verwendet werden. Für eventuelle Schäden
'wird nicht gehaftet.

'Um Fehler oder Fragen zu klären, nutzen Sie bitte unser Forum.
'Ansonsten viel Spaß und Erfolg mit diesem Source!

'------------- Anfang Projektdatei Project1.vbp -------------
'--------- Anfang Formular "Form1" alias Form1.frm  ---------
' Steuerelement: Kontrollkästchen-Steuerelement "Check1"
' Steuerelement: Kombinationsliste "Combo1"

Option Explicit

Private Declare Function SendMessage Lib "user32" _
        Alias "SendMessageA" (ByVal hwnd As Long, ByVal _
        wMsg As Long, ByVal wParam As Long, ByVal lParam _
        As Long) As Long
        
Const CB_GETEXTENDEDUI = &H156
Const CB_SETEXTENDEDUI = &H155

Private Sub Form_Load()
  With Combo1
    .AddItem "Gurken"
    .AddItem "Zwiebeln"
    .AddItem "Spargel"
    .AddItem "Kartoffeln"
  End With
End Sub

Private Sub Check1_Click()
  If Check1.Value = vbChecked Then
    Call SendMessage(Combo1.hwnd, CB_SETEXTENDEDUI, 1, 0)
  Else
    Call SendMessage(Combo1.hwnd, CB_SETEXTENDEDUI, 0, 0)
  End If
  Combo1.SetFocus
End Sub
'---------- Ende Formular "Form1" alias Form1.frm  ----------
'-------------- Ende Projektdatei Project1.vbp --------------

Tipp-Kompatibilität:

Windows/VB-VersionWin32sWin95Win98WinMEWinNT4Win2000WinXP
VB4
VB5
VB6

Hat dieser Tipp auf Ihrem Betriebsystem und mit Ihrer VB-Version funktioniert?

Ja, funktioniert!

Nein, funktioniert nicht bei mir!

VB-Version:

Windows-Version:

Ihre Meinung  

Falls Sie Fragen zu diesem Artikel haben oder Ihre Erfahrung mit anderen Nutzern austauschen möchten, dann teilen Sie uns diese bitte in einem der unten vorhandenen Themen oder über einen neuen Beitrag mit. Hierzu können sie einfach einen Beitrag in einem zum Thema passenden Forum anlegen, welcher automatisch mit dieser Seite verknüpft wird.