Page 1 sur 1

augmenter/baisser le volume de windows

Publié : dim. 28/mai/2006 10:20
par venom
bonjour.

deja bonne fete a toutes les mamans :D .

ensuite je cherche a baisser la barre de son qui se trouve a coter de l'horloge grace a un "trackbargadget" est-ce possible.

voici un code d''exemple

Code : Tout sélectionner

;- Window Constants
Enumeration
  #Window_0
EndEnumeration

;- Gadget Constants
Enumeration
  #TrackBar_0
EndEnumeration

  If OpenWindow(#Window_0, 216, 0, 600, 86,  #PB_Window_SystemMenu | #PB_Window_TitleBar | #PB_Window_WindowCentered , "volume windows")
    If CreateGadgetList(WindowID())
      TrackBarGadget(#TrackBar_0, 30, 20, 530, 40, 0, 10)
      
    EndIf
  EndIf
  
  Repeat 
  event = WaitWindowEvent() 
  If event = #PB_EventGadget 
    Select EventGadgetID() 

    EndSelect 
  EndIf  
Until event = #PB_EventCloseWindow
en esperant que vous avez compris :) :wink:



@++

Publié : dim. 28/mai/2006 11:00
par flaith
bien sur que c'est possible, sauf que pour récupérer la valeur du volume, il faut utiliser

Code : Tout sélectionner

waveOutGetVolume_
et pour fixer la valeur

Code : Tout sélectionner

waveOutSetVolume_
je te trouve un p'tit code bientôt !!!

Publié : dim. 28/mai/2006 11:06
par flaith
Juste une chose, la valeur récupérée (sur 16bits) contient volume et AUSSI la balance :? , un petit exemple pour récupérer les 2 valeurs :

Code : Tout sélectionner

a$ = "--------------------------" + #LF$

valeur.l = $40F0

a$ + "Valeur initiale = $" + Hex(valeur) + #LF$

valHIGH.c = valeur & $00FF
valLOW.c = valeur >> 8

a$ + "Valeur haute = $" + Hex(valHIGH) + #LF$
a$ + "Valeur basse = $" + Hex(valLOW) + #LF$

a$ + "--------------------------" + #LF$

valeurH.c = (valHIGH * 100) / $FF
valeurL.c = (valLOW * 100) / $FF

a$ + "Valeur decimale haute = " + Str(valeurH) + #LF$
a$ + "Valeur decimale basse = " + Str(valeurL) + #LF$
a$ + "--------------------------" + #LF$

a$ + #LF$ + #LF$ + "************** REVERSE ***" + #LF$ + #LF$

valHIGH = Round((valeurH * $FF) / 100,1)
valLOW = Round((valeurL * $FF) / 100,1)

a$ + "--------------------------" + #LF$
a$ + "Valeur haute = $" + Hex(valHIGH) + #LF$
a$ + "Valeur basse = $" + Hex(valLOW) + #LF$

valeur = valLOW << 8
valeur = valeur | valHIGH

a$ + "valeur initiale = $" + Hex(valeur) + #LF$
a$ + "--------------------------" + #LF$

MessageRequester("",a$)
:wink:

Publié : dim. 28/mai/2006 16:38
par venom
bonjour, flaith

je te remercie pour ta reponse mais je t'avoue que je ne comprend pas ton code :oops: desoler.


@++

Publié : dim. 28/mai/2006 17:00
par flaith
:D arf, c'est vrai.

Disons que lorsque tu récupères la valeur de waveOutGetVolume_, tu as $FF50 qui correspond au volume canal gauche/canal droit, il te faut donc récupérer les 2 valeurs, car ici tu as volume à 100% à gauche et volume à 30% (environ) à droite, le petit prog du dessus te permet de récupérer les valeurs permettant d'afficher le curseur sur tes barres de volume.
Ou alors tu utilises la valeur la plus haute pour régler le volume sur ta barre.


:? je viens de me relire, je sais pas si c'est toujours aussi clair !!!

Publié : dim. 28/mai/2006 17:11
par venom
je viens de me relire, je sais pas si c'est toujours aussi clair !!!
:lol:

t'inquiette :wink: sa devrais aller je va creuser un peut et c'est bon :) #jaune
merci


@++