7,785
社区成员




Private Const GWL_STYLE = (-16)
Private Const GW_CHILD = 5
Private Declare Function GetWindow Lib "user32" (ByVal hwnd As Long, ByVal wCmd As Long) As Long
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
Private Declare Function DestroyWindow Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function CreateWindowEx Lib "user32" Alias "CreateWindowExA" (ByVal dwExStyle As Long, ByVal lpClassName As String, ByVal lpWindowName As String, ByVal dwStyle As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hWndParent As Long, ByVal hMenu As Long, ByVal hInstance As Long, lpParam As Any) As Long
Const SW_HIDE = 0
Const SW_SHOW = 5
'将 ComboBox 的 Style 改为 2 - DropdownList
Private Sub Command1_Click()
Dim ChildHwnd As Long
Combo1.AddItem "One"
Combo1.AddItem "Two"
ChildHwnd = GetWindow(Combo1.hwnd, GW_CHILD) '取edit句柄
Call DestroyWindow(ChildHwnd) 'Kill edit窗口
'改变cmbDropList的Style,这一语句可有可无~~~~,
'Call SetWindowLong(Combo1.hwnd, GWL_STYLE, GetWindowLong(Combo1.hwnd, GWL_STYLE) + 1)
End Sub