![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
VCL: (ssCtrl in shift); KOL: ? [Delphi, Windows]
Revolter © (2003-09-17 15:05:00)в VCL обработчик события нажатие клавиши Ctrl: (ssCtrl in shift), а как в KOL?
Gandalf (2003-09-20 20:14:00) [1]На самом деле можешь скажем сделать так:
TShiftStates=(ssRes1,ssRes2,ssShift,ssCtrl,ssRes3,ssAlt);
TShiftState=set of TShiftStates;
Ну и привидя тип TShiftState(Shift) можешь работать как с множеством.
(ssCtrl in TShiftState(shift))
Revolter (2003-09-20 18:46:00) [2]как сложно, однако..
спасибо
Gandalf (2003-09-20 10:31:00) [3]Можно так:
procedure TForm1.ListBox1KeyDown(Sender: PControl; var Key: Integer;
Shift: Cardinal);
begin
if (Shift and 4)=4 then
begin
ListBox1.Items[0]:='Shift +';
end
else
begin
ListBox1.Items[0]:='Shift -';
end;
if (Shift and 8)=8 then
begin
ListBox1.Items[1]:='Ctrl +';
end
else
begin
ListBox1.Items[1]:='Ctrl -';
end;
if (Shift and 32)=32 then
begin
ListBox1.Items[2]:='Alt +';
end
else
begin
ListBox1.Items[2]:='Alt -';
end;
end;