AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Wm_syscommand

Ein Thema von Amd · begonnen am 2. Okt 2005 · letzter Beitrag vom 5. Okt 2005
 
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#5

Re: Wm_syscommand

  Alt 3. Okt 2005, 08:42
Hallo Amd,

der Code in deinem Eröffnungsbeitrag wurde schon ohne ShowWindow() und mit SC_MINIMIZE anstelle SC_CLOSE veröffentlicht. Für das Minimieren gibt es inzwischen eine modernere Lösung:

Delphi-Quellcode:
uses
  ShlObj,
  ComObj;

procedure MinimizeAll;
var
  Shell : OleVariant;
begin
  Shell := CreateOleObject('Shell.Application') ;
  Shell.MinimizeAll;
end;
Wenn du beim Schließen der Programmfenster den program manager ausnehmen willst, dann musst du den Fenstertitel "Program Manager" abfangen:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  h: HWnd;
  buf: array [0..255] of char;
begin
  h := Handle;
  while h > 0 do
  begin
    if IsWindowVisible(h) then
    begin
      GetWindowText(h, buf, SizeOf(buf));
      if StrPas(@buf) <> 'Program Managerthen
        PostMessage(h, WM_SYSCOMMAND, SC_MINIMIZE, 0);
    end;
    h := GetNextWindow(h, GW_HWNDNEXT);
  end;
end;
@Matti: handle ist hier self.Handle - das window handle von Form1.

Grüße vom marabu
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:32 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