VB中调整 Combo 下拉部分的宽度

发表于:2007-06-21来源:作者:点击数: 标签:
声明: Private Declare Function SendMessage Lib _ "USER32" Alias "SendMessageA" _ (ByVal hwnd As Long, ByVal Msg As Long, _ ByVal wParam As Long, ByVal lParam As Long) As Long Private Const CB_GETDROPPEDWIDTH = H15F Private Const CB_SETDRO

   

 声明:

Private Declare Function SendMessage Lib _

"USER32" Alias "SendMessageA" _

(ByVal hwnd As Long, ByVal Msg As Long, _

ByVal wParam As Long, ByVal lParam As Long) As Long

Private Const CB_GETDROPPEDWIDTH = &H15F

Private Const CB_SETDROPPEDWIDTH = &H160

Private Const CB_ERR = -1

   函数:

' 取得 Combo 下拉的宽度

' 可以利用该函数比例放大或缩小宽度

Public Function GetDropdownWidth(cboHwnd As Long) As Long

Dim lRetVal As Long

lRetVal = SendMessage(cboHwnd, CB_GETDROPPEDWIDTH, 0, 0)

If lRetVal <> CB_ERR Then

GetDropdownWidth = lRetVal

'单位为 pixels

Else

GetDropdownWidth = 0

End If

End Function

'设置 Combo 下拉的宽度

'单位为 pixels

Public Function SetDropdownWidth(cboHwnd As _

Long, NewWidthPixel As Long) As Boolean

Dim lRetVal As Long

lRetVal = SendMessage(cboHwnd, _

CB_SETDROPPEDWIDTH, NewWidthPixel, 0)

If lRetVal <> CB_ERR Then

SetDropdownWidth = True

Else

SetDropdownWidth = False

End If

End Function

原文转自:http://www.ltesting.net