SetWindowLong, bzw. bereits in
CreateWindowEx oder eben
TCustomForm.CreateParams
WS_EX_APPWINDOW
WS_EX_TOOLWINDOW
WS_EX_NOACTIVATE
https://docs.microsoft.com/en-us/win...-window-styles
Wie man in der Hilfe rauslesen kann, gibt es meherere Eigenschaften, um zu steuern, ob oder ob nicht eine Form in der Taskleiste sichtbar sein soll. (lässt sich auch mannigfaltig in der SuFu entdecken)
Delphi-Quellcode:
procedure TYourForm.CreateParams(var Params: TCreateParams);
begin
inherited;
Params.ExStyle := Params.ExStyle or WS_EX_APPWINDOW;
end;
// bzw. alternativ später auch noch in
procedure TYourForm.CreateWindowHandle(const Params: TCreateParams);
procedure TYourForm.CreateWnd;
Damit bekomme ich aber ein weiteres Thumbnail.
Wenn die Form nicht modal ist, ist es auch in Ordnung dann kann man ja auch auf beide zugreifen.
Wird jedoch ein modales Fenster geöffnet möchte gerne nur ein Thumbnail haben, da ja auch nur ein Fenster aktiv ist.
Nur das aktive würde mir schon reichen.
Ich hab es hinbekommen, wenn man die TTaskBar einfach nur erzeugt mit dem aktiven Form als Owner dann ist es eigentlich schon das, was ich möchte.
Nur leider bis zur zweiten Ebene, wenn ich im modalen Fenster dann nochmal eins modal öffne wird das nicht mehr angezeigt in der Taskleiste.
Alternative wäre auch CustomizedPreview und die Events OnThumbPreviewRequest, OnWindowPreviewItemRequest zu verwenden.
Da bekomme ich es aber nicht hin mit GetFormImage ein Bitmap in PixelFormat 32bit zu kriegen ohne das die Farben verfälschen.