Autor Beitrag
Insignificant
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 81



BeitragVerfasst: Mi 21.12.05 18:59 
Hi, ich wollte fragen wie man die Programme die im Taskmanager unter *Anwedungen* (bzw. die in der Taskleiste) laufen auslesen und dann jede auf einen Button (wie in der Taskleiste) bringen kann?
Naja ich versuche mehr oder weniger eine Taskleiste zu machen, nur leider habe ich keine Ahnung wie ich die Anwendungen auslesen und dann auf einen Button quetschen kann. Wäre nett wenn ihr mir etwas unter die Arme greifen könntet :D
JiimmyC
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 35

WinXP SP1

BeitragVerfasst: Di 27.12.05 15:38 
Ist eigentlich ganz einfach. Ich nehme mal an dass du weisst wie man einen Button herstellt und ihm dann eine Funktion zufuegt.

Um alle Windows zu bekommen les mal etwas unter EnumWindows.

In der EnumWindowsProc checks du jedes handle ob es das ParentHandle ist (GetParent), dann checks du ob das Windows Sichtbar ist (IsWindowVisible); sind beide Konditionen positiv so ist das Window einer deiner Anwendungen und kannst das Handle auf deinen Button uebertragen.

Beim Button Click benutzt du dann bloss das Handle mit RestoreWindow(SW_VISIBLE) & SetForegroundWindow.

Fuer eine Taskleiste wuerde ich dann alle 250 ms den EnumWindows Loop erneut laufen lassen so dass alles genau upgedated wird.
Spaeter koenntest du auch dass Icon der Anwendung herauslesen und dies dann auch auf deinem Button zeichnen und (tataa) deine eigene Taskleiste ist fertig.

Hoffe dass dies dir weiterhilft,
Jim

_________________
Information in this online help system is subject to change without notice.
Heiko
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3169
Erhaltene Danke: 11



BeitragVerfasst: Di 27.12.05 17:20 
Und wie du Buttons zur Laufzeit erzeugst, findest du hier.