Entwickler-Ecke

Windows API - automatisches Ausblenden von Taskleiste


mtm - Fr 04.11.11 19:05
Titel: automatisches Ausblenden von Taskleiste
Hallo zusammen,

ich bin gerade mit Delphi ein bisschen am rumspielen. Dabei Teste ich gerade die Möglichkeit, die Desktopsymbole auszublenden und zwar per

Delphi-Quelltext
1:
ShowWindow(FindWindow('Progman',nil),SW_HIDE);                    

Wenn die Symbole ausgeblendet sind, wird aber die Taskleiste nicht mehr automatisch ausgeblendet. Sobald die Symbole wieder sichtbar sind funzt es wie vorher. Gibt es eine Möglichkeit, das automatische Ausblenden auch bei ausgeblendeten Symbolen weiter funktionsfähig zu halten ?

Danke im Voraus
mtm


Delete - Fr 04.11.11 19:44

Warum willst du die Symbole ausblenden? Wenn ich einen leeren Desktop benötige, warum auch immer, erstelle ich mir einen neunen eigenen und lasse das Programm auf diesem laufen.


bummi - Fr 04.11.11 20:33

oder faken, MausY abfragen und

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
Procedure ShowHideTaskBar(Show: Boolean);
var
  wndTaskbar: HWND;
begin
  wndTaskbar := FindWindow('Shell_TrayWnd'nil);
  if wndTaskbar <> 0 then
  begin
    if Show then
      ShowWindow(wndTaskbar, SW_SHOW)
    else
      ShowWindow(wndTaskbar, SW_HIDE);
  end;
end;


mtm - Sa 05.11.11 17:09

Gott, ich bin auch ein Depp.
Das Problem ist eigentlich nur, dass die Taskleiste den Focus hat und deswegen nicht ausgeblendet wird. Es ist ja auch nichts da, was den Fokus erhalten kann.
Wenn ein Programm geöffnet wird, verschwindet die Taskleiste so wie sie soll.
Trotzdem danke für die Antworten.