Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#10

AW: Application.MainFormOnTaskbar wird ignoriert (10.4)

  Alt 10. Aug 2020, 18:02
Es liegt nicht am Windows 10.
Delphi 10.3 auf Windows 7, das Gleiche.
Titel ist hier der Application-Title, aber AeroPeek bleibt weiterhin die MainForm (wäre aber egal und eigentlich OK),
aber vor Ablauf der Pause ist weiterhin nichts zu sehn. (die ProcessMessages machen keinen Unterschied)
Delphi-Quellcode:
Application.Initialize;
Application.MainFormOnTaskbar := False;
//Application.ProcessMessages;
Sleep(10000); // eigentlich Berechnung im TForm1.OnCreate, aber für den kurzen Test hier
//Application.ProcessMessages;
Application.CreateForm(TForm1, Form1); // z.B. mit einem TMemo drauf, um den Unterschied zu sehen .... Vorschau/AeroPeek ohne Memo = Application und Mit = MainForm
Application.Run;
@Sailor: Über den Namen suchen ist etwas ungünstig, wenn das Programm mehrmals gestartet wurde,
aber in Application.Handle ist ja eh das gesuchte Fenster drin.
Delphi-Quellcode:
Application.Initialize;
Application.MainFormOnTaskbar := True; // oder False

ShowWindow(Application.Handle, SW_SHOW);
SetWindowLong(Application.Handle, GWL_EXSTYLE, GetWindowLong(Application.Handle, GWL_EXSTYLE) or WS_EX_APPWINDOW);
Application.ProcessMessages;

Sleep(10000);

Application.CreateForm(TForm1, Form1);

ShowWindow(Application.Handle, SW_HIDE);
SetWindowLong(Application.Handle, GWL_EXSTYLE, GetWindowLong(Application.Handle, GWL_EXSTYLE) and not WS_EX_APPWINDOW);

//Application.MainFormOnTaskbar := True;
Application.Run;
$2B or not $2B

Geändert von himitsu (10. Aug 2020 um 18:13 Uhr)
  Mit Zitat antworten Zitat