Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[52.91.0.68] |
|
Сообщ.
#1
,
|
|
|
А точнее число строк в нём. Как?
|
Сообщ.
#2
,
|
|
|
Примерно вот так, с учетом нескольких замечаний:
1) "Выкрутасы" с окольным определением клиентских координат комбобокса через GetWindowRect и ScreenToClient являются излишними, т.к. после переключения ScaleMode формы в vbPixels в функцию MoveWindow можно непосредственно передавать значения свойств Left, Top и Width самого комбобокса. 2) Определение требуемой высоты списка в пикселах как itemHeight*(numItemsToDisplay + 2) является какой-то непонятной эвристикой. Стандартная формула (используемая в сырцых дельфи и в некоторых примерах VB) выглядит так: newHeight = Combo1.Height + itemHeight*numItemsToDisplay + 2 3) Для того, чтобы это изменение работало не по отдельной кнопке, а автоматически, можно поместить этот код в событие DropDown самого комбобокса. При этом последний вызов SendMessage для посылки сообщения CB_SHOWDROPDOWN следует убрать. |
Сообщ.
#3
,
|
|
|
С ComboBox работает, спасибо! А применил к ImageCombo - не работает (
|