Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.012 c
3-26404
Alexey
2003-05-21 16:31
2003.06.09
Фильтр


1-26430
nemec
2003-05-28 17:46
2003.06.09
Как убивать выскакивающие ошибки


8-26624
Lex.
2003-02-25 21:17
2003.06.09
MP3


3-26411
equites
2003-05-21 18:22
2003.06.09
Фильтрация (чуть более, чем обычно)


14-26760
sosv
2003-05-21 12:06
2003.06.09
Кто-нибудь знает как помеять в XP буву CD-ROM-а ?




   Наверх