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

Вниз

Нажатие несколький кнопок   Найти похожие ветки 

 
Sysanin   (2005-09-24 20:58) [0]

Как мне отловить то что нажато две или три кнопки одновременно. С одной всё ясно.


 
PAVIA ©   (2005-09-24 22:00) [1]

Когда кнопка нажата помечаешь, что она ножата. Когда ее отпустили записывашь что ее отпустили.
var
 ke:set  of char;
//....
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
 Shift: TShiftState);
begin
ke1:=ke1+[Char(Key)];

if (["A","B"] <= ke1) then caption:="A+B"
else if ("A" in ke1) then caption:="A"
else if ("B" in ke1) then caption:="B"
else caption:="";
end;

procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word;
 Shift: TShiftState);
begin
ke1:=ke1-[Char(Key)];

if (["A","B"] <= ke1) then caption:="A+B"
else if ("A" in ke1) then caption:="A"
else if ("B" in ke1) then caption:="B"
else caption:="";
end;


 
RzCoDer ©   (2005-09-24 23:40) [2]

Хе, больше одной кнопки за раз тебе нажать не удастся! Если тока на серверах с несколькими процессорами.


 
Eraser ©   (2005-09-24 23:43) [3]


> RzCoDer ©   (24.09.05 23:40) [2]
>
> Хе, больше одной кнопки за раз тебе нажать не удастся! Если
> тока на серверах с несколькими процессорами.

Да и там события/сообщения будут синхронизированы )


 
Lamer@fools.ua ©   (2005-09-25 00:07) [4]

>>Sysanin   (24.09.05 20:58)

GetKeyboardState()
?


 
Lamer@fools.ua ©   (2005-09-25 00:09) [5]

+
GetAsyncKeyState(), GetKeyState()


 
Германн ©   (2005-09-25 00:53) [6]

Имхо.
Первое - следует уточнить вопрос.
Второе - одновременность понятие недостижимое для стандартных устройств типа клавиатуры. Можно лишь обсуждать вопрос "сколько и какие кнопки в данный момент нажаты".


 
Marser ©   (2005-09-25 01:11) [7]

Вообще-то то, что на клавиатуре россыпью, называется клавишами и этот вопрос в достаточной степени осветил г-н Lamer@fools.ua. Кнопку-button нажать в один момент времени можно только одну.


 
Германн ©   (2005-09-25 01:27) [8]

2 Marser ©   (25.09.05 01:11) [7]
Как "железячник" по способу зарабатывания денег, могу только повторить [6].


 
Lamer@fools.ua ©   (2005-09-25 01:41) [9]

>>Германн ©   (25.09.05 00:53) [6]

В данном случае то, что кнопки нажаты одновременно, означает их состояние, а не производимое над ними действие. Я так понял вопрос.


 
Германн ©   (2005-09-25 02:20) [10]

Удалено модератором
Примечание: Личная переписка


 
TStas ©   (2005-09-25 02:30) [11]

Может, о SpeedButton идет речь. Их-то хоть сколько вдавть можно. Так у них свойство down есть. Или о Shift?


 
Lamer@fools.ua ©   (2005-09-25 02:31) [12]

Удалено модератором
Примечание: Личная переписка


 
Германн ©   (2005-09-25 02:46) [13]

Удалено модератором
Примечание: Личная переписка


 
Lamer@fools.ua ©   (2005-09-25 10:11) [14]

Удалено модератором
Примечание: Личная переписка


 
Sysanin   (2005-10-04 19:33) [15]

Большое спасибо за ответы в ближайшем будущем разберусь с советами



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

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

Наверх




Память: 0.49 MB
Время: 0.029 c
3-1126980946
WonderfulDay
2005-09-17 22:15
2005.10.30
Insufficient memory for this operation.


14-1128890070
NightLord
2005-10-10 00:34
2005.10.30
Баг в WinXP Sp2


4-1125147958
kami
2005-08-27 17:05
2005.10.30
Как передать содержимое файла в Clipboard


1-1128704698
Kostafey
2005-10-07 21:04
2005.10.30
Преобразование типа pointer в указатель метода.


14-1129120736
CHES
2005-10-12 16:38
2005.10.30
Помогите с переводом