Lecture de TV en ligne par une listbox

Résolu
cs_mobilesman Messages postés 21 Date d'inscription mercredi 12 mars 2003 Statut Membre Dernière intervention 24 octobre 2006 - 22 mai 2006 à 20:25
cs_mobilesman Messages postés 21 Date d'inscription mercredi 12 mars 2003 Statut Membre Dernière intervention 24 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

Private



Sub
ListBox1_SelectedIndexChanged(

ByVal
sender

As
System.Object,

ByVal
e

As
System.EventArgs)

Handles
ListBox1.SelectedIndexChangedListBox1.Items(0) AxWindowsMediaPlayer1.URL


http://www.direct8.fr/live.asx.php



End



Sub

14 réponses

jsem2k1 Messages postés 125 Date d'inscription samedi 11 décembre 2004 Statut Membre Dernière intervention 12 août 2008 1
22 mai 2006 à 22:34
essay
Private



Sub
ListBox1_SelectedIndexChanged(

ByVal
sender

As
System.Object,

ByVal
e

As
System.EventArgs)

Handles
ListBox1.SelectedIndexChanged
AxWindowsMediaPlayer1.URL =

ListBox1.SelectedItem.ToString()


AxWindowsMediaPlayer1.Play



End



Sub






je n'ai pas tester mais je crois que sa devrai marcher

Bonne chance
3
jsem2k1 Messages postés 125 Date d'inscription samedi 11 décembre 2004 Statut Membre Dernière intervention 12 août 2008 1
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

    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

    'Tu met le reste de ton code ici

End Class
<hr size="2" width="100%" />The J
3
cs_mobilesman Messages postés 21 Date d'inscription mercredi 12 mars 2003 Statut Membre Dernière intervention 24 octobre 2006
24 mai 2006 à 19:03
Ok merci dsl du petit retard pour la réponse ca marche sans prob merci
0
cs_mobilesman Messages postés 21 Date d'inscription mercredi 12 mars 2003 Statut Membre Dernière intervention 24 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 :





Dim
 Direct8

As



String

Direct8 = "


http://www........."

AxWindowsMediaPlayer1.URL = ListBox1.SelectedItem.ToString()

Mais cela ne fonctionne pas.... lorsque je clik sur l'item Direct8 dans ma listbox
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jsem2k1 Messages postés 125 Date d'inscription samedi 11 décembre 2004 Statut Membre Dernière intervention 12 août 2008 1
24 mai 2006 à 20:01
Mmmmmmm petu donner un example de ton code se serai plus facile pour moi de savoir exactemet c'est quoi le proplème

[size=4]The J/size=4 [B)]
0
cs_mobilesman Messages postés 21 Date d'inscription mercredi 12 mars 2003 Statut Membre Dernière intervention 24 octobre 2006
24 mai 2006 à 20:23
C'est simplement ca mon code :

Private






Sub
ListBox1_SelectedIndexChanged(

ByVal
sender

As
System.Object,

ByVal
e

As
System.EventArgs)

Handles
ListBox1.SelectedIndexChanged



'dans les propriétés de la listbox ==> items ==> "Direct8"


Dim
Direct8

As



String

Direct8 = "http://www.direct8.fr/live.asx.php

"

AxWindowsMediaPlayer1.URL = ListBox1.SelectedItem.ToString()




End



Sub
0
jsem2k1 Messages postés 125 Date d'inscription samedi 11 décembre 2004 Statut Membre Dernière intervention 12 août 2008 1
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 ???

[size=4]The J/size=4 [B)]
0
cs_mobilesman Messages postés 21 Date d'inscription mercredi 12 mars 2003 Statut Membre Dernière intervention 24 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?
0
jsem2k1 Messages postés 125 Date d'inscription samedi 11 décembre 2004 Statut Membre Dernière intervention 12 août 2008 1
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

Sa devrais Régler ton problème

[size=4]The J/size=4 [B)]
0
cs_mobilesman Messages postés 21 Date d'inscription mercredi 12 mars 2003 Statut Membre Dernière intervention 24 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 ?
0
cs_mobilesman Messages postés 21 Date d'inscription mercredi 12 mars 2003 Statut Membre Dernière intervention 24 octobre 2006
25 mai 2006 à 23:15
voici donc mon code :

Private

Sub ListBox1_SelectedIndexChanged(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles ListBox1.SelectedIndexChanged

Dim RadioSite(1, 2)
As
StringRadioSite(0, 1) "Direct8" : RadioSite(0, 2)
http://www.direct8.fr/live.asx.phpRadioSite(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

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

Dois-je modifié une propriété afin que la list box se remplisse ?
0
jsem2k1 Messages postés 125 Date d'inscription samedi 11 décembre 2004 Statut Membre Dernière intervention 12 août 2008 1
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.

The J
0
cs_mobilesman Messages postés 21 Date d'inscription mercredi 12 mars 2003 Statut Membre Dernière intervention 24 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 ...
0
cs_mobilesman Messages postés 21 Date d'inscription mercredi 12 mars 2003 Statut Membre Dernière intervention 24 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
0
Rejoignez-nous