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

Вниз

Определение нажатой клавиши   Найти похожие ветки 

 
snake_r   (2005-02-09 09:16) [0]

Здравствуйте! подскажите, как можно при загрузке приложения определить нажатали в данный момент какаято клавиша?
например как сделано для автозагрузки CD, т.е. если нажат shift то автозагрузка непроисходит.
Примерно такуюже штуку я хочу сделать в своем приложении, т.е. чтобы при запуске определять нажата ли определенная клавиши, и если нажата, то например пропустить процедуру проверки.


 
begin...end ©   (2005-02-09 09:19) [1]

> snake_r   (09.02.05 9:16)

См. в справке описание API-функций GetAsyncKeyState и GetKeyboardState.


 
snake_r   (2005-02-09 09:27) [2]

нету в справке у меня таких :((


 
begin...end ©   (2005-02-09 09:29) [3]

> snake_r   (09.02.05 9:27) [2]

Help -> Windows SDK.


 
ghg ©   (2005-02-09 09:30) [4]

написано же что API
то бишь смотри в MSDN


 
snake_r   (2005-02-09 09:35) [5]

гдеб его еще взять :)
может кто ссылку кинет на примерчик или описание ??


 
КаПиБаРа ©   (2005-02-09 09:40) [6]

snake_r   (09.02.05 9:35) [5]
может кто ссылку кинет на примерчик или описание ??


www.yandex.ru


 
begin...end ©   (2005-02-09 09:44) [7]

> snake_r   (09.02.05 9:35) [5]

1. Запустите Delphi. Выберите пункт меню "Help", а в нём - пункт "Windows SDK". В открывшемся окне выберите вкладку "Предметный указатель", установите курсор в поле ввода и наберите название какой-нибудь из предложенных функций. Нажмите клавишу "Enter".

2. Зайдите на сайт http://www.msdn.com . Установите курсор в поле ввода справа и наберите название какой-нибудь из предложенных функций. Выберите пункт "MSDN Library" и нажмите кнопку "Go". В открывшемся окне с результатами поиска выберите первую ссылку с результатом.

3. Зайдите на сайт http://www.ya.ru . Установите курсор в поле ввода справа и наберите название какой-нибудь из предложенных функций. Нажмите кнопку "Найти". Просмотрите появившееся окно с результатами поиска и выберите наиболее подходящую ссылку.


 
snake_r   (2005-02-09 09:48) [8]

так подробно
аш жуть :)

тока вот проблемма
эти функции не работают если я их вставляю в сервис :(
т.е. на событие страрта сервиса я делаю вызов
if GetAsyncKeyState(VK_LCONTROL)<>0 then
 Begin
  AssignFile(f,"c:\log.txt");
  rewrite(f);
  Writeln(f,"key pressed");
  closeFile(f);
 end;

но файлика не создается :(


 
begin...end ©   (2005-02-09 09:56) [9]

> snake_r   (09.02.05 9:48) [8]

Версия Windows - ?


 
snake_r   (2005-02-09 09:57) [10]

XP
в описании написано
The return value is zero if a window in another thread or process currently has the keyboard focus.

а т.к. я запускаю сервис, то кейбоард фокус ваще непонятно кто имеет :(

как быть??


 
КаПиБаРа ©   (2005-02-09 10:02) [11]

GetKeyboardState


 
snake_r   (2005-02-09 10:06) [12]

GetKeyState !!
помогло!
пработает зашибись :)
спасибо за помощь



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

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

Наверх




Память: 0.49 MB
Время: 0.041 c
14-1107432945
Usser
2005-02-03 15:15
2005.02.27
Маловато будет?


6-1103163658
Rat
2004-12-16 05:20
2005.02.27
Запуск приложения с другого компьютера


1-1108475251
BFG9k
2005-02-15 16:47
2005.02.27
Как найти место ошибки по адресу?


6-1103178655
DelphiN!
2004-12-16 09:30
2005.02.27
Передача файла по сети размером более 1 ГБ


14-1107704718
Aldor_
2005-02-06 18:45
2005.02.27
Измерить объективное расстояние между пикселами на экране