cs_mobilesman
Messages postés21Date d'inscriptionmercredi 12 mars 2003StatutMembreDernière intervention24 octobre 2006
-
22 mai 2006 à 20:25
cs_mobilesman
Messages postés21Date d'inscriptionmercredi 12 mars 2003StatutMembreDernière intervention24 octobre 2006
-
26 mai 2006 à 11:31
J'aimerais pouvoir lire un fichier steamé lorsque je click sur un items d'une listbox ... mais impossible .
Voila la derniere version de mon code qui me semblait plutôt juste
jsem2k1
Messages postés125Date d'inscriptionsamedi 11 décembre 2004StatutMembreDernière intervention12 août 20081 26 mai 2006 à 02:25
Bon je te propose un truc ... tu peux m'envoyer ton prog en si tu veux je vais le regarder et te dir ce qui ne marche pas. Sa va me faire un grand plaisir.
Essay sa
<hr size="2" width="100%" />Public Class Form1
Dim RadioSite(1, 2) As String
For i As Integer = 0 To UBound(RadioSite)
ListBox1.Items.Add(RadioSite(i, 1))
Next
End Sub
Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged
For i As Integer = 0 To UBound(RadioSite)
If RadioSite(i, 1) = ListBox1.SelectedItem Then
AxWindowsMediaPlayer1.URL = RadioSite(i, 2)
End If
Next
cs_mobilesman
Messages postés21Date d'inscriptionmercredi 12 mars 2003StatutMembreDernière intervention24 octobre 2006 24 mai 2006 à 19:49
En fait oui cela marche ... mais lorsque les items d'une collection sont du type http://www........ mon nouveau prob est contenus dans ces quelque ligne :
jsem2k1
Messages postés125Date d'inscriptionsamedi 11 décembre 2004StatutMembreDernière intervention12 août 20081 24 mai 2006 à 21:40
Ok il y a un truc que je ne comprand pas bien... Tu déclare Direct8 et tu lui assigne une valeur mais cette valeur tu ne l'utilise pas dans ta procédure. Alors a quoi sa te sert de la déclaré et de l'initialiser ???
cs_mobilesman
Messages postés21Date d'inscriptionmercredi 12 mars 2003StatutMembreDernière intervention24 octobre 2006 24 mai 2006 à 21:52
Excuse moi mais je suis tout neuf ds la programmation ,
Lorsque je clik sur l'item , Direct8 , je renvoie dans media player l'instruction de lire "direct8" d'ou un message d'erreur , et comme dans ma listebox je ne veux pas voir "http://www.direct8.fr/live.asx.php " , il est donc necessaire d'assigner a l'item Direct8 une valeur qui dans mon cas est l'adresse URL pour que figure dans la box direct8, et que le media player lise l'url . Est ce faux ce ke je di?
jsem2k1
Messages postés125Date d'inscriptionsamedi 11 décembre 2004StatutMembreDernière intervention12 août 20081 24 mai 2006 à 23:00
Ok ok je comprend mieux ton problème maintenant.
Ce n'est pas vraiment la façon de procéder . Moi je te conseille de créé un tableau a 2 dimantion. La première dimmantion corespondrais au nom des Site internet que tu veux voir afficher dans ton listBox (Ex: Direct8 ) dans la deuxième dimantion le site auqual ce site corespond (Ex: http://www....) En tout cas sa donne a peux près sa
Il faut que tu initialise ton tableau d'abord
Dim RadioSite(n,2) as String 'Le n représante le nombre de site que tu veux mettre
'si tu peux juste savoir combien il y a de site en runTime utilise Initialise ton tableau comme suit
' Dim RadioSite() as String tu n'aura alors qu'a utiliser Redim RadioSite (n,2)
<hr size="2" width="100%" /> 'Tu place ce bout de code quand tu charge ta form
'Soit dans Form_load ou dans New
RadioSite(0, 1) "Direct1" : RadioSite(0, 2) "http://www.direct8.fr/live.asx.php" RadioSite(1, 1) "Direct2" : RadioSite(1, 2) "http://www.direct8.fr/live.asx.php" RadioSite(2, 1) "Direct3" : RadioSite(2, 2) "http://www.direct8.fr/live.asx.php" RadioSite(3, 1) "Direct4" : RadioSite(3, 2) "http://www.direct8.fr/live.asx.php"
For i As Integer = 0 To UBound(RadioSite)
ListBox1
.Items.Add(RadioSite(i, 1))
Next
'Remarque que je n'ai que 4 site et que je fait partit l'index a 0 c'est important pour la suite
<hr size="2" width="100%" /> Il ne te reste plus qu'a mettre ce code
Private Sub ListBox1
_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1
.SelectedIndexChanged
For i As Integer = 0 To UBound(RadioSite)
If RadioSite(i, 1) = ListBox1
.SelectedItem Then
AxWindowsMediaPlayer1.URL =MsgBox(RadioSite(i, 2))
End If
Next
End Sub
cs_mobilesman
Messages postés21Date d'inscriptionmercredi 12 mars 2003StatutMembreDernière intervention24 octobre 2006 25 mai 2006 à 21:03
le code est parfais mais j'ai juste une derniere petite question : lorsque le fais la boucle avec listbox1.Items.Add() , et meme lorsque j'ajoute cette instruction en dehors d'une boucle les items ne s'affiche pas lorsque "j'émule" en tapant F5 ?
jsem2k1
Messages postés125Date d'inscriptionsamedi 11 décembre 2004StatutMembreDernière intervention12 août 20081 26 mai 2006 à 00:11
Mmmmmm.... T'a jamais vraiment fait de programme avant......
Ok il faut que je t'explique....
ListBox1_SelectedIndexChanged est une Procédur qui se déclanche quand l'index de l'item choisi dans ta listebox change... En d'autre terme quant tu sélectione un item dans ta listeBox. Par conséquand, il faut aumoins que tu ai un item dans ta listBox pour que cette procédure soit "déclancher". Donc le code qui vas dans cette procédure ne doit etre que le code que tu veux qu'il s'exécute quand l'utilisateur sélectione un item de ta listeBox
Dans ton cas prési c'est ce code:
For i
As
Integer = 0
To UBound(RadioSite)
If RadioSite(i, 1) = ListBox1.SelectedItem
Then
AxWindowsMediaPlayer1.URL = RadioSite(i, 2)
End
If
Next
Si tu veux que ta ListeBox se ramplisse quand ta forme se charge il faut que tu mette ton code dans la procédure qui est appeler quand l'évènement New ( le constructeur de ta form ) ou encore Form_load. Pour faire simple et ne pas trop te cassé la tête avec la théorie je te conseil de mettre le bout de code qui ramplis ta listeBox dans Form1_load.
Avant de continuer il y a une chose importante a savoir... La visibilité de tes variable... De facon concret sa veux dire l'accessibilité de tes variable. Si t'est variable peuvent etre accesible a certain "endroit" (Procédure , fonction classe, module...).
C'est un consepte très important qui t'évitera beaucoup de trouble...
Ton tableau RadioSite doit donc etre visible partout dans ta Form puisque tu y fera souvant référance. Il faut donc le déclaré Dans ta classe form1 ou plus présisément En dessou de Classe Form1
Example
Public Class Form1 '<= Cette parti exite déja
Dim
RadioSite(1,2) As String
...
...
End Class
Bon suffi le charabia.... Sa devrai normalement te donner un truc du genre pour ton code..
<hr size="2" width="100%" />Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
RadioSite(0, 1) "Direct8" : RadioSite(0, 2) http://www.direct8.fr/live.asx.php RadioSite(1, 1) "Sunbiz" : RadioSite(1, 2) http://www.sunvibz.tv/sunvibz.asx
For i
As
Integer = 0
To UBound(RadioSite)
ListBox1.Items.Add(RadioSite(i, 1))
Next
End Sub
Private
Sub ListBox1_SelectedIndexChanged(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles ListBox1.SelectedIndexChanged
For i
As
Integer = 0
To UBound(RadioSite)
If RadioSite(i, 1) = ListBox1.SelectedItem
Then
AxWindowsMediaPlayer1.URL = RadioSite(i, 2)
End
If
Next
End
Sub
<hr size="2" width="100%" />
Si tu n'est pas très famillier avec la programation orianté objet je te succgère de lire les tutoriaux disponible sur le site... il sont bien fait et sont une bonne base de départ, MSDN est aussi un bon outil il y a une tone d'information utile. Toute fois il n'y a rien de mieux que des livre... Avoir un bon livre de réfférance c'est magique.
cs_mobilesman
Messages postés21Date d'inscriptionmercredi 12 mars 2003StatutMembreDernière intervention24 octobre 2006 26 mai 2006 à 01:54
Ok, merci je vais trouver un book je pense en avoir besoin . j'ai bien compris l'importance de la position des variables mais lorsque je suis ta démarche bizarement on me dit que RadioSite est un nom qui n'est pas déclaré ... malgré qu'il soit déclaré juste au dessus bizare bizare ...
cs_mobilesman
Messages postés21Date d'inscriptionmercredi 12 mars 2003StatutMembreDernière intervention24 octobre 2006 26 mai 2006 à 11:31
c'est juste je devais donc declarer le tableau dans la "form" plutot que dans "form_load" d'ou l'importance de savoir ou déclarer ses variable ....
encore merci pour ton aide .... c'est franchement sympa