Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2003.06.09;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.009 c
14-26736
МуМу
2003-05-22 17:14
2003.06.09
Поиск в массиве по значению?


14-26765
JibSkeart
2003-05-22 16:40
2003.06.09
Возрадуйся Superme2


8-26612
_Alex
2003-02-27 03:24
2003.06.09
Работа с графикой


1-26592
edicon
2003-05-19 23:29
2003.06.09
И снова Excel


1-26487
lightix
2003-05-29 15:06
2003.06.09
Передача данных в Excel из C++ Builder





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский