The Unofficial Newsletter of Delphi Users - by Robert Vivrette

Нажата ли кнопка  Shift ...

By Matt Hamilton - MHamilton@bunge.com.au

Перевод Руденко Е.В.   janer@newmail.ru    июнь 2001 года

 

Если вы хотите, чтобы кнопка или пункт меню выполнял другую функцию при нажатой кнопке  shift , вы можете использовать функцию GetKeyState .

GetKeyState принимает в качестве параметра виртуальный код кнопки и возвращает значение меньше 0, если кнопка нажата.

Вот пример события  OnClick для кнопки:

procedure Form1.Button1Click(Sender: TObject);
begin
   if GetKeyState(VK_SHIFT) < 0 then

      ShowMessage('Кнопка Shift нажата')
   else
      ShowMessage('Обычное нажатие кнопки');
end;
Отмечу, что вы можете также использовать параметры VK_CONTROL или VK_MENU для проверки нажатия кнопок control и  alt,  соответственно!

С приветом,
    Matt Hamilton

Возврат в Tips&Tricks