Tu vas trop vite, j'étais parti récupérer un bout de code
Code : Tout sélectionner
;- Constantes fenêtres
Enumeration
#Win_Main
EndEnumeration
;-Constantes diverses
Enumeration
#SysIcon
#Sytray
#PopUp
EndEnumeration
;- Variables globales
Global ScreenWidth, ScreenHeight, CurPos.POINT
;- Récupération des paramètres de l'écran
; Cette partie récupère les coordonnées de la zone de travail de l'écran,
; c'est à dire la largeur, et la hauteur sans la barre de tâches
;
SystemParametersInfo_(#SPI_GETWORKAREA,0,rect.RECT,0)
ScreenWidth = rect\right ; Largeur de l'écran
ScreenHeight = rect\bottom ; Hauteur de l'écran (Zone de travail)
;- Procedures
;- Ouverture de la fenêtre Principale
Procedure Open_Win_Main(ScrWidth.l, ScrHeight.l, WinWidth, WinHeight)
WinRect.RECT
If OpenWindow(#Win_Main, ScrWidth - WinWidth, ScrHeight-WinHeight, WinWidth, WinHeight, #PB_Window_SystemMenu | #PB_Window_TitleBar | #PB_Window_Invisible , "SysTray-Test")
hwnd = WindowID(#Win_Main)
; Après avoir ouvert la fenêtre, on récupère ses dimensions réelles, c'est à dire
; celles qui incluent la barre de titre et les bordures
GetWindowRect_(hwnd, @WinRect)
W_Width = WinRect\right - WinRect\left ; Calcul de la largeur
W_Height = WinRect\bottom - WinRect\top ; Calcul de la hauteur
; On déplace ensuite la fenêtre pour qu'elle colle au coin bas/droite de l'écran
MoveWindow_(hwnd,ScrWidth-W_Width,ScrHeight-W_Height,W_Width,W_Height,#True)
ProcedureReturn hwnd
EndIf
EndProcedure
;/ Fermeture/Ouverture de la fenêtre des options
Procedure Minimize(Flag.b)
If Flag = 1
DisableMenuItem(1,1) ; Désactive le menu 1
DisableMenuItem(2,0) ; Active le menu 2
HideWindow(#Win_Main, 1) ; Réduit la fenêtre
Else
DisableMenuItem(1,0) ; Active le menu 1
DisableMenuItem(2,1) ; Désactive le menu 2
HideWindow(#Win_Main, 0) ; Affiche la fenêtre
EndIf
EndProcedure
;- Ouverture de la fenêtre, et création des menus et du SysTray
hwnd = Open_Win_Main(ScreenWidth, ScreenHeight, 200, 150) ; Ouvre la fenêtre
hIconSysTray = LoadImage(#SysIcon,"ClearScreen.ico") ; Charge l'icône
AddSysTrayIcon(#Sytray,hwnd,hIconSysTray) ; Ajoute l'icône dans le SysTray
CreatePopupMenu(#PopUp) ; Crée un menu Pop-Up
MenuItem(1,"Mettre en icône...") ; Ajout des menus
MenuItem(2,"Afficher...")
MenuBar()
MenuItem(3,"Quitter")
; Comme la fenêtre sera invisible à l'ouverture, le menu servant
; à la minimiser sera inactif, tandis que celui servant à l'agrandir
; sera actif
;
DisableMenuItem(1,1) ; Menu inactif à l'ouverture
DisableMenuItem(2,0) ; Menu actif à l'ouverture
;- Début de la boucle
Repeat
Select WaitWindowEvent()
Case #PB_Event_SysTray
Select EventType()
Case #PB_EventType_RightClick ; Un click droit fait apparaître le menu
DisplayPopupMenu(#PopUp, hwnd)
EndSelect
Case #PB_EventMenu
Select EventMenuID()
Case 1 : Minimize(1)
Case 2 : Minimize(0)
Case 3 : quit = 1
EndSelect
Case #PB_EventGadget
Select EventGadgetID()
EndSelect
Case #PB_EventCloseWindow : Minimize(1)
EndSelect
Until quit = 1
End
Pour le fichier .ico, tu en trouveras certainement un sur ton PC
PS: j'ai pas eu le temps de retirer les bouts de code inutiles

Chris
