Page 1 sur 1
Fenêtre sans bordure et invisible dans la barre de tâche
Publié : lun. 06/sept./2010 0:27
par nico
Je viens de me rendre compte qu'on ne peut pas créer une fenêtre sans bordure et qui n'apparaisse pas dans la barre de tâche en faisant #PB_Window_Tool | #PB_Window_BorderLess; ça ne marche pas.
Comment faire alors ?
Re: Fenêtre sans bordure et invisible dans la barre de tâche
Publié : lun. 06/sept./2010 6:05
par venom
Salut nico,
sous seven sans #PB_Window_Tool, ça fonctionne donc peut etre un problème de compatibilité avec seven et #PB_Window_Tool a voir.
@++
Re: Fenêtre sans bordure et invisible dans la barre de tâche
Publié : lun. 06/sept./2010 8:54
par gnozal
Peut-être que le vieux truc de la fenêtre invisible fonctionne sous Se7en ?
Code : Tout sélectionner
If OpenWindow(0, 450, 200, 104, 0, "Dummy invisible window", #PB_Window_SystemMenu|#PB_Window_MinimizeGadget|#PB_Window_TitleBar|#PB_Window_Invisible)
; La 1ère fenêtre ne sert qu'à cacher la seconde (elle n'apparaît pas dans la barre des tâches)
If OpenWindow(1, 450, 200, 402, 402, "Window", #PB_Window_SystemMenu|#PB_Window_MinimizeGadget|#PB_Window_TitleBar|#PB_Window_BorderLess|#PB_Window_Tool, WindowID(0))
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
CloseWindow(0)
CloseWindow(1)
Break
EndSelect
ForEver
EndIf
EndIf
Re: Fenêtre sans bordure et invisible dans la barre de tâche
Publié : lun. 06/sept./2010 9:37
par Le Soldat Inconnu
L'option #PB_Window_Tool ajoute une bordure.
la solution est donc la suivante :
Code : Tout sélectionner
; Auteur : Le Soldat Inconnu
; Version de PB : 4.50
;
; Explication du programme :
; ToolWindow sans bordure et invisible dans la barre des tâches
; Création de la fenêtre et de la GadgetList
If OpenWindow(0, 0, 0, 300, 300, "Test", #PB_Window_NoGadgets | #PB_Window_Invisible) = 0
End
EndIf
If OpenWindow(1, 0, 0, 300, 300, "Test", #PB_Window_BorderLess | #PB_Window_Invisible, WindowID(0)) = 0
End
EndIf
SetWindowLong_(WindowID(1), #GWL_EXSTYLE, GetWindowLong_(WindowID(1), #GWL_EXSTYLE) | #WS_EX_TOOLWINDOW)
HideWindow(1, 0)
Repeat
Event = WaitWindowEvent()
Until Event = #PB_Event_CloseWindow
Re: Fenêtre sans bordure et invisible dans la barre de tâche
Publié : lun. 06/sept./2010 13:34
par MLD
Il semble q'une seule fenêtre suffise
Code : Tout sélectionner
; Auteur : Le Soldat Inconnu
; Version de PB : 4.50
;
; Explication du programme :
; ToolWindow sans bordure et invisible dans la barre des tâches
; Création de la fenêtre et de la GadgetList
; If OpenWindow(0, 0, 0, 300, 300, "Test", #PB_Window_NoGadgets | #PB_Window_Invisible) = 0
; End
; EndIf
OpenWindow(1, 0, 0, 300, 300, "Test", #PB_Window_BorderLess | #PB_Window_Invisible);, WindowID(0)) = 0
;End
;EndIf
SetWindowLong_(WindowID(1), #GWL_EXSTYLE, GetWindowLong_(WindowID(1), #GWL_EXSTYLE) | #WS_EX_TOOLWINDOW)
HideWindow(1, 0)
Repeat
Event = WaitWindowEvent()
Until Event = #PB_Event_CloseWindow
end
Re: Fenêtre sans bordure et invisible dans la barre de tâche
Publié : lun. 06/sept./2010 13:47
par Le Soldat Inconnu
heu, oui

Re: Fenêtre sans bordure et invisible dans la barre de tâche
Publié : lun. 06/sept./2010 16:54
par nico
Bon sang, c'est la méthode que j'avais utilisé mais comme j'ai fait une modif à cause du problème du stickywindow, j'avais enlevé l'invisibilité et j'ai cru par la suite que je n'avais pas résolu le problème.
Je vous jure des fois...
Mille mercis