Помощь - Поиск - Пользователи - Календарь
Полная версия: Мышь за пределами формы
Форум «Всё о Паскале» > Современный Паскаль и другие языки > Делфи
-Роман-
Как определить нажатие кнопки мыши за пределами формы?
andriano
Насколько мне известно, непосредственно это не делается. Разве что "подложить" под форму окно, распахнутое на весь экран, и получать сообщения уже от этого окна.
-Роман-
Кажется сам разобрался.

Создаём 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;
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.