Cacher une fenêtre dans la barre des tâches
-
- Messages : 7
- Inscription : dim. 20/févr./2011 21:08
- Localisation : Carpentras 84200 France
Cacher une fenêtre dans la barre des tâches
Bonjour tout le monde !
J'ai besoin de votre aide pour une petit chose qui me pose problème:
dans mon application je voudrai que lorsque je crée une fenêtre avec OpenWindow(), le titre de la fenêtre n'apparaisse pas dans la barre des tâches sous Windows pour plusieurs raisons mais principalement:
1.C'est moche
2.C'est nul de se retrouver avec 1000 fenêtres dans la barre des tâches ![/list]
Je remercie les gens qui voudront bien m'aider, je demande seulement un exemple ou un bout de code, merci !
J'ai besoin de votre aide pour une petit chose qui me pose problème:
dans mon application je voudrai que lorsque je crée une fenêtre avec OpenWindow(), le titre de la fenêtre n'apparaisse pas dans la barre des tâches sous Windows pour plusieurs raisons mais principalement:
1.C'est moche
2.C'est nul de se retrouver avec 1000 fenêtres dans la barre des tâches ![/list]
Je remercie les gens qui voudront bien m'aider, je demande seulement un exemple ou un bout de code, merci !
Le monde et l'univers ne sont que des parties d'un programme plus grand et derrière ce programme, il y a Dieu.
Nous sommes ses IA.
Nous sommes ses IA.
-
- Messages : 1501
- Inscription : dim. 18/avr./2004 15:04
- Localisation : sud de la france
Re: Cacher une fenêtre dans la barre des tâches
salut
je sais pas quel window tu utilise
sinon essaye ça
je sais pas quel window tu utilise
sinon essaye ça
Code : Tout sélectionner
Enumeration
#main
EndEnumeration
If OpenWindow(#main,0,0,180,70,"Test",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
EndIf
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
Quit = #True
EndSelect
Until Quit
End
Jbernard13
Re: Cacher une fenêtre dans la barre des tâches
Salut
Je pense a ceci. Uniquement avec des toolWindows
Hé JB13 ton truc ne cache rien.
Je pense a ceci. Uniquement avec des toolWindows
Code : Tout sélectionner
Enumeration
#fenstat
EndEnumeration
OpenWindow(#fenstat, 0, 0,860,520, "",#PB_Window_ScreenCentered| #PB_Window_Invisible)
SetWindowLong_(WindowID(#fenstat), #GWL_EXSTYLE, GetWindowLong_(WindowID(#fenstat), #GWL_EXSTYLE) | #WS_EX_TOOLWINDOW)
HideWindow(#fenstat, 0)
StickyWindow(#fenstat, 1)
Repeat
Event = WaitWindowEvent()
Until event = #PB_Event_CloseWindow
- falsam
- Messages : 7324
- Inscription : dim. 22/août/2010 15:24
- Localisation : IDF (Yvelines)
- Contact :
Re: Cacher une fenêtre dans la barre des tâches
Quitte à utiliser du ToolWindow, autant le faire comme ça.
Dans cette exemple l'icone n’apparaît pas dans la barre de tache de window.
Code : Tout sélectionner
Enumeration
#MainForm
EndEnumeration
Procedure MainFormShow()
OpenWindow(#MainForm,0,0,400,300,"Test",#PB_Window_ScreenCentered | #PB_Window_SystemMenu | #PB_Window_Tool | #PB_Window_SizeGadget)
EndProcedure
MainFormShow()
Repeat
Select WaitWindowEvent()
Case #PB_Event_Gadget
Case #PB_Event_CloseWindow
End
EndSelect
ForEver
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
-
- Messages : 7
- Inscription : dim. 20/févr./2011 21:08
- Localisation : Carpentras 84200 France
Re: Cacher une fenêtre dans la barre des tâches
Merci pour vos réponses les gens !
falsam je recherche le même effet qu'avec une toolwindow mais avec une fenêtre normale, ça fait assez moche une toolwindow comme écran principal
Vous connaîtriez pas une fonction permettant de ne pas afficher une fenêtre dans la barre des tâches ?
En fait si quelqu'un connaît vb.net, c'est comme quand on demande une seule fenêtre affichée dans la barre des tâches et le reste s'affiche juste sur l'écran, pas en bas...
Si vous connaissez pas, j'utiliserai des toolwindow mais si ça existe sur vb.net pourquoi pas sur PureBasic ?
Je vais faire quelques recherches de mon côté aussi !
falsam je recherche le même effet qu'avec une toolwindow mais avec une fenêtre normale, ça fait assez moche une toolwindow comme écran principal

Vous connaîtriez pas une fonction permettant de ne pas afficher une fenêtre dans la barre des tâches ?
En fait si quelqu'un connaît vb.net, c'est comme quand on demande une seule fenêtre affichée dans la barre des tâches et le reste s'affiche juste sur l'écran, pas en bas...
Si vous connaissez pas, j'utiliserai des toolwindow mais si ça existe sur vb.net pourquoi pas sur PureBasic ?

Je vais faire quelques recherches de mon côté aussi !
Le monde et l'univers ne sont que des parties d'un programme plus grand et derrière ce programme, il y a Dieu.
Nous sommes ses IA.
Nous sommes ses IA.
Re: Cacher une fenêtre dans la barre des tâches
Salut
Comme ceci. (D'aprés un échange entre Dobro et le Soldat inconnu )
Comme ceci. (D'aprés un échange entre Dobro et le Soldat inconnu )
Code : Tout sélectionner
Procedure RemoveFromTaskbar(hWnd)
Protected Area.RECT, hWnd_Parent
If IsWindow_(hWnd)
SetWindowLongPtr_(hWnd, #GWL_HWNDPARENT, FindWindow_(0, ""))
EndIf
EndProcedure
#window = 1
OpenWindow(#window, 100, 100, 300, 170, "Test", #PB_Window_SystemMenu)
RemoveFromTaskbar(WindowID(#window))
Repeat
Event = WaitWindowEvent()
Select Event
EndSelect
Until Event = #PB_Event_CloseWindow
-
- Messages : 7
- Inscription : dim. 20/févr./2011 21:08
- Localisation : Carpentras 84200 France
Re: Cacher une fenêtre dans la barre des tâches
MLD, c'est avec l'API Windows ton code ? Parce que je trouve pas la structure RECT, s'il faut la version complète de PureBasic il faudrat que j'attende un petit peu avant de pouvoir l'utiliser alors... 

Le monde et l'univers ne sont que des parties d'un programme plus grand et derrière ce programme, il y a Dieu.
Nous sommes ses IA.
Nous sommes ses IA.
- falsam
- Messages : 7324
- Inscription : dim. 22/août/2010 15:24
- Localisation : IDF (Yvelines)
- Contact :
Re: Cacher une fenêtre dans la barre des tâches
Donc je résume : On ouvre la fenêtre principale de l’application qui va s'afficher dans la barre des taches de windows puis on ouvre d'autres fenêtres (toujours dans la même application) qui n’apparaîtront pas dans la barre des taches.ProgrammeurC a écrit : ...c'est comme quand on demande une seule fenêtre affichée dans la barre des tâches et le reste s'affiche juste sur l'écran, pas en bas...
Tu vas pour cela ouvrir chacune de tes fenêtres en ajoutant comme paramètre WindowID(#Mafenetreprincipale)
Exemple pour étayer cela
Code : Tout sélectionner
Enumeration
#MainForm
#Btn_OpenForm
#SecondForm
EndEnumeration
;Fenetre principale
Procedure MainFormShow()
OpenWindow(#MainForm,0,0,800,600,"Premiére Fenetre",#PB_Window_ScreenCentered |#PB_Window_SizeGadget | #PB_Window_SystemMenu)
ButtonGadget(#Btn_OpenForm, 700,20,80,20,"Open Form")
EndProcedure
Procedure SecondFormShow()
OpenWindow(#SecondForm,0,0,400,300,"Deuxiéme fenetre",#PB_Window_ScreenCentered | #PB_Window_SystemMenu, WindowID(#MainForm))
EndProcedure
MainFormShow()
Repeat
Select WaitWindowEvent()
Case #PB_Event_Gadget
Select EventGadget()
Case #Btn_OpenForm
SecondFormShow()
EndSelect
Case #PB_Event_CloseWindow
Select EventWindow()
Case #MainForm
End
Case #SecondForm
CloseWindow(#SecondForm)
EndSelect
EndSelect
ForEver
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Re: Cacher une fenêtre dans la barre des tâches
OUI. Tu aura souvent besoin des APIS alors!ProgrammeurC a écrit :MLD, c'est avec l'API Windows ton code ? Parce que je trouve pas la structure RECT, s'il faut la version complète de PureBasic il faudrat que j'attende un petit peu avant de pouvoir l'utiliser alors...

@ falsam
Oui c'est possible comme ceci, mais les fenêtres secondaires ne sont pas indépendantes, ce qui pose des problèmes s'il y en a plus de 2 ou 3. C'est un sujet qui revient souvent sur les forums PB.
-
- Messages : 7
- Inscription : dim. 20/févr./2011 21:08
- Localisation : Carpentras 84200 France
Re: Cacher une fenêtre dans la barre des tâches
Merci beaucoup tout le monde !
Je vais garder la méthode de falsam (merci à toi
! )
PS: pour info, je garde la solution avec les ToolWindow
(Sujet résolu)
Je vais garder la méthode de falsam (merci à toi

PS: pour info, je garde la solution avec les ToolWindow

(Sujet résolu)
Le monde et l'univers ne sont que des parties d'un programme plus grand et derrière ce programme, il y a Dieu.
Nous sommes ses IA.
Nous sommes ses IA.
-
- Messages : 4312
- Inscription : mer. 28/janv./2004 20:58
- Localisation : Clermont ferrand OU Olsztyn
- Contact :
Re: Cacher une fenêtre dans la barre des tâches
Et tout simplement comme cela ?
Code : Tout sélectionner
; Auteur : Le Soldat Inconnu
; Version de PB : 4.50
;
; Explication du programme :
; Pour faire des programmes de test rapidement, il ne reste qu'a rajouter les gadgets et la gestion des évènements.
; Création de la fenêtre et de la GadgetList
If OpenWindow(0, 0, 0, 100, 100, "Cachée", #PB_Window_Invisible | #PB_Window_NoGadgets) = 0
End
EndIf
If OpenWindow(1, 0, 0, 500, 300, "Test", #PB_Window_SystemMenu | #PB_Window_ScreenCentered | #PB_Window_MinimizeGadget, WindowID(0)) = 0
End
EndIf
Repeat
Event = WaitWindowEvent()
Select Event
Case #PB_Event_Menu
Select EventMenu() ; Menus
EndSelect
Case #PB_Event_Gadget
Select EventGadget() ; Gadgets
EndSelect
EndSelect
Until Event = #PB_Event_CloseWindow
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?
[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
-
- Messages : 7
- Inscription : dim. 20/févr./2011 21:08
- Localisation : Carpentras 84200 France
Re: Cacher une fenêtre dans la barre des tâches
Merci Le Soldat Inconnu, c'est un bon moyen pour mon projet, enfin il faudra que je re-code quelques trucs mais ce sera pas la mort, merci !
Le monde et l'univers ne sont que des parties d'un programme plus grand et derrière ce programme, il y a Dieu.
Nous sommes ses IA.
Nous sommes ses IA.