|
Такая ситуация: вы активизируете элемент ComboBox,
и курсорными стрелочками выбираете какой-либо
элемент. При этом ниспадающий список у вас не
появляется, а все элементы как бы прокручиваются
в основном окне ComboBox. Так? Так! А данный
пример позволяет вам автоматически открыть
ниспадающий список ComboBox'а для выбора
необходимой вам строчки. Вам понадобится (кроме ComboBox)
элемент CheckBox Private Declare Function SendMessageLong Lib "user32" Alias
"SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long,
ByVal lParam As Long) As Long
Private Const CB_GETEXTENDEDUI = &H156
Private Const CB_SETEXTENDEDUI = &H155
Public Property Let ComboExtendedUI(ByRef cboThis As ComboBox, ByVal bState As Boolean)
SendMessageLong cboThis.hwnd, CB_SETEXTENDEDUI, Abs(bState), 0
End Property
Public Property Get ComboExtendedUI(ByRef cboThis As ComboBox) As Boolean
ComboExtendedUI = (SendMessageLong(cboThis.hwnd, CB_GETEXTENDEDUI, 0, 0) <> 0)
End Property
Private Sub Check1_Click()
ComboExtendedUI(Combo1) = (Check1.Value = Checked)
End Sub
Private Sub Form_Load()
Dim i As Long
For i = 1 To 20
Combo1.AddItem "Test Item " & i
Next i
End Sub
|
|