Aptem |
Отправлено: 05.11.2003, 15:39 |
|
Мастер участка
Группа: Участник
Сообщений: 349
|
Привет !
Я обрабатываю событие OnKeyDown, то есть могу определить какая клавиша была нажата. Вопрос: А как определить, была ли нажата вместе с ней клавиша Shift ? В этот обработчик передается переменная TShiftState Shift, но я не понимаю как ее перехватить ?
Спасибо за внимание !!!
|
|
Asher |
Отправлено: 05.11.2003, 16:54 |
|
Мастер участка
Группа: Модератор
Сообщений: 550
|
В смысле перехватить?
Может просто расшифровать?
Просто читаем Help и смотрим примеры
Флаги состояния:
ssShift The Shift key is held down.
ssAlt The Alt key is held down.
ssCtrl The Ctrl key is held down.
ssLeft The left mouse button is held down.
ssRight The right mouse button is held down.
ssMiddle The middle mouse button is held down.
ssDouble The mouse was double-clicked.
Проверка состояния:
if (Shift.Contains(ssCtrl)){
//Бла-бла-бла
}
|
|
Aptem |
Отправлено: 06.11.2003, 04:47 |
|
Мастер участка
Группа: Участник
Сообщений: 349
|
QUOTE (Asher @ 05/11/2003, 17:56) | Проверка состояния:
if (Shift.Contains(ssCtrl)){
//Бла-бла-бла
} |
Вот именно это мне и нужно было...
Огромное спасибо !!!
|
|
Nimble |
Отправлено: 11.11.2003, 18:38 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 34
|
Если вдруг понадобится получить состояние какой-либо клавиши, можно использовать GetKeyState (не во всех функциях как параметр передается нажатая клавиша).
Я в проге, при нажатии на батон проверяю нажата ли клавиша контрол:
CODE |
if (GetKeyState(17)<0)
{
//чего-то там
}
|
может пригодится
Отредактировано Nimble — 11/11/2003, 19:40 |
|