HeightComboDrop




Call SetComboHeight(Combo1, 1450)

'Declarations

'Paste this into the declarations section of a module:


Public 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

Public Sub SetComboHeight(oComboBox As ComboBox, _
lNewHeight As Long)
Dim oldscalemode As Integer
' This procedure does not work with frames: you

' cannot set the ScaleMode to vbPixels, because

' the frame does not have a ScaleMode Property.

' To get round this, you could set the parent control

' to be the form while you run this procedure.

If TypeOf oComboBox.Parent Is Frame Then Exit Sub
' Change the ScaleMode on the parent to Pixels.

oldscalemode = oComboBox.Parent.ScaleMode
oComboBox.Parent.ScaleMode = vbPixels
' Resize the combo box window.

MoveWindow oComboBox.hwnd, oComboBox.Left, _
oComboBox.Top, oComboBox.Width, lNewHeight, 1
' Replace the old ScaleMode

oComboBox.Parent.ScaleMode = oldscalemode
End Sub

This sub uses the MoveWindow API to set the height
of the dropdown area of a combo box. Use this sub
what you like: it does not have to be in the combos
dropdown event.

To use this tip, call the SetComboHeight procuedure
with the name of the combo box you wish to edit, and
the size in pixels that the dropdown area should be
set to. For Example:










( heightcombodrop.html )- by Paolo Puglisi - Modifica del 17/12/2023