|
Вопрос # 5 394/ вопрос открыт / |
|
Доброго времени суток, уважаемые эксперты!
Щас задам глупый вопрос, бо жара - сил нету.
Имеем на форме несколько Edit'ов и Memo'в. У каждого прописан обработчик OnKeyPress . Запустили, тискаем клавишу. Кто это должен обрабатывать? У кого фокус ввода ? А если ни у кого ? К примеру, голая фориа, тискаю одну клавишу, она по ней запускает одну подчиненную форму, другую клавишу - другую.
Делал небольшую программулинку, эту ситуевину обработал другим способом, но вопрос остался.
Min@y, не ругайся сильно. Жара, разжижение мозгов...
 |
Вопрос задал: Толяныч (статус: 4-ый класс)
Вопрос отправлен: 9 июня 2011, 14:42
Состояние вопроса: открыт, ответов: 0.
|
Мини-форум вопроса
Всего сообщений: 5; последнее сообщение — 9 июня 2011, 15:27; участников в обсуждении: 3.
|
min@y™ (статус: Доктор наук), 9 июня 2011, 14:46 [#1]:
Если нужна одна на всех реакция на клавиши, пиши один обработчик OnKeyPress для формы и поставь у неё KeyPreview = True.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
Вадим К (статус: Академик), 9 июня 2011, 14:47 [#2]:
Цитата:
Имеем на форме несколько Edit'ов и Memo'в. У каждого прописан обработчик OnKeyPress . Запустили, тискаем клавишу. Кто это должен обрабатывать? У кого фокус ввода ? А если ни у кого ?
Фокус ввода у кого то обязательно есть. Форме тоже можно прописать OnKeyPress
Галочка "подтверждения прочтения" - вселенское зло.
|
|
Толяныч (статус: 4-ый класс), 9 июня 2011, 15:00 [#3]:
Да, я это уже поймал. Но вопрос раздвоился :
1) Если есть несколько окон, могущих в принципе иметь фокус ввода, можно ли им всем запретить его иметь, чтобы ввод шел именно в OnKeyPress формы ?
2) На служебные клавиши вверх, вниз и т.п. нет реакции. Как к ним добраться ?
|
|
min@y™ (статус: Доктор наук), 9 июня 2011, 15:07 [#4]:
Цитата (Толяныч):
Если есть несколько окон, могущих в принципе иметь фокус ввода, можно ли им всем запретить его иметь, чтобы ввод шел именно в OnKeyPress формы ?
Да, можно, если в OnKeyPress формы присваивать Key:= #0;
Цитата (Толяныч):
На служебные клавиши вверх, вниз и т.п. нет реакции. Как к ним добраться ?
Через OnKeyDown и OnKeyUp.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
Толяныч (статус: 4-ый класс), 9 июня 2011, 15:27 [#5]:
Спасибо всем. Почти понял.
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|