Fenster nicht in der Taskleiste anzeigen + Splashscreen

Übersicht BlitzBasic Codearchiv

Neue Antwort erstellen

 

MacroMan

Betreff: Fenster nicht in der Taskleiste anzeigen + Splashscreen

BeitragSa, Apr 24, 2010 19:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe in den vergagenen Tagen viel im Forum gesucht, aber leider keine Möglichkeit gefunden, ein Fenster NICHT in der Taskleiste anzuzeigen...

Jetzt habe ich es selbst herausgefunden:
BlitzBasic: [AUSKLAPPEN]
Graphics 800, 600, 32, 2 ;ACHTUNG: Die Breite/Höhe sollte nicht mehr (von SetWindowPos) geändert werden...
AppTitle "|NOTASKBAR|"

BlitzWindow = FindWindow("Blitz Runtime Class", "|NOTASKBAR|")
If BlitzWindow = 0 Then RuntimeError "ERROR: Fenster wurde vermutlich umbenannt."

Const WS_POPUP = $80000000
Const WS_CLIPSIBLINGS = $04000000
Const WS_GROUP = $00020000
Const HWND_TOPMOST = -1
Const SWP_SHOWWINDOW = 64
Const GWL_STYLE = -16
Const GWL_EXSTYLE = -20
Const SW_HIDE = 0
Const SW_SHOW = 5
Const WS_EX_TOOLWINDOW = 128

ShowWindow(BlitzWindow, SW_HIDE) ;Fenster ausblenden
SetWindowLong(BlitzWindow, GWL_EXSTYLE, GetWindowLong(BlitzWindow, GWL_EXSTYLE) Or WS_EX_TOOLWINDOW) ;Nicht in der Taskleiste
SetWindowLong(BlitzWindow, GWL_STYLE, WS_POPUP Or WS_GROUP Or WS_CLIPSIBLINGS) ;Fensterrahmen entfernen
SetWindowPos(BlitzWindow, HWND_TOPMOST, 100, 100, 800, 600, SWP_SHOWWINDOW) ;Fenster immer im Vordergrund
ShowWindow(BlitzWindow, SW_SHOW) ;Fenster wieder einblenden (für Taskleiste)

ClsColor 155,0,0
Cls
WaitMouse()
End


Hier der code für die "user32.decls":
Code: [AUSKLAPPEN]
FindWindow%(class$, fenster$)               :"FindWindowA"      ;Fensterhandle finden
ShowWindow%(hwnd,cmdshow)                         ;Fenster anzeigen
SetWindowPos%(hwnd,hWndInsert,x,y,cx,cy,wFlags)       :"SetWindowPos"
SetWindowLong%(hWnd%, index%, NewLong%)            :"SetWindowLongA"
GetWindowLong%(hWnd%,wIndex%)               :"GetWindowLongA"

Neue Antwort erstellen


Übersicht BlitzBasic Codearchiv

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group