| |
|
|
| KompilierenMarkierenSeparierenSource wurde am 15.07.2007 aus der MMJ-Quellcodesammlung (Dietmar Horn) in die Babyklappe auf XProfan.Com abgelegt:
Taskleiste - Fenster herausfiltern wie die Windows-Taskleiste
Lauffähig ab Profan-Version 5.0
PRFellow-- Vorlage
Autor und (C): Thomas Hölzer, 1999
Fenster herausfiltern wie die Windows-Taskleiste
Def GetWindow(2) !USER32,GetWindow
Def GetClassName(3) !USER32,GetClassNameA
Def IsWindowVisible(1) !USER32,IsWindowVisible
Def GetWindowLong(2) !USER32, GetWindowLongA
Def GetClassLong(2) !USER32,GetClassLongA
Declare cname#
Proc GetTaskWindows
Declare result&,cn$
Dim cname#,64
Declare Excluded_Classnames$,icon&
Taskbar, Desktop, Tooltips, Startmenü sollen nicht erscheinen
Let Excluded_Classnames$=SHELL_TRAYWND PROGMAN TOOLTIPS TOOLTIPS_CLASS32 BASEBAR #32768
Let result&=GetWindow(%desktop,5)
UseCursor 2
While Neq(result&,0)
If Neq(result&,%desktop)
nur Fenster mit Stilbit WS_VISIBLE kommen in Frage
If Neq(IsWindowVisible(result&),0)
Taskbar und Desktop selbst sollen nicht erscheinen
GetClassName(result&,cname#,64)
Let cn$=Upper$(String$(cname#,0))
If Equ(Instr(cn$,Excluded_Classnames$),0)
Nur Fenster ohne Elternfenster werden angezeigt
If Equ(GetWindowLong(result&,-8),0) GWL_HWNDPARENT
Print Add$(Fenster-Handle: ,Str$(result&))
Print Add$(Text: ,GetText$(result&))
Print Add$(Klasse: ,String$(cname#,0))
Print MkStr$(----,20)
EndIf
EndIf
EndIf
Let result&=GetWindow(result&,2)
Wend
Dispose cname#
UseCursor 0
EndProc
Beispiel
Cls
WindowTitle Task-Fenster - Aktualisierung alle 2 Sekunden
GetTaskWindows
While 1
SetTimer 2000
WaitInput
Cls
GetTaskWindows
KillTimer
a class=s4 href='./../../funktionsreferenzen/xprofan/wend/'>Wend
|
|
|
| |
|
|