bonjour voila je fais un projet sur une videothèque dans le cadre de mes étude et je n'arrive pas a mettre dans ma classe interface qui contien le conteneur , un JPanel de la classe qui Media contient le lecteur multimedia

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
//la classe interface
 
        Media player =new Media();
 
        player.setSize( 300, 300 );
        player.setLocation( 300, 300 );
 
        panRight.add(player);
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
 
//classe media
package lecteur_media;
 
 
 
 
import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.Container;
import java.awt.Panel;
import java.io.IOException;
 
//Packages d'extension Java.
import javax.media.ControllerAdapter;
import javax.media.Manager;
import javax.media.MediaLocator;
import javax.media.NoPlayerException;
import javax.media.Player;
import javax.media.PrefetchCompleteEvent;
import javax.media.RealizeCompleteEvent;
 
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
 
public class Media extends JFrame
{
	   // Lecteur de médias Java.
	   private Player lecteur;
 
	   // Composant de contenu visuel.
	   private Component mediaVisuel;
 
 
	   private JPanel panTmp;
 
	   // Constructeur de LecteurSimple.
	   public Media()
	   {
 
 
	      panTmp= new JPanel();
 
	      creerLecteur( "file:F:/deitel/ch22/FIG22_01/bailey.mpg" );//adresse du fichier  attention pas oublier file
 
	      // Enclencher le mode de rendu allégé des lecteurs pour une
	      // meilleure compatibilité avec les composants GUI allégés.
	      Manager.setHint( Manager.LIGHTWEIGHT_RENDERER, Boolean.TRUE );/**************renseigne toi*/
 
	   }  // fin du constructeur Media
 
 
	   // Créer un lecteur en utilisant l'emplacement du média.
	   public void creerLecteur( String emplacementMedia )
	   {
	      // Réinitialiser le lecteur et la fenêtre si un lecteur existe déjà.
	      if ( lecteur != null )
	         reinitialiseComposantsLecteur();
 
	      // Emplacement de la source du média.
	      MediaLocator localisateurMedia = new MediaLocator( emplacementMedia );
 
	      // Crée un lecteur à partir du localisateurMedia.
	      try 
	      {
	         lecteur = Manager.createPlayer( localisateurMedia );
 
	         // Inscrire un ControllerListener pour gérer les événements Player.
	         lecteur.addControllerListener(
	            new GestionnaireEvenementsLecteur() );
 
	         // Appeler realize pour permettre la lecture du média.
	         lecteur.realize();
	      }
 
	      // Aucun lecteur n'existe ou le format n'est pas supporté.
	      catch ( NoPlayerException noPlayerException ) 
	      {
	    	  JOptionPane.showMessageDialog(null,"Erreur sur la video , celle ci ne peut être lue" 
	    			  ,"Erreur de lecture",JOptionPane.ERROR_MESSAGE);
	        // noPlayerException.printStackTrace();
	      }
 
	      // Erreur d'entrée du fichier.
	      catch ( IOException ioException ) 
	      {
	    	  JOptionPane.showMessageDialog(null,"l'entrée du fichier est incorrecte" 
	    			  ,"Erreur de lecture",JOptionPane.ERROR_MESSAGE);
	         //ioException.printStackTrace();
	      }
 
	   }  // fin de la méthode creerLecteur
 
 
 
 
 
	   // Retourner le lecteur aux ressources du système
	   // et réinitialiser le média et les commandes.
 
	   public void reinitialiseComposantsLecteur()
	   {
	     // Éliminer le composant vidéo précédent s'il existe.
 
		   if ( mediaVisuel != null )
			   panTmp.remove( mediaVisuel );
 
	     // Arrêter le lecteur et restituer les ressources allouées.
	     lecteur.close();
	   }
 
	   // Obtenir le média visuel et les commandes du lecteur.
	   public void getComposantsMedia()
	   {
	      // Obtenir le composant visuel du lecteur.
	      mediaVisuel = lecteur.getVisualComponent();
 
	      // Ajouter un composant visuel si présent.
	      if ( mediaVisuel != null )
	    	  panTmp.add( mediaVisuel, BorderLayout.CENTER );
 
	   }  // fin de la méthode getComposantsMedia
 
	   // Gestionnaire des ControllerEvents du lecteur.
	   private class GestionnaireEvenementsLecteur extends ControllerAdapter 
	   {
 
	      // Prélire le contenu multimédia une fois la réalisation complétée.
	      public void realizeComplete( RealizeCompleteEvent realizeDoneEvent )
	      {
	         lecteur.prefetch();
	      }
 
	      // Le lecteur peut commencer à lire le média une fois la prélecture faite.
	      public void prefetchComplete(PrefetchCompleteEvent prefetchDoneEvent )
	      {
	         getComposantsMedia();
 
	         // Assurer un canevas valide pour le cadre.
	         validate();
 
	         // Démarrer la lecture du média.
	         lecteur.start();
 
	      }  // fin de la méthode prefetchComplete
 
	   }  // fin de la classe interne GestionnaireEvenementsLecteur     
}
Exception in thread "main" java.lang.IllegalArgumentException: adding a window to a container
at java.awt.Container.checkNotAWindow(Unknown Source)
at java.awt.Container.addImpl(Unknown Source)
at java.awt.Container.add(Unknown Source)
at Interface.Interface.<init>(Interface.java:267)
at Interface.InterfaceMain.main(InterfaceMain.java:11)



merci d'avance