Exibindo a lista de opções de uma Combo Box ao receber o foco


Que tal abrir a lista opções de um controle Combo box automaticamente quando ele receber o foco.

Simples e rápido. Vamos ao projeto e ao  código:

Insira o seguinte código no formulário:

Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg _ As Long, ByVal wParam As Long, lParam As Any) As Long
Private Const WM_USER = &H400
Private Const CB_SHOWDROPDOWN = WM_USER + 15
Private Sub Form_Load()
Dim i As Integer
' preenche combo
For i = 0 To 10
    Combo1.AddItem " Dia " & i
Next
Combo1.ListIndex = 0
End Sub
Private Sub Combo1_GotFocus()
Dim ret
'mostra
ret = SendMessage(Combo1.hwnd, CB_SHOWDROPDOWN, 1, ByVal 0&)
End Sub
Private Sub Combo1_GotFocus()
Dim ret
'mostra
ret = SendMessage(Combo1.hwnd, CB_SHOWDROPDOWN, 1, ByVal 0&)
End Sub

Ao executar o projeto quando a combo receber  foco teremos:

Tchau.. ,