En attendant, je suis satisfait de ce qui a été fait!! Voici le code a l'heure actuelle :
Code : Tout sélectionner
If LoadImage(1,"D:\Documents\Programmation\Shermavigator\Play.ICO")
Else
MessageRequester("Erreur","L'icone ne peut etre chargée !")
EndIf
UsePNGImageDecoder()
LoadImage(2,"D:\Images\Non classées\open.png")
ResizeImage(2,20,15,#PB_Image_Smooth)
If InitSound() = 0
MessageRequester("Erreur", "Chef, on peut pas initialiser le systéme de son!!", 0)
End
EndIf
Enumeration
#icone
#pause
#stop
#open
#adresse
#lecture
#hide
#quit
#quitter
#stat
#volume
#deplace
EndEnumeration
LoadImage(#quitter,"D:\Images\Non classées\fermer.png")
OpenWindow(0,11,10,300,150,"SherPlay", #PB_Window_BorderLess | #PB_Window_ScreenCentered | #PB_Window_BorderLess)
SetWindowColor(0,RGBA(40,80,200,0))
status=#True
lect=#True
progress=0
long=0
Global adresse$ =""
AddSysTrayIcon(#icone,WindowID(0),ImageID(1))
SysTrayIconToolTip(#icone,"SherPlay. Lire de la musique.")
ButtonGadget(#pause, 50, 10, 100, 25, "Pause", #PB_Button_Toggle)
ButtonGadget(#hide, 190, 120, 100, 25, "Masquer")
ButtonImageGadget(#quit, 270,10,20,20,ImageID(#quitter))
TextGadget(#adresse, 10, 50, 270, 20, "Aucune musique chargée.")
SetGadgetColor(#adresse,#PB_Gadget_BackColor,RGB(40,80,200))
TrackBarGadget(#volume, 10, 90, 280, 20, 0, 100, #PB_TrackBar_Ticks)
SetGadgetColor(#volume,#PB_Gadget_BackColor,RGB(40,80,200))
SetGadgetState(#volume,70)
;TextGadget(#stat,10,90,150,20,"NULL")
ButtonImageGadget(#open, 10, 10, 30, 25, ImageID(2))
ButtonGadget(#deplace, 10, 120, 70, 25, "Déplacer")
Repeat
Event=WaitWindowEvent(5)
Select Event
Case #PB_Event_Gadget
Select EventGadget()
Case #deplace ;ca c'est de la merde
ResizeWindow(0,DesktopMouseX(),DesktopMouseY(),#PB_Ignore,#PB_Ignore)
Case #open ;l'utilisateur ouvre un fichier
adresse$=OpenFileRequester("Choisissez une musique","D:\Musique\","Tous| *.*",0)
i=1
;Obtention du nom du fichier
While Left(souschaine.s,1)<>"\"
souschaine.s=Right(adresse$,i)
i+1
Wend
souschaine=Right(souschaine,Len(souschaine)-1)
adresse1$=souschaine
SetGadgetText(#adresse,adresse1$)
SysTrayIconToolTip(#Icone,"SherPlay. Lecture de "+adresse1$+Chr(10)+"Cliquez pour faire réapparaitre la fenetre.")
;Chargement et lecture du fichier
If LoadSound(0, adresse$)
long=SoundLength(0)
PlaySound(0, #PB_Sound_Loop)
Else
MessageRequester("Merde!","Y'a un probléme. on n'arrive pas a lire ce son... Peut être que c'est pas un format supporté? Seul le .wav est actuellement supporté",0)
EndIf
ProgressBarGadget(#lecture, 10, 70, 280, 10, 0, long, #PB_ProgressBar_Smooth)
SetGadgetColor(#lecture,#PB_Gadget_FrontColor,RGB(20,50,250))
SetGadgetColor(#lecture,#PB_Gadget_BackColor,RGB(250,230,200))
Case #pause
If lect=#True
PauseSound(0)
lect=#False
Else
ResumeSound(0)
lect=#True
EndIf
Case #quit
End
Case #hide
HideWindow(0,#True)
EndSelect
Case #PB_Event_SysTray ;Gérer le clic sur l'icone, si la fenétre est visible, la masquer, et inversement
Select EventGadget()
Case #icone
If status=#True
HideWindow(0,#True)
status=#False
Else
HideWindow(0,#False)
status=#True
EndIf
EndSelect
EndSelect
If long <> 0
SetGadgetState(#lecture,GetSoundPosition(0))
;SetGadgetText(#stat, Str(GetSoundPosition(0)))
SoundVolume(0,GetGadgetState(#volume))
EndIf
ForEver
Reste plus qu'a essayer de la rendre déplacable...