[R] Lecteur de Musique.

Aide sur les Interfaces Graphique Utilisateurs (GUI).
Règles du forum
.
locos974
Niveau 5
Niveau 5
Messages : 187
Enregistré le : sam. 08 oct. 2011 22:07
Status : Hors ligne

[R] Lecteur de Musique.

#1

Message par locos974 »

Bonjour,

Depuis peu j'ai crée ( avec votre aide ) un lecteur de musique basic..
Vous devez vous dire : " Ah.. encore lui :cry:"
Mais je souhaite en faire un peu plus :
-Avoir comme tout les autre logiciels une barre en haut avec genre Fichier | outils | Affichage | Aide
-Une progress Bar en fonction de la musique ( Je cherche une ressemblance avec d'autre topic )
-Une Boite avec la liste des musique.
Si vous avez d'autre idée assez simple je veux bien que me vous les dites.

Script :
► Afficher le texte


Merci d'avance pour toutes vos réponse :wink: . Cordialement.
Modifié en dernier par locos974 le jeu. 17 nov. 2011 17:59, modifié 1 fois.
Cordialement Locos974.
Avatar du membre
moi
Niveau 7
Niveau 7
Messages : 370
Enregistré le : sam. 09 juil. 2011 22:14
Localisation : devant sont ordinateur
Status : Hors ligne

Re: [..] Lecteur de Musique.

#2

Message par moi »

recherche tout les mp3 dans le fichiers musique

Code : Tout sélectionner

#include <File.au3>
$monarray = _FileListToArray(@MyDocumentsDir & "/Mes Musiques","*.mp3",1)
après un combo est un bouton jouer devrais suffire pour jouer un des fichiers trouver...
le problème ce n'est pas un problème, le seul problème ici c'est nous.

j'aime NYAN CAT Image
Avatar du membre
TT22
Membre émérite
Membre émérite
Messages : 1566
Enregistré le : lun. 18 avr. 2011 15:21
Localisation : La Quatrième Dimension
Status : Hors ligne

Re: [..] Lecteur de Musique.

#3

Message par TT22 »

Ou alors, une recherche dans les forums :wink:
http://autoitscript.fr/forum/viewtopic.php?f=6&t=7970
Cordialement,
TT22
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Lecteur de Musique.

#4

Message par mikell »

locos974 a écrit :Vous devez vous dire : " Ah.. encore lui :cry:"
Mais non voyons, cool :mrgreen:
locos974 a écrit :-Avoir comme tout les autre logiciels une barre en haut avec genre Fichier | outils | Affichage | Aide
Regarde dans l'aide l'exemple de GUICtrlCreateMenu, c'est exactement ça
locos974 a écrit :-Une progress Bar en fonction de la musique
Ben tu fais une progressbar que tu actualises dans le while en jonglant avec avec _SoundLength et _SoundPos ^^
locos974 a écrit :-Une Boite avec la liste des musique.
Y a des TAS de possibilités, je pencherais pour un ini ou un log (txt) où tu stockes l'adresse des morceaux favoris, avec une combo comme l'a dit moi ou une edit, voire une 2ème gui

EDIT Mince j'ai manqué le post de TT22 :mrgreen:
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
locos974
Niveau 5
Niveau 5
Messages : 187
Enregistré le : sam. 08 oct. 2011 22:07
Status : Hors ligne

Re: [..] Lecteur de Musique.

#5

Message par locos974 »

TT22 : j'ai déjà regarder de nombreux topic concernant tout ça.. Je cherche mais certains truc ne me vienne pas de regarder. Sinon merci de vos réponse ! j’essaie tout ça d'ici 1heure je vous en tien au courant. :mrgreen:
Cordialement Locos974.
locos974
Niveau 5
Niveau 5
Messages : 187
Enregistré le : sam. 08 oct. 2011 22:07
Status : Hors ligne

Re: [..] Lecteur de Musique.

#6

Message par locos974 »

Pour la progressbar elle n'avance pas en fonction de ma musique :
► Afficher le texte
Cordialement Locos974.
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Lecteur de Musique.

#7

Message par mikell »

Essaye ça directement dans la boucle While

Code : Tout sélectionner

If $sound Then 
   $percent = Round((_SoundPos($sound, 2)/_SoundLength($sound, 2))*100)
   GuiCtrlSetData($Progress1, $percent)
EndIf
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
locos974
Niveau 5
Niveau 5
Messages : 187
Enregistré le : sam. 08 oct. 2011 22:07
Status : Hors ligne

Re: [..] Lecteur de Musique.

#8

Message par locos974 »

cela ne marche pas :
► Afficher le texte
Cordialement Locos974.
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Lecteur de Musique.

#9

Message par mikell »

T'as pas lu mon post ?
Faut pas le mettre sous un "Case $Progress1" qui va le bloquer, faut le sortir du switch et le mettre directement dans la boucle while, juste sous le "While 1" par exemple :roll:

Code : Tout sélectionner

While 1

If $sound Then
   $percent = Round((_SoundPos($sound, 2)/_SoundLength($sound, 2))*100)
   GuiCtrlSetData($Progress1, $percent)
EndIf

$nMsg = GUIGetMsg()
Switch $nMsg
    Case ... etc
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
locos974
Niveau 5
Niveau 5
Messages : 187
Enregistré le : sam. 08 oct. 2011 22:07
Status : Hors ligne

Re: [..] Lecteur de Musique.

#10

Message par locos974 »

Même en dessous du "While 1.." ça ne marche pas.. :cry:
Embêtant..
Cordialement Locos974.
Avatar du membre
sylvanie
Niveau 11
Niveau 11
Messages : 1556
Enregistré le : jeu. 26 juil. 2007 21:31
Localisation : Paris
Status : Hors ligne

Re: [..] Lecteur de Musique.

#11

Message par sylvanie »

Bonjour

il faudrait mettre un "if Isarray($sound)"

Puis faire plutôt un appel avec adlibregister toute les secondes au lieu de la continuité du while
Je me suis permis d'aménager un peu le code au niveau des bouton pour les tests :
► Afficher le texte
Toi qui cherche à mettre le doigt sur la solution, appuie sur F1.
locos974
Niveau 5
Niveau 5
Messages : 187
Enregistré le : sam. 08 oct. 2011 22:07
Status : Hors ligne

Re: [..] Lecteur de Musique.

#12

Message par locos974 »

Chapeau :shock: .. (Le bouton stop ne marche pas par contre.. J'ai cherché l'erreur mais pas trouvé :x )
Je ne pensais pas que cela aurait été si dur..
Merci beaucoup.
Cordialement Locos974.
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Lecteur de Musique.

#13

Message par mikell »

Faut intervertir ...si tu mets $sound=0 au début, ben ça fera _SoundStop(0) ensuite ... ^^

Code : Tout sélectionner

Func stop_chanson()
    AdlibUnRegister("Update_Progress1")
  [color=#FF0000] ; $sound=0[/color]
    _SoundStop($sound)
    _SoundClose($sound)
   [color=#FF0000] $sound=0[/color]
...etc
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
locos974
Niveau 5
Niveau 5
Messages : 187
Enregistré le : sam. 08 oct. 2011 22:07
Status : Hors ligne

Re: [..] Lecteur de Musique.

#14

Message par locos974 »

Donc ? D'où vient le problème ?
Cordialement Locos974.
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Lecteur de Musique.

#15

Message par mikell »

Ben si tu écris la fonction comme ça, le bouton stop devrait marcher
► Afficher le texte
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
locos974
Niveau 5
Niveau 5
Messages : 187
Enregistré le : sam. 08 oct. 2011 22:07
Status : Hors ligne

Re: [..] Lecteur de Musique.

#16

Message par locos974 »

Dite-moi pour cette fonction, je peux le faire pour qu'il recherche tout les musique du disque dur ?

Code : Tout sélectionner

#include <File.au3>
$monarray = _FileListToArray(@MyDocumentsDir & "/Mes Musiques","*.mp3",1)
EDIT : Il faut juste changer la Macro ?
Cordialement Locos974.
SurPriseS
Niveau 6
Niveau 6
Messages : 291
Enregistré le : jeu. 06 sept. 2007 11:35
Localisation : Finistère sud
Status : Hors ligne

Re: [..] Lecteur de Musique.

#17

Message par SurPriseS »

Oui, là il fait la recherche dans :

Code : Tout sélectionner

 @MyDocumentsDir & "/Mes Musiques"
Avatar du membre
Kagami
Niveau 5
Niveau 5
Messages : 108
Enregistré le : mer. 21 juil. 2010 19:15
Status : Hors ligne

Re: [..] Lecteur de Musique.

#18

Message par Kagami »

Bonjour,

Moi aussi je travaille sur un lecteur MP3 depuis un bon bout de temps.
J'ai donc une GUI totalement image etc...
Mais je voulais savoir un petit quelque chose et je ne pense pas qu'il y ai besoin de recréer un sujet pour cela :S
Truc tout bête sur lequel je bloque:
Je voudrais afficher le titre de la chanson et juste le titre.
J'ai essayé avec des fonctions telles que FileGetLongName ou FileGetShortName, j'ai regardé dans l'aide, fait une recherche sur le forum mais rien, je m'adresse donc à vous.

En gros, ce que je voudrais, c'est récupérer le nom de ma chanson et uniquement le nom à travers une variable $Name (donc sans le chemin ni l'extension si possible).
Pour choisir la chanson, j'ai utilisé ceci:
$Name = FileOpenDialog("Veuillez ouvrir une musique", @DesktopDir & '', "mp3 (*.mp3)")

Merci de votre aide :D
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Lecteur de Musique.

#19

Message par mikell »

Argh... avec StringRegExp ça serait mieux, sûrement :oops:

Code : Tout sélectionner

$Name = FileOpenDialog("Veuillez ouvrir une musique", @DesktopDir & '', "mp3 (*.mp3)")
$split = StringSplit($Name , "\")

msgbox(0,"", StringTrimRight($split[$split[0]], 4))
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
sylvanie
Niveau 11
Niveau 11
Messages : 1556
Enregistré le : jeu. 26 juil. 2007 21:31
Localisation : Paris
Status : Hors ligne

Re: [..] Lecteur de Musique.

#20

Message par sylvanie »

Essayez alors

Code : Tout sélectionner

$Name=StringRegExpReplace($Name,".+\\",""))
 
après le FileOpenDialog

PS: dslé pour l'erreur du stop, reliquat d'un debug ...
Toi qui cherche à mettre le doigt sur la solution, appuie sur F1.
Répondre