Page 1 sur 1

[..] Splash réactif

Posté : jeu. 02 févr. 2012 19:55
par Xinnony
Bonjour a tous, je bloque depuis plusieurs jours sur un de mes scripts.

Je souhaite faire un logiciel comme 3RVX.
Pour ceux qui connaisse pas c'est un OSD suivant le volume de l'ordinateur.

Alors mon problème c'est que si l'utilisateur monte le volume rapidement, il faut que les Splash sois réactif et évitée de les superposée, donc si on supprime un a un c'est pas assez rapide ou du moins je m'y prend mal.
De plus j'aimerais bien un effet de fondu.

J'ai essayer avec plusieurs UDF de Splash, avec différents façons avec une GUI (guicreate/guidelete/guictrlsetimage, ...).
Peut être GDI ?, mais aucune expérience dans cette fonction.

Puis ma méthode pour savoir le volume et pour donner l'ordre de lancer le splash me parait pas bonne mais sa je verrais plus tard.

Edit : Ajout d'un bout de code.

Code : Tout sélectionner

Local $b

While 1
    _val_change_brightness()
WEnd

Func _val_change_brightness()
    While 1
        $a = NEW_get_brightness_to_osd()
        While 1
            ConsoleWrite("\\ $a : "&$a&@CRLF&"\\ $b : "&$b&@CRLF&@CRLF)
            $b = NEW_get_brightness_to_osd()
                If $b <> $a Then                                                     ; SI changement de volume ALORS
                        ConsoleWrite("Debut Splash !"&@CRLF)
;~                      GUIDelete($gui)
;~                      _OSD($b)
;~                      Run(@ScriptDir&"\Splash_OSD.au3")
                        ConsoleWrite("Fin Splash !"&@CRLF&@CRLF)
                    ExitLoop 2
                Else                                                                        ; SINON pas de changement = rien
                    Sleep(1000)                                                         ; Valeur a baisser a '10' pour la réactivité
                EndIf
        WEnd
    WEnd
EndFunc

Func NEW_get_brightness_to_osd()                                              ; Je précise que cette fonction n'est pas un Random, c'est juste un exemple
    $a = Random(0, 100, 1)
    Return $a
EndFunc
 

Re: [..] Splash réactif

Posté : ven. 03 févr. 2012 10:13
par ZDS
Bonjour,

Même si dans le principe j'ai compris ton besoin, ça reste difficile de t'aider sans une once de code fonctionnel sous la main pour commencer quelque part.

Poste ton code dans le message précédent, et je serai heureux de te dépanner.

A bientôt.

Re: [..] Splash réactif

Posté : ven. 03 févr. 2012 11:07
par Xinnony
ZDS a écrit :...
Poste ton code dans le message précédent, et je serai heureux de te dépanner.
...
Fait, merci =)

Re: [..] Splash réactif

Posté : ven. 03 févr. 2012 11:13
par ZDS
Ah, je pensais que tu avais déjà un code assez abouti... en fait tu pars de zéro :s Je vais voir ce que je peux faire, je te tiens au courant.

Sinon, pour le "cahier des charges", tu veux uniquement un affichage qui réagit aux changements de volume ou bien quelque chose qui puisse aussi agir sur le volume? Pour le moment, je vais au plus simple, un OSD très simpliste qui s'affiche quand le volume change, avec un effet de fade-in/fade-out.

A plus tard.

EDIT: Premier jet de code, pas encore tout à fait au point (et pour le look, c'est à greffer plus tard. Faire les choses dans l'ordre déjà, le fonctionnel d'abord, l'esthétique ensuite). Sinon, le nAiO est un projet officiel et légal, et vu que les versions 1.2X sont désormais interdites par les CGUs d'Ankama, je pense que ça répond à ta question ^^
► Afficher le textePremier jet
► Afficher le texteFichier 'SoundGetSetQuery.au3' pour les manipulations/lectures de volume

Re: [..] Splash réactif

Posté : ven. 03 févr. 2012 11:33
par Xinnony
Oui exactement sa, un effet fade in/out réactif suivant le volume.

Pour le changement de volume j'ai déjà mes fonction, ainsi que la récupération du niveau de volume.

Je block juste pour l'OSD, et je voudrais par le billet de fichiers images pouvoir faire plusieurs thèmes.
Je pense faire un pour le muet (0), maximum (100) et le reste en 0>10 / 10>20 / 20>30 / ... une dizaine (soit 12 images).

PS : Ton "nAiO" c'est pour la 2.0 ou 1.29 ?

Re: [..] Splash réactif

Posté : ven. 03 févr. 2012 15:20
par ZDS
Petite mise à jour dans le traitement en interne. Si tu as besoin d'infos sur le code, demande moi :
► Afficher le texteSecond jet
PS: Avec cette fenetre tu auras au moins moyen de voir comment on traite un composant comme ton OSD pour le volume. Pour le coté esthétique, tu peux regarder comment fonctionne ce script : http://www.autoitscript.fr/forum/viewto ... =20&t=9255 (Merci Mikell ^^)

Re: [..] Splash réactif

Posté : sam. 04 févr. 2012 12:59
par Xinnony
Merci pour ton aide, j'ai esseyer tes deux jets et sa affiche une GUI avec une progress-bar puis fait son FadeOut.
Après sa plus rien, et sa affiche 100% même si le son est Muet.

Je pense que le script pour récupérer le Volume n'est pas bon, j'ai mis du temps a trouver le miens, sur Seven/Vista c'est différent.
Je vais essayer se weekend de modifier un peu le script pour le rendre fonctionnel.

Re: [..] Splash réactif

Posté : sam. 04 févr. 2012 13:13
par SurPriseS
Pour la gestion du volume, le plus efficace que j'ai trouvé, c'est celle incluse dans l'udf de bass.dll ;)

D'après les tests que j'ai pu faire, ça fonctionne correctement sous 7/vista/xp...

Re: [..] Splash réactif

Posté : sam. 04 févr. 2012 15:53
par Xinnony
J'ai refait le test et sa fonctionne, mais par contre je doit clicker sur le Splash pour que sa change les valeurs de la progress bar.

Edit : Enfaite c'est suivant la ou je clic sur la Progress-bar, sa avance jusqu'au clic.