Delphi для всех

Различить правый и левый Ctrl

Для того, чтобы отличить нажат левый или правый Ctrl, нужно перехватить событие WM_KEYDOWN . В зависимости от состояния 24 - ого бита параметра LParam нажата правая или левая клавиша.

...
public
procedure WMKEYDOWN(var msg: TMessage); message WM_KEYDOWN;
end;
...

procedure TForm1.WMKEYDOWN(var msg: TMessage);
begin
if (msg.LParam and (255 shl 16)) shr 16 <> 29
then Exit;
if msg.LParam and (1 shl 24) > 0
then Form1.Caption := 'Right'
else Form1.Caption := 'Left';
end;

Хостинг от uCoz