Entwickler-Ecke

Windows API - Windows Taskbar Größe und "Taskbar immer im Vordergrund


icedre - Di 26.04.05 19:00
Titel: Windows Taskbar Größe und "Taskbar immer im Vordergrund
Hallo,

ist es möglich mit Hilfe der ShellAPI die Größe (Höhe) der Taskbar von Windows zu verändern und die Funktion "Taskbar immer im Vordergrund halten" ein bzw. aus zuschalten ?

Bin für jede Hilfe dankbar. :)


WeBsPaCe - Di 26.04.05 19:39

Das hier könnte doch vielleicht schon helfen oder?

Zitat:
Feststellen, ob die Taskbar vorhanden ist

* WinNT: OK
* Win95: -
* Win98: -
* Win2k: -

Feststellen, ob sich die Taskleiste im Hintergrund befindet.

Entspricht der Einstellung 'Automatisch im Hintergrund' in 'Start\Einstellungen\Task-Leiste...'

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
Function IsTaskbarHide:Boolean;
Var TB: TAppBarData;
Begin
  TB.cbSize := SizeOf(TB);
  Result := SHAppBarMessage(ABM_GETSTATE,TB) and (ABS_AUTOHIDE) > 0;
End;


Wird statt der Konstanten ABS_AUTOHIDE die Konstante ABS_ALWAYSONTOP benutzt, läßt sich feststellen, ob die Taskleiste immer im Vordergrund ist.
Entspricht der Einstellung 'Immer im Vordergrund' in 'Start\Einstellungen\Task-Leiste...'

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
Function IsTaskbarOnTop:Boolean;
Var TB: TAppBarData;
Begin
  TB.cbSize := SizeOf(TB);
  Result := SHAppBarMessage(ABM_GETSTATE,TB) and (ABS_ALWAYSONTOP) > 0;
End;


Um die Shell-Routinen zu benutzen, muß die Unit ShellAPI in Uses stehen.


Delphi-Quelltext
1:
Uses ShellAPI,...;                    


//EDIT: Ooops. Hab das nicht gesehen:
Zitat:

* WinNT: OK
* Win95: -
* Win98: -
* Win2k: -


icedre - Di 26.04.05 19:48

O.K.

Danke, ich werd´s versuchen..

Brauch es aber für Win XP