// Hiermit werden
die Events OnMinimize, OnMaximize und OnRestore
// für Form1 zur Verfügung gestellt.
// Getestet mit D4 unter Win98 (leider nichts für
NT)
unit
minimax;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
Dialogs;
type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
procedure OnMinimize(Sender: Tobject);
procedure OnMaximize(Sender: Tobject);
procedure OnRestore(Sender: Tobject);
procedure WMSysCommand(var amsg: TWMSysCommand); message
WM_SysCommand;
private
{ Private-Deklarationen}
public
{
Public-Deklarationen}
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.OnMinimize;
begin
//............
hier stehen die Anweisungen
{diese Prozedur wird immer angesprungen, wenn Form1 minimiert wird,
egal ob sie vorher normal oder maximiert war}
end;
procedure TForm1.OnMaximize;
begin
//............
hier stehen die Anweisungen
{diese Procedure wird immer angesprungen, wenn Form1 maximiert wird,
egal ob sie vorher normal oder minimiert war}
end;
procedure TForm1.OnRestore;
begin
if windowstate=wsMaximized then OnMaximize(form1)
else begin
//............
hier stehen die Anweisungen
{diese Procedure wird immer angesprungen, wenn Form1 die Normalform
einnimmt, egal ob sie vorher maximiert oder minimiert war}
end;
end;
procedure TForm1.WMSysCommand(var amsg: TWMSysCommand);
begin
inherited;
if amsg.CmdType = sc_maximize then OnMaximize(form1)
else if amsg.CmdType = sc_restore then OnRestore(form1);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Application.OnMinimize:=OnMinimize;
Application.OnRestore:=OnRestore;
end;
end.
|