L'idée vient d'un contributeur du forum us (Rashad) excellent contributeur, à suivre pour ses démonstrations souvent élégantes de simplicité.
(L'idée de la fausse fenêtre vient peut-être de quelqu'un d'autre, plus ancien, je ne sais pas. Merci de corriger au besoin)
J'ai juste extrait la partie génération de fenêtre.
Ce système peut être utile pour les applications de type outils (postit, pendule etc)
Code : Tout sélectionner
; Créer une fenêtre sans icone dans la barre de tâche
; (Sans utilisation d'API)
; Purebasic 5.31 (sans doute compatible toutes versions)
; Marc56 - 08/07/15
; Basé sur une code de Rashad (contributeur forum PB us, mais ça date peut-être d'avant ?)
; Le principe consiste à dériver la fenêtre principale d'une fausse fenêtre (de type tool) hors écran
Enumeration
#Fake_Window
#Main_Window
EndEnumeration
; --- La fausse fenêtre est placée hors écran et comme elle est de type Tool, elle n'a pas d'icone dans la barre de tâche
OpenWindow(#Fake_Window, -1, -1, 0, 0, "", #PB_Window_Tool)
; --- La fenêtre principale est une fenêtre fille donc elle n'est pas présente dans la barre de tâche
OpenWindow(#Main_Window, 0, 0, 300, 150, "", #PB_Window_SystemMenu | #PB_Window_ScreenCentered, WindowID(#Fake_Window))
Txt_Message = TextGadget(#PB_Any, 050, 050, 150, 050, "Vous avez vu ? je n'existe pas dans la barre de tâche :o)")
Repeat : Until WaitWindowEvent(50) = #PB_Event_CloseWindow
End