Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Minimieren abfangen (https://www.delphipraxis.net/3683-minimieren-abfangen.html)

Schwedenbitter 25. Mär 2003 14:12


Minimieren abfangen
 
Hallo,
wie kann ich abfragen, ob der Benutzer beim Hauptformular rechts oben den Minimieren-Button gedrückt hat? Mit OnCloseQuery kann man ja als Nebeneffekt zum Befehle Close auch das Kreuz abfragen. OnMinimize habe ich im Objektinspektor leider nicht gefunden.
Wenn jemand eine Lösung fürs Maximieren kennt, bitte auchgleich posten.
:cry:

Luckie 25. Mär 2003 14:24

Delphi-Quellcode:
type
  TForm1 = class(TForm)
  private
    { Private-Deklarationen }
    procedure WMSYSCOMMAND(var Msg: TMessage); Message WM_SYSCOMMAND;
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.WMSYSCOMMAND(var Msg: TMessage);
begin
  { WM_SYSCOMMAND abfangen }
  if Msg.Msg = WM_SYSCOMMAND then
  begin
    { wParam prüfen }
    case Msg.wParam of
      SC_MINIMIZE:
      begin
        ShowMessage('Hello world');
        Inherited;
      end;
      SC_CLOSE: Close;
    else
      { alle anderen Fälle weiterreichen an die standard Fensterprozedur }
      Inherited;
    end;
  end;
end;

CalganX 25. Mär 2003 15:10

Um es komplett auf VCL-Art zu machen:
Delphi-Quellcode:
procedure TFrmMain.Handler(Sender: TObject);
begin
  // Tue irgendwas beim minimieren
end;

procedure TFrmMain.FrmMainCreate(Sender: TObject);
begin
  Application.OnMinimize := Handler;
end;
Für's Maxmimieren einfach OnMinimize durch OnMaximize ersetzen...

Sollte funktionieren,
Chris


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:06 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz