Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения
KANSoftWare

Текущая позиция окна

Delphi , Программа и Интерфейс , Размеры и Положение

Текущая позиция окна

Автор: Mike Scott

Текущую позицию можно получить от холста, используя Windows API функцию GetCurrentPosition:


CurrentX := LoWord( GetCurrentPosition( Canvas.Handle ) ) ;
CurrentY := HiWord( GetCurrentPosition( Canvas.Handle ) ) ;

Программный код на языке Delphi, предназначенный для создания приложений под Windows.

Цель этого кода - получить текущую позицию или координаты окна на экране. Функция GetCurrentPosition из Windows API используется для достижения этой цели.

Разбивка каждого ряда:

  1. CurrentX := LoWord(GetCurrentPosition(Canvas.Handle)):
  2. GetCurrentPosition(Canvas.Handle) вызывает функцию Windows API GetCurrentPosition, передавая handle канваса (графического компонента) в качестве аргумента.
  3. LoWord - это функция Delphi, которая извлекает низшую 16-разрядную часть из 32-разрядного значения. В этом случае она возвращает нижнюю 16-разрядную часть результата от GetCurrentPosition, представляющую текущую x-координату окна.
  4. CurrentY := HiWord(GetCurrentPosition(Canvas.Handle)):
  5. Это строка похожа на предыдущую, но использует HiWord вместо LoWord. HiWord извлекает высокую 16-разрядную часть из 32-разрядного значения. В этом случае она возвращает верхнюю 16-разрядную часть результата от GetCurrentPosition, представляющую текущую y-координату окна.

Когда вы запустите этот код, он получит и присвоит переменным CurrentX и CurrentY координаты (x, y) текущей позиции окна, представленного канвасом.

Рекомендуется улучшение:

type
  TForm1 = class(TForm)
    procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

uses
  Windows;

{$R *.dfm}

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
  CurrentX := LoWord(GetCursorPos); // Используйте GetCursorPos вместо GetCurrentPosition
  CurrentY := HiWord(GetCursorPos);
end;

В этом коде событие FormMouseMove используется для получения текущей позиции (x, y) координат курсора. Функция GetCursorPos из Windows API возвращает позицию курсора как структуру POINT. Мы можем использовать LoWord и HiWord, чтобы извлечь x и y координаты отдельно.

В статье описывается метод получения текущей позиции окна на компьютере с помощью Windows API функции GetCurrentPosition, которая возвращает координаты верхнего левого угла окна.


Комментарии и вопросы


Ваше мнение или вопрос к статье в виде простого текста (Tag <a href=... Disabled). Все комментарии модерируются, модератор оставляет за собой право удалить непонравившейся ему комментарий.

заголовок

e-mail

Ваше имя

Сообщение

Введите код




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Размеры и Положение ::


реклама



©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru Rambler's Top100

Время компиляции файла: 2024-05-19 17:53:24
2024-05-19 22:54:28/0.0045990943908691/2