ComboBoxSetHeight – Set a new height for the list portion of a ComboBox control

Private Type RECT   Left As Long   Top As Long   Right As Long   Bottom As LongEnd TypePrivate Declare Function GetWindowRect Lib "user32" (ByVal hWnd As Long, _    lpRect As RECT) As LongPrivate Declare Function ScreenToClientAny Lib "user32" Alias "ScreenToClient" _    (ByVal hWnd As Long, lpPoint As Any) As LongPrivate Declare Function MoveWindow Lib "user32" (ByVal hWnd As Long, _    ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, _    ByVal nHeight As Long, ByVal bRepaint As Long) As Long' Set a new height for the list area of a ComboBox control'' NEWHEIGHT is measured in pixelsSub ComboBoxSetHeight(CB As ComboBox, ByVal newHeight As Long)    Dim lpRect As RECT    Dim wi As Long        ' get combobox rectangle, relative to screen    GetWindowRect CB.hWnd, lpRect    wi = lpRect.Right - lpRect.Left        ' convert to form's client coordinates    ScreenToClientAny CB.Parent.hWnd, lpRect        ' enforce the new height    MoveWindow CB.hWnd, lpRect.Left, lpRect.Top, wi, newHeight, TrueEnd Sub

Share the Post:
Share on facebook
Share on twitter
Share on linkedin

Overview

Recent Articles: