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

Вниз

Нажатие Ctrl?   Найти похожие ветки 

 
User   (2003-05-13 12:01) [0]

Привет всем!

как определить нажата ли системная клавиша (Ctrl,Shift,Alt)
или их комбинация?


Спасибо.


 
Andrews ©   (2003-05-13 12:32) [1]

Примерно так

procedure TForm.FormKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
case Key of
<Код клавиши> : if (ssCtrl in Shift) then ...
end;
end;

P.S. Смотри хелп по TShiftState


 
User   (2003-05-13 12:42) [2]

вообщето я отлавливаю нажатие клавы при щелчке на Title DBGrid"а, и как то этот вариант не очень устраивает, а средствами API это не сделать?


 
Bel ©   (2003-05-13 12:52) [3]

Параматр Shift есть и у обработчиков событий OnMouseDown и OnMouseUp. Проверять его там - самое простое.


 
Andrews ©   (2003-05-13 12:53) [4]

Коллега Bel абсолютно прав :o)


 
han_malign ©   (2003-05-13 12:54) [5]

запоминать ShiftState по OnKeyDown/OnKeyUp
WinAPI - смотри GetKeyState


 
dtrn   (2003-05-13 22:50) [6]

Form KeyPreview = TRUE

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if ssCtrl in Shift then
StatusBar1.SimpleText:="Ctrl"
else
if ssShift in Shift then
StatusBar1.SimpleText:="Shift";
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.017 c
1-83591
alexy
2003-05-14 13:51
2003.05.26
как распечатать StringGrid7


1-83602
Imshanya
2003-05-14 13:25
2003.05.26
Хочу добавить форме published property


1-83536
LMD
2003-05-13 17:37
2003.05.26
Народ, кто знает, как разместить картинку поверх текстового поля?


3-83347
Rocker
2003-04-28 10:34
2003.05.26
как программно ввести пароль при доступе к БД?


6-83628
LORD
2003-03-26 20:31
2003.05.26
сервер + куча клиентов