Bonjour,

Je suis en train d'essayer de faire un simple player en utilisant wxWidgets. J'utilise donc wxMediaCtrl. J'utilise aussi wxDev-C++. Voici une partie du code :

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
38
39
40
void Projet2Frm::CreateGUIControls()
{
	SetTitle(wxT("Projet2"));
	SetIcon(wxNullIcon);
	SetSize(8,8,320,334);
	Center();
 
 
	WxMediaCtrl1 = new wxMediaCtrl(this, ID_WXMEDIACTRL1,wxT(""), wxPoint(41,22), wxSize(230,147) );
	WxMediaCtrl1->Enable(false);
	WxMediaCtrl1->SetFont(wxFont(8, wxSWISS, wxNORMAL,wxNORMAL, false, wxT("Tahoma")));
	WxMediaCtrl1->ShowPlayerControls(wxMEDIACTRLPLAYERCONTROLS_NONE);
 
	WxOpenFileDialog1 =  new wxFileDialog(this, wxT("Choose a file"), wxT(""), wxT(""), wxT("*.*"), wxOPEN);
 
	WxButton1 = new wxButton(this, ID_WXBUTTON1, wxT("WxButton1"), wxPoint(88,236), wxSize(119,24), 0, wxDefaultValidator, wxT("WxButton1"));
	WxButton1->SetFont(wxFont(8, wxSWISS, wxNORMAL,wxNORMAL, false, wxT("Tahoma")));
 
}
 
void Projet2Frm::OnClose(wxCloseEvent& event)
{
	Destroy();
}
 
/*
 * WxButton1Click
 */
void Projet2Frm::WxButton1Click(wxCommandEvent& event)
{
    wxFileDialog fd(WxOpenFileDialog1);
    fd.SetMessage(_("Ouvrir un fichier vidéo"));
    if (fd.ShowModal()==wxID_OK){
        if(!WxMediaCtrl1->Load(fd.GetPath()))
        wxMessageBox(wxT("Load n' a pas marché"));
        if(!WxMediaCtrl1->Play())
        wxMessageBox(wxT("Play n' a pas marché"));
    }
 
}
Il se compile correctement, mais il ne veut pas lire de fichier, il affiche "Load n' a pas marché", pourtant le code est le plus basique possible, je ne vois pas où est le problème.

Merci de votre aide.

PS : Voici le projet complet http://rapidshare.com/files/33067485/proj.rar

Edit : C'est résolu. En fait il ne fallait pas mettre l'appel à la fonction load et le play dans le même bouton, il faut la mettre dans 2 fonctions séparées.