IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++Builder Discussion :

lecture d'un avi sur un panel : avi rebel !


Sujet :

C++Builder

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre �clair� Avatar de avogadro
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    412
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 412
    Par d�faut lecture d'un avi sur un panel : avi rebel !
    Bonjour,
    en gros quand je double clic sur un filelistbox, je veux que le mdiaplayer1 le lise, si c'est un mp3 il n'y a pas d'affichage mais si c'est un avi par exemple, je veux qu'il le lise dans un panel4, mais si j'ai lu une autre video avant ou bien une musique avant, au lieu de s'afficher dans le pannel, elle s'affiche dans une autre fenetre oO bizard...

    au double clic sur le filelistbox :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    void __fastcall TForm1::FileListBox1DblClick(TObject *Sender)
    {
        int i;
        for (int i = 0; i < FileListBox1->Items->Count; i++)
        {
             if (FileListBox1->Selected[i]) Position = i;
        }
        PlayFileList(); // lecture de la liste des fichiers dropés
    }
    la fonction playfile list :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    void __fastcall TForm1::PlayFileList()
    {
      int i;
      AnsiString MPError;
      TRect rec;
      rec.Left=0;
      rec.top=0;
      rec.Bottom=Panel4->Height;
      rec.right=Panel4->Width;
      for ( i = Position; i < FileListBox1->Items->Count; i++)
        {
          if (Position < FileListBox1->Items->Count )
          {
            MediaPlayer1->FileName = FileListBox1->Items->Strings[Position];
            MediaPlayer1->StartPos=0; //repositionne le départ de lecture à 0
            ScrollBar1->Position= 0;  // idem pour le curseur
            MediaPlayer1->Display = Panel4;
            try
              {
              MediaPlayer1->Open();
              MediaPlayer1->DisplayRect=rec;
              Timer1->Enabled=true;
              MediaPlayer1->Play();
              PlayLength();
              }
            catch (...)
            {
            MPError = "Error " + IntToStr(MediaPlayer1->Error) + ": " + MediaPlayer1->ErrorMessage;
            Application->MessageBox(MPError.c_str(),NULL, MB_OK);
            }
     
            StatusBar1->Panels->Items[0]->Text = FileListBox1->Items->Strings[Position];
            StatusBar1->Panels->Items[1]->Text = Position;
            // affichage index
           }
         }
    }
    PS: quand je passe d'une video a une musique, sur le pannel il y a toujours l'image, et que je lit une musique, je fais quand meme le display, ca vient peut etre de la je sais pas, et pour cleaner le panel4, je fais comment? pas de free...

    Des id�es peut etre?

    en gros pour l'affichage dans le pannel il faut regarder ca :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    TRect rec;
    rec.Left=0;
    rec.top=0;
    rec.Bottom=Panel4->Height;
    rec.right=Panel4->Width;
    MediaPlayer1->FileName = FileListBox1->Items->Strings[Position];
    MediaPlayer1->Display = Panel4;
    MediaPlayer1->Open();
    MediaPlayer1->DisplayRect=rec;
    Timer1->Enabled=true;
    MediaPlayer1->Play();

  2. #2
    Membre �clair� Avatar de avogadro
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    412
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 412
    Par d�faut
    a d�faut d'avoir une solution a mon probleme avez vous un lien pour faire un bon lecteur de video? un tuto ou autre...

  3. #3
    Membre exp�riment�

    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    288
    D�tails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Janvier 2003
    Messages : 288
    Par d�faut
    Pour avoir besoin d'un delete il faut un new auparavant. Ce n'est pas le cas ici, donc pas besoin de delete.
    Par contre � l'oppos� de Open(), il y a souvent Close().
    Un thread un peu court mais dont le sujet peu t'int�resser:
    http://www.developpez.net/forums/showthread.php?t=18150

    yarp
    www.senosoft.com

  4. #4
    Membre �clair� Avatar de avogadro
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    412
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 412
    Par d�faut
    ah ui je vois le truc hmmm

    et comment je pourrais faire pour trouver l'extension de mon fichier? genre .avi, .mp3 (s'achant que le filtre pour choisir le fichier, opendialog, rassemble tous ces fichiers)

  5. #5
    Membre �prouv� Avatar de Flow_75
    Femme Profil pro
    Ing�nieure
    Inscrit en
    Mai 2005
    Messages
    1 100
    D�tails du profil
    Informations personnelles :
    Sexe : Femme
    �ge : 42
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : Ing�nieure
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 100
    Par d�faut
    tu as une fonction qui permet de savoir l'extention d'un fichier :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    extention = ExtractFileExt(Fichier);

Discussions similaires

  1. R�ponses: 1
    Dernier message: 09/01/2009, 15h55
  2. R�ponses: 6
    Dernier message: 13/09/2007, 23h23
  3. Donnez votre avis sur les articles de Developpez.com
    Par Geronimo dans le forum C++Builder
    R�ponses: 13
    Dernier message: 14/01/2007, 22h00
  4. Problem avec les *.AVI sur les panels
    Par NaDiA_SoFt dans le forum C++Builder
    R�ponses: 3
    Dernier message: 31/08/2003, 22h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo