Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Отловить нажатие клавиши, типа CMDialogKey 
:(
    Опции темы
EKoshelev
Дата 29.12.2004, 12:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 509
Регистрация: 1.9.2004

Репутация: нет
Всего: нет



Такая проблема. Мне нужно нажатие клавиш отлавливать, когда я работаю с Image (у неё там вроде нет никаких кейпрессов). Дак вот для отлавливания всяких табов и курсоров есть CMDialogKey для букв и цифр CMDialogChar (вроде), а вот как отловить Del, напирмер, я не знаю. Подскажите мне пожалуйста...


--------------------
Вежливым и адекватным предлагаю общаться на "ты".
PM MAIL   Вверх
Bes
Дата 29.12.2004, 13:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 806
Регистрация: 8.12.2004

Репутация: 5
Всего: 7



Ммм... не совсем понимаю как можно отлавливать нажатие клавиши, если там некуда нажимать.
т.е. нет ни setFocuse ни... ну вообщем как этот класс компонентов называется..?.. не помню короче, курсор туда некуда поставить. :-) (по колхозному так).
Можно отлавливать кейпресы у формы и др. компонентов и считать, что это нажали. Вообщем давай подумаем..
PM MAIL   Вверх
EKoshelev
Дата 29.12.2004, 13:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 509
Регистрация: 1.9.2004

Репутация: нет
Всего: нет



Bes, да ну я не очень понятно написал. На самом деле мне нужно чтобы обрабатывался какой-нибудь метод после нажатия какой-нибудь клавиши например del не взирая на то, где сейчас фокус.


--------------------
Вежливым и адекватным предлагаю общаться на "ты".
PM MAIL   Вверх
Bes
Дата 29.12.2004, 13:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 806
Регистрация: 8.12.2004

Репутация: 5
Всего: 7



Тогда... я бы написал обработчик кейапа у формы, а потом кейапы всех др. компонентов переадресовал (или как это правильно называется) на кейап формы.
PM MAIL   Вверх
EKoshelev
Дата 29.12.2004, 13:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 509
Регистрация: 1.9.2004

Репутация: нет
Всего: нет



Bes извращение. А если у меня их штук сто? Или двести? Там наверняк должно быть какое-нибудь сообщение Windows.


--------------------
Вежливым и адекватным предлагаю общаться на "ты".
PM MAIL   Вверх
Bes
Дата 29.12.2004, 13:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 806
Регистрация: 8.12.2004

Репутация: 5
Всего: 7



Хм... сомневаюсь, но спорить не буду - может быть. Однако каждый компонент отрабатывает события клавиатуры отдельно..... хотя... надо подумать.
Кстати, может ты не понял - обработчик-то пишется один - там просто в собтиях есть выпадающий список в которо можно выбрать эквивалентность событию... Все равно не катит?...
PM MAIL   Вверх
<Spawn>
Дата 29.12.2004, 13:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Око кары:)
****


Профиль
Группа: Экс. модератор
Сообщений: 2776
Регистрация: 29.1.2003
Где: Екатеринбург

Репутация: 44
Всего: 64



У формы поставь KeyPreview в True, после чего напиши необходимый тебе код в нужных обработчиках формы, в которых тебе нужно будет иметь идентификатор того, что ты в данный момент работаешь с TImage(например отлавливать момент вхождения курсора в область TImage)


--------------------
"Для некоторых людей программирование является такой же внутренней потребностью, подобно тому, как коровы дают молоко, или писатели стремятся писать" - Николай Безруков.
PM MAIL ICQ   Вверх
EKoshelev
Дата 29.12.2004, 13:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 509
Регистрация: 1.9.2004

Репутация: нет
Всего: нет



Bes, понял, конечно. Не катит.

<Spawn>, попробую.


--------------------
Вежливым и адекватным предлагаю общаться на "ты".
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0448 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.