|
[ Главная ] [ Статьи ] [ Для новичков ] [ Примеры ] [ Программы ] [ Microsoft Agent 2.0 ] [ Пособие ] [ Уроки ] [ Разное ] |
Изменение высоты выпадающей части комбобокса. Данный пример покажет, как можно изменить высоту выпадающей части элемента ComboBox в зависимости от высоты формы, на которой элемент расположен.
Следующий пример покажет, как можно задать количество открываемых строк элемента ComboBox Private 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 ReSizeCombo(frm As Form, cbo As ComboBox, n As Integer) 'Процедура меняет размер выпадающей части комбобокса Dim cboLeft As Long Dim cboTop As Long Dim cboWidth As Long Dim cboHeight As Long Dim oldScaleMode As Long Dim h As Long 'Меняем Scale Mode формы на пиксели. oldScaleMode = frm.ScaleMode frm.ScaleMode = vbPixels 'Сохраняем размеры комбобокса cboLeft = cbo.Left cboTop = cbo.Top cboWidth = cbo.Width 'Получаем высоту одной строчки в пикселях h = SendMessage(cbo.hwnd, CB_GETITEMHEIGHT, 0, 0) 'Задаем новую высоту комбобокса 'К количеству строк надо прибавить 2 (не знаю почему) cboHeight = h * (n + 2) frm.ScaleMode = oldScaleMode 'и собственно ресайзаем MoveWindow cbo.hwnd, cboLeft, cboTop, cboWidth, cboHeight, 1 End Sub |
|
|
|
>>>Если у вас есть статья которой нет на сайте
пришлите ее мне--------> Послать статью >>>Если вы хотите задать вопрос пишите--------> Мне нужна помощь |
|
|
|