PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → [WD10] Application dans le systray de windows
[WD10] Application dans le systray de windows
Débuté par ltdnico, 12 jan. 2006 18:39 - 4 réponses
Posté le 12 janvier 2006 - 18:39
Bonjour,

Voilà j'ai vu qu'on pouvait réduire une application dans le systray
windows grâce à la fonction systray(). Mon problème c'est que mon
application apparaît encore dans la barre des tâche une fois réduite
dans le systray. Mon but est de n'avoir qu'une icône dans le systray et
rien d'autre visible à l'écran (sauf lors du double clic sur l'icône du
systray qui affiche la fenêtre de mon application).

Quelqu'un pourrait-il me donner l'astuce ?
C'est pour un serveur web donc sauf pour la fenêtre de configuration, je
n'ai pas besoin de voir mon apli dans la barre des tâches.

Cordialement.
Posté le 12 janvier 2006 - 18:41
Salut,

Il faut rendre la fenêtre invisible avec la commande FenEtat()

--
Bons développements.
Ed en Ligne


"NiCo" <ltdnico@wanadoo.fr> a écrit dans le message de news:
43c685f5$1@news.pcsoft.fr...

Bonjour,

Voilà j'ai vu qu'on pouvait réduire une application dans le systray
windows grâce à la fonction systray(). Mon problème c'est que mon
application apparaît encore dans la barre des tâche une fois réduite
dans le systray. Mon but est de n'avoir qu'une icône dans le systray et
rien d'autre visible à l'écran (sauf lors du double clic sur l'icône du
systray qui affiche la fenêtre de mon application).

Quelqu'un pourrait-il me donner l'astuce ?
C'est pour un serveur web donc sauf pour la fenêtre de configuration, je
n'ai pas besoin de voir mon apli dans la barre des tâches.

Cordialement.
Posté le 12 janvier 2006 - 18:53
Voici un exemple de code que tu pourrais placer dans "modification de
taille" de ta fenetre

SI FenTaille(MaFenetre)=TailleMini ALORS
MaFenetre..Visible=Faux
SysIconeAjoute("MonIcone.ico",menu_Icone,MoiMême..Titre,"ActionSysIcone")
SINON
// SysIconeSupprime()
MaFenetre..Visible=Vrai
MoiMême..X=0
MoiMême..Y=0
MoiMême..Largeur=SysXRes()
MoiMême..Hauteur=Barre1..Hauteur+10
FIN

PROCEDURE ActionSysIcone
SELON TypeAction
CAS 515
// Double clic gauche : WM_LBUTTONDBLCLK = 515
Restaure(MaFenetre)
MaFenetre..Visible=Vrai
FenEtat(MaFenetre,DessusTout)
FenEtat(MaFenetre,Normal)
CAS 513
// Clic gauche enfoncé : WM_LBUTTONDOWN = 513
CAS 514
// Clic gauche relevé : WM_LBUTTONUP = 514
CAS 521
// Double clic milieu : WM_MBUTTONDBLCLK = 521
CAS 519
// Clic milieu enfoncé : WM_MBUTTONDOWN = 519
CAS 520
// Clic milieu relevé : WM_MBUTTONUP = 520
CAS 518
// Double clic droit : WM_RBUTTONDBLCLK = 518
CAS 516
// Clic droit enfoncé : WM_RBUTTONDOWN = 516
CAS 517
// Clic droit relevé : WM_RBUTTONUP = 517
FIN


Dans son message précédent, NiCo a écrit :
Bonjour,

Voilà j'ai vu qu'on pouvait réduire une application dans le systray
windows grâce à la fonction systray(). Mon problème c'est que mon
application apparaît encore dans la barre des tâche une fois réduite
dans le systray. Mon but est de n'avoir qu'une icône dans le systray et
rien d'autre visible à l'écran (sauf lors du double clic sur l'icône du
systray qui affiche la fenêtre de mon application).

Quelqu'un pourrait-il me donner l'astuce ?
C'est pour un serveur web donc sauf pour la fenêtre de configuration, je
n'ai pas besoin de voir mon apli dans la barre des tâches.

Cordialement.



--
Pierre BOUSQUET

" Ne me dites pas que ce problème est difficile.
S'il n'était pas difficile, ce ne serait pas un problème. "
Posté le 12 janvier 2006 - 19:07
Salut,

si tu n'as qu'une fenêtre d'ouverte, tu n'as qu'à la rendre invisible.

Mathieu
Posté le 12 janvier 2006 - 19:07
Merci à tous les deux pour les infos :)

Pierre BOUSQUET a écrit :
Voici un exemple de code que tu pourrais placer dans "modification de
taille" de ta fenetre

SI FenTaille(MaFenetre)=TailleMini ALORS
MaFenetre..Visible=Faux
SysIconeAjoute("MonIcone.ico",menu_Icone,MoiMême..Titre,"ActionSysIcone")
SINON
// SysIconeSupprime()
MaFenetre..Visible=Vrai
MoiMême..X=0
MoiMême..Y=0
MoiMême..Largeur=SysXRes()
MoiMême..Hauteur=Barre1..Hauteur+10
FIN

PROCEDURE ActionSysIcone
SELON TypeAction
CAS 515
// Double clic gauche : WM_LBUTTONDBLCLK = 515
Restaure(MaFenetre)
MaFenetre..Visible=Vrai
FenEtat(MaFenetre,DessusTout)
FenEtat(MaFenetre,Normal)
CAS 513
// Clic gauche enfoncé : WM_LBUTTONDOWN = 513
CAS 514
// Clic gauche relevé : WM_LBUTTONUP = 514
CAS 521
// Double clic milieu : WM_MBUTTONDBLCLK = 521
CAS 519
// Clic milieu enfoncé : WM_MBUTTONDOWN = 519
CAS 520
// Clic milieu relevé : WM_MBUTTONUP = 520
CAS 518
// Double clic droit : WM_RBUTTONDBLCLK = 518
CAS 516
// Clic droit enfoncé : WM_RBUTTONDOWN = 516
CAS 517
// Clic droit relevé : WM_RBUTTONUP = 517
FIN


Dans son message précédent, NiCo a écrit :
Bonjour,

Voilà j'ai vu qu'on pouvait réduire une application dans le systray
windows grâce à la fonction systray(). Mon problème c'est que mon
application apparaît encore dans la barre des tâche une fois réduite
dans le systray. Mon but est de n'avoir qu'une icône dans le systray et
rien d'autre visible à l'écran (sauf lors du double clic sur l'icône du
systray qui affiche la fenêtre de mon application).

Quelqu'un pourrait-il me donner l'astuce ?
C'est pour un serveur web donc sauf pour la fenêtre de configuration, je
n'ai pas besoin de voir mon apli dans la barre des tâches.

Cordialement.