| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Delphi 6 Enterprise Update pack 2 + WinXP SP1 |
| Автор: Alex 24.2.2005, 00:29 | ||||
| Delphi 6 Enterprise Update pack 2 + WinXP SP1 В Delphi 7 не замечено Если в обычном TListBox включить AutoComplete:=True, то, согласно справке (и исходникам) когда я нажимаю в нем алфавитно-цифровые клавиши, он должен "искать" строку, которая начинается с введенных символов. (см. procedure TCustomListBox.KeyPress) Но, если в списке есть две строки начинающиеся с одного символа -- фокус устанавливается всегда на ВТОРУЮ. Думаю, дело в том, что после "поиска" строки методами VCL, срабатывет также стандартный поиск "виндовсовского" контрола List Box. Вроде-бы для предотвращения этого в указанной TCustomListBoxKeyPress есть следующие строки:
Но они почему-то не срабатывают. Если же отключить AutoComplete, то работает только стандарный "поиск" контрола Windows и все в порядке. Но искать он в отличие от TListBox умеет только по первой букве. :-( Решение: Написал потомка от TCustomListBox чтобы не править VCL
|