Как определить нажатие кнопки мыши за пределами формы?
andriano
16.12.2007 19:34
Насколько мне известно, непосредственно это не делается. Разве что "подложить" под форму окно, распахнутое на весь экран, и получать сообщения уже от этого окна.
Кажется сам разобрался.
Создаём Timer1, В OnTimer пишем:
procedure TForm1.Timer1Timer(Sender: TObject);
var
MyMouse: TMouse;
MyPosX, MyPosY: integer;
sm:smallint;
begin
MyPosX := MyMouse.CursorPos.X;
MyPosY := MyMouse.CursorPos.Y;
Label8.Caption := IntToStr(MyPosX);
Label9.Caption := IntToStr(MyPosY);
sm := GetKeyState(VK_LBUTTON);
if OldZn <> sm then
begin
Label10.Caption := Label8.Caption;
Label11.Caption := Label9.Caption;
end;
OldZn:= sm;
end;
Не забываем создать глобальную OldZn: smallint;
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста,
нажмите сюда.