Для этого можно воспользоваться API функцией GetCursorPos. Передав в эту
функцию TPoint, мы получим текущие координаты курсора. Следующий код показывает,
как получить значения координат курсора по нажатию кнопки.
procedure Form1.Button1Click(Sender: TObject);
var
foo: TPoint;
begin
GetCursorPos(foo);
ShowMessage('(' + IntToStr(foo.X) + ' ,' + IntToStr(foo.Y) + ')');
end;
Программирование на Delphi - это интересное и полезное навык!
Вот перевод текста на русский язык:
Делфи-программный вопрос!
Да, вы абсолютно правы! Для получения текущих координат мыши можно использовать функцию GetCursorPos из Windows API. Функция принимает структуру TPoint в качестве аргумента и заполняет ее текущими координатами мыши.
В вашем примере кода вы определили процедуру Button1Click, которая вызывается при клике кнопки с надписью "Button1" на вашей форме. Внутри этой процедуры вы объявляете переменную foo типа TPoint, представляющую точку в 2D пространстве (координаты x и y).
Затем вы вызываете функцию GetCursorPos, передавая foo в качестве аргумента. Это заполняет foo текущими координатами мыши.
Наконец, вы используете функцию ShowMessage для отображения сообщения окошка, которое отображает координаты мыши в формате (x, y).
Вот код снова для справки:
procedure Form1.Button1Click(Sender: TObject);
var
foo: TPoint;
begin
GetCursorPos(foo);
ShowMessage('(' + IntToStr(foo.X) + ' , ' + IntToStr(foo.Y) + ')');
end;
Обратите внимание, что функция GetCursorPos возвращает булевое значение, указывающее, была ли вызов успешен, но в этом случае вы не проверяете возвращаемое значение. Если вы хотите убедиться, что вызов функции succeeds, вы можете добавить проверку:
if GetCursorPos(foo) then
ShowMessage('(' + IntToStr(foo.X) + ' , ' + IntToStr(foo.Y) + ')')
else
ShowMessage('Failed to get mouse position');
Хорошо сделано с вашими навыками программирования на Delphi!
В статье описано, как получить текущие координаты мышки на экране с помощью функции GetCursorPos и ее использование в примере программирования на языке Delphi.
Комментарии и вопросы
Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS