Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.03.2010, 13:46   #1
VadEr
Форумчанин
 
Аватар для VadEr
 
Регистрация: 24.03.2009
Сообщений: 375
По умолчанию ComboBox (Delphi)

Добрый день!

Подскажите пожалуйста, как увеличить размер выпадающего списка в ComboBox, что бы полностью видеть строку, которая не помещается?

Последний раз редактировалось VadEr; 16.03.2010 в 14:09.
VadEr вне форума Ответить с цитированием
Старый 16.03.2010, 14:34   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Ну увеличь свойство Width самого комбика.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.03.2010, 14:34   #3
Костя КС
Пользователь
 
Аватар для Костя КС
 
Регистрация: 22.01.2008
Сообщений: 78
По умолчанию

dropDownCount если я правильно понял
Костя КС вне форума Ответить с цитированием
Старый 16.03.2010, 15:21   #4
VadEr
Форумчанин
 
Аватар для VadEr
 
Регистрация: 24.03.2009
Сообщений: 375
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Ну увеличь свойство Width самого комбика.
не увеличивая компонент, только выпадающий список

Цитата:
Сообщение от Костя КС Посмотреть сообщение
dropDownCount если я правильно понял
к сожалению это свойство показывает кол-во колонок в выпадающем списке, а нужно увеличить ширину вып.списка без изменения ширины комбика

Последний раз редактировалось VadEr; 16.03.2010 в 15:26.
VadEr вне форума Ответить с цитированием
Старый 16.03.2010, 15:41   #5
Костя КС
Пользователь
 
Аватар для Костя КС
 
Регистрация: 22.01.2008
Сообщений: 78
По умолчанию

Теперь понял.

Вот такая штука есть,
вроде работает:

Код:
procedure TForm1.ComboBox1DropDown(Sender: TObject);
var i,L,mwidth:integer;
begin
mwidth:=0;
   with ComboBox1 do
   begin
     for i := 0 to Items.Count - 1 do
     if ( Form1.Canvas.TextWidth(Items[I]) > mWidth) then
       mWidth :=Form1.Canvas.TextWidth(Items[I])+ 100;
   SendMessage(ComboBox1.Handle ,$0160,mWidth,0);
   end;
end;
Костя КС вне форума Ответить с цитированием
Старый 16.03.2010, 16:03   #6
VadEr
Форумчанин
 
Аватар для VadEr
 
Регистрация: 24.03.2009
Сообщений: 375
По умолчанию

Спасибо, заработало!

Но не совсем понятно, что эта ф-ция делает:
SendMessage(ComboBox1.Handle ,$0160,mWidth,0); и что такое $0160?
VadEr вне форума Ответить с цитированием
Старый 16.03.2010, 16:25   #7
Костя КС
Пользователь
 
Аватар для Костя КС
 
Регистрация: 22.01.2008
Сообщений: 78
По умолчанию

SendMessage - API функция,отправление системного сообщения windows.
сначала Handle объекта, затем параметр (код $0160 тоже самое, что CB_SETDROPPEDWIDTH) и значение (mWidth - длина самой большой строки + 100)

Я не очень хорошо знаком с этим, надеюсь ничего не напутал.
При желании можно много найти по этой теме.
Костя КС вне форума Ответить с цитированием
Старый 16.03.2010, 16:53   #8
VadEr
Форумчанин
 
Аватар для VadEr
 
Регистрация: 24.03.2009
Сообщений: 375
По умолчанию

OK, разобрался
там можно просто 352 написать в десятеричной системе)))
VadEr вне форума Ответить с цитированием
Старый 25.04.2015, 22:28   #9
sam_as
Новичок
Джуниор
 
Регистрация: 29.05.2013
Сообщений: 1
По умолчанию

То что надо-спасибо , и мне помогло !!!
sam_as вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с combobox (delphi) JNLYSk Помощь студентам 15 26.06.2012 20:21
Delphi компонент ComboBox severin Общие вопросы Delphi 12 08.10.2010 20:19
[Win32 API/Delphi] Нужна помощь с combobox ereality Win Api 8 07.11.2009 22:48
Фильтрация в Delphi с помощью Combobox Веснушка_ната Помощь студентам 4 07.04.2009 02:36
Не могу внести строку из combobox в combobox!? tacer Помощь студентам 1 30.11.2007 19:45