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

Момент окончания изменения размера или перемещения окна

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

Момент окончания изменения размера или перемещения окна


type
  TForm1 = class(TForm)
  private
    { Private declarations }
  public
    procedure WMEXITSIZEMOVE(var Message: TMessage);
      message WM_EXITSIZEMOVE;
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.WMEXITSIZEMOVE(var Message: TMessage);
begin
  Form1.Caption := 'Finished Moving and sizing';
end;

Here's the translation of the text into Russian:

Данный код программирования на Delphi создает форму (окно) с заголовком "Finished Moving and sizing", когда пользователь останавливается от изменения размера или перемещения формы.

Разбивка каждого элемента:

  1. type TForm1 = class(TForm) - эта строка определяет новый форм, TForm1, который является подклассом стандартной формы Delphi (TForm).
  2. Приватная секция пуста, потому что не объявлены приватные переменные или процедуры.
  3. Общественная секция имеет одну процедуру, WMEXITSIZEMOVE, которая обрабатывает Windows-сообщение WM_EXITSIZEMOVE. Это сообщение отправляется окну, когда оно перестает изменяться размером или перемещаться.
  4. В разделе реализации мы имеем определение этой процедуры. Она устанавливает заголовок формы (Form1.Caption) в "Finished Moving and sizing".
  5. Строка var Form1: TForm1; объявляет переменную Form1 типа TForm1, которая является экземпляром нашего кастомного форм.
  6. Директива $R *.DFM указывает Delphi, где найти файл дизайна формы (файл ресурсов).

Когда вы запустите этот код, он создаст форму с заголовком "Finished Moving and sizing", когда вы остановитесь от изменения размера или перемещения ее.

Альтернативное решение:

Вместо обрабатывания сообщения WM_EXITSIZEMOVE, мы можем переопределить события OnResize и OnMove, чтобы установить заголовок формы. Это подход более типичен для Delphi и проще в поддержке.

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

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.FormResize(Sender: TObject);
begin
  Caption := 'Finished Resizing';
end;

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
  Caption := 'Finished Moving and sizing';
end;

В этом коде:

  • Процедура FormResize устанавливает заголовок, когда форма изменяется размером.
  • Процедура FormMouseMove устанавливает заголовок, когда форма перемещается.

В статье описывается создание в Delphi компонента, который изменяет заголовок формы после изменения размера или перемещения окна.


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


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

заголовок

e-mail

Ваше имя

Сообщение

Введите код




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



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


реклама



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

Время компиляции файла: 2024-05-19 17:53:24
2024-05-20 01:10:51/0.0047259330749512/2