Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.06.09;
Скачать: CL | DM;

Вниз

Определение состояния функциональных клавиш   Найти похожие ветки 

 
Deedlit ©   (2003-04-04 13:05) [0]

Как узнать в определенный момент, нажат ли Ctrl, Shift? В обработчике НЕТ константы TShiftState, специально это подчеркиваю после общения в местном чате. :)

Есть функции GetKeyState и GetKeybaordState. Первая возвращает состоянии конкретной клавиши (код клавиши передается в параметре), вторая - состояние всей клавиатуры в виде массива.

1) Как проанализировать возвращаемое GetKeyState значение? Там написано: анализ верхнего бита. Я в затруднении. :(

2) Какой массив нужен для GetKeyboardState? И как в нем найти нужные адреса клавиш, функциональных в том числе?

Помогите, мастаки-программисты. :)


 
Barmutik ©   (2003-04-04 13:24) [1]

Функция возвращающая состояние функциональных клавиш в любое время.

function GetShiftState: TShiftState;
begin
Result := [];
if GetKeyState(VK_SHIFT) < 0 then Include(Result, ssShift);
if GetKeyState(VK_CONTROL) < 0 then Include(Result, ssCtrl);
if GetKeyState(VK_MENU) < 0 then Include(Result, ssAlt);
end;


 
Deedlit ©   (2003-04-04 15:56) [2]

Нефиг нафиг пополам... [озадаченно] Работает! Спасибо огромное!



Страницы: 1 вся ветка

Текущий архив: 2003.06.09;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.013 c
1-26581
Corsair
2003-05-28 13:54
2003.06.09
Свойство Color у класса tControl


14-26731
neg2001
2003-05-22 10:55
2003.06.09
Где можно бесплатно взять какой-нибудь UpdatePack для Delphi7


1-26460
Yanis
2003-05-28 21:34
2003.06.09
Вопрос: Как убить процесс?


3-26330
Reals
2003-05-19 14:29
2003.06.09
Как узнать какое значение добавилось в поле AutoNumber базы...


4-26843
Codex
2003-04-11 16:59
2003.06.09
SendMessage. Не работает текст. обмен между процессами