Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.07.07;
Скачать: CL | DM;

Вниз

TComboBoxEx   Найти похожие ветки 

 
SVM   (2003-06-22 22:40) [0]

Народ, у меня возникла такая проблема. В TComboBoxEx необходимо автозаполнение. В стандартном компоненте TComboBox есть свойство AutoComplete, а в TComboBoxEx нет его. Пробовал реализовать автозаполнение вручную, но возникли проблемы с выделением текста. Может кто-то сталкивался с этой проблемой. Возможно, существуют компоненты где это есть, если это так то сообщите пожалуйста.


 
Ученик ©   (2003-06-22 22:50) [1]

В Delphi 7 оно называется AutoCompleteOptions

и установка происходит через интерфейс IAutoComplete2



 
Тих   (2003-06-22 22:57) [2]

Все нижеизложенное, кроме второго варианта, я на практике не применял.

1) Можно поискать алгоритм заполнения обычного комбобокса на каком-нить яндексе.
2) Вариант посложнее, но работает быстро - имитировать комбобокс при помощи составного самодельного контрола, склеенного из EDIT и LISTBOX, а listbox обрабатывает два нужных нам сообщения - LB_FINDSTRING и LB_FINDSTRINGEXACT. Стрелка отрисовывается на канве едита методом DrawFrameControl, listbox хэндлом родителя имеет десктоп, Ctl3D = false.
3) Ну и наконец, можно использовать дармовой интерфейс IAutoComplete (версия Shell нужна не ниже 5.0) - заполнение будет происходить автоматом и красиво, как в IE.


 
Song ©   (2003-06-22 23:26) [3]

А в чём причина использовать именно TComboBoxEx, а не TComboBox ?


 
SVM   (2003-06-24 22:55) [4]

2Song: Насколько я знаю в TComboBox нельзя простым способом вставить иконки.


 
SVM   (2003-06-24 22:57) [5]

2Tix: Слушай, а можешь поделиться исходниками?


 
Song ©   (2003-06-25 08:29) [6]

2SVM (24.06.03 22:55)
Да, запросто, обрабатывай TComboBox.onDrawItem. Всего кода на 6 строк.



Страницы: 1 вся ветка

Текущий архив: 2003.07.07;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
3-20001
DmitryNekl
2003-06-13 13:10
2003.07.07
Как создать connectionstring у компонента ADOConnection в runtime


7-20336
Yanis
2003-04-24 14:29
2003.07.07
Как написать на экране?


1-20150
DevMaster
2003-06-24 14:57
2003.07.07
TTreeView


3-19957
werr
2003-06-10 14:37
2003.07.07
Как переиндескировать?


4-20351
circul
2003-05-03 16:06
2003.07.07
Проблема с прорисовкой клиентской обл. окна.