Главная страница
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.036 c
3-1102280917
bambry
2004-12-06 00:08
2005.02.27
не сохраняются данные


14-1107950398
Cheater
2005-02-09 14:59
2005.02.27
Проблема с запуском DVD


1-1107942735
gen
2005-02-09 12:52
2005.02.27
Вывод PDF-документа.


1-1107938331
hgd
2005-02-09 11:38
2005.02.27
Перевод миллисекунд в часы


1-1108105435
Zloy
2005-02-11 10:03
2005.02.27
Удаление иконки с трея