![]() |
Модераторы: Snowy, MetalFan, bems, Poseidon |
![]() ![]() ![]() |
|
youriy86 |
|
||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 28.1.2011 Репутация: нет Всего: нет |
Здравствуйте.
У меня на форме лежит 2 компонента ListBox: TListBox и Edit: TEdit. Свойство ListBox.AutoComplete = true стоит по умолчанию. Когда я нажимаю клавишу с какой-либо буквой, находясь при этом на ListBox'е, он автоматически перескакивает на нужную мне запись, начинающуюся с этой буквы. Я хочу в Edit вводить текст, а в ListBox'e в этот момент должно происходить поиск записи, начинающейся с этой буквы, и установка ее в качестве выбранной. Пробовал так (чтобы имитировать событие KeyPress на ListBox'е):
Пробовал так:
Пробовал через SendMessage, но я так понял это то же самое. Ничего не получается. Вопрос: как имитировать возникновение события, которое уже заложено в коде (поиск по введенной с клавиатуры буквы) в ListBox'е с помощью Edit (ну или другого контрола, поддерживающего функцию ввода текста)? Помогите плиз. Это сообщение отредактировал(а) youriy86 - 22.12.2011, 17:59 |
||||
|
|||||
superVad |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 735 Регистрация: 6.4.2006 Где: Черкассы, Украина Репутация: 7 Всего: 15 |
Может что то такое подойдет:
|
|||
|
||||
youriy86 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 28.1.2011 Репутация: нет Всего: нет |
Это то понятно, что то что мне надо, можно сделать каким-нибудь похожим способом. Но вопрос то в другом, как имитировать наступление этого события у контрола
|
|||
|
||||
youriy86 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 28.1.2011 Репутация: нет Всего: нет |
ап
|
|||
|
||||
k0rvin |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 Репутация: нет Всего: 5 |
? -------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
|||
|
||||
MetalFan |
|
|||
![]() Аццкий Сотона ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3815 Регистрация: 2.10.2006 Где: Moscow Репутация: 22 Всего: 128 |
Ну во-первых кто будет lParam заполнять? во-вторых... если нужно сделать "редирект" сообщений, то почему бы не перекрыть оконную процедуру исходного винконтрола? -------------------- There are always someone smarter than you... |
|||
|
||||
youriy86 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 28.1.2011 Репутация: нет Всего: нет |
Я думал там достаточно 0 оставить. Что следует поставить? Я пробовал вставить SizeOf(Key) - не помогло.
Перекрыть оконную процедуру - это как? В смысле назначить ему событие OnKeyPress? Это сообщение отредактировал(а) youriy86 - 26.12.2011, 09:55 |
|||
|
||||
CROTishka |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 192 Регистрация: 30.7.2009 Репутация: нет Всего: 2 |
то что вы просите, делается в 2строчки:
Но сдаётся мне, вы не тем заняты. сага о x y и z : http://www.google.ru/url?sa=t&rct=j&am...7lsfV_FQDCrhJRw |
|||
|
||||
youriy86 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 28.1.2011 Репутация: нет Всего: нет |
Спасибо, работает, но мне хотелось бы еще текст в едите видеть.
Ну а насчет саги, я почитал, интересно ![]() |
|||
|
||||
CROTishka |
|
||||||
Бывалый ![]() Профиль Группа: Участник Сообщений: 192 Регистрация: 30.7.2009 Репутация: нет Всего: 2 |
А для чего там по-вашему строчка с inherited!?!? Значит вы что-то не так скопировали.
Как связана эта задача(постановка), и то, что вы просите? Держите:
|
||||||
|
|||||||
youriy86 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 28.1.2011 Репутация: нет Всего: нет |
Спасибо большое, все работает.
Добавлено @ 07:22
А что Вы думаете, насчет такого? У меня вроде работает. И я не понимаю для чего стоит обнуление текста у TEdit на KeyPress. Это сообщение отредактировал(а) youriy86 - 23.1.2012, 07:24 |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Для новичков" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |