è passato un pò di tempo ma il problema è rimasto.. ci sono tornato ora a rifletterci.. vi posto l'ultimo spezzone di codice che ho scritto:
codice:
import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.Image;
import java.awt.Point;
import java.awt.Toolkit;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.io.File;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import javax.media.CannotRealizeException;
import javax.media.Manager;
import javax.media.NoPlayerException;
import javax.media.Player;
import javax.swing.JFrame;
/**
*
* @author Nicholas
*/
public class EasyVideo{
File video;
String percorsoVideo="";
URL mediaV;
MouseListener ml=new MouseAdapter(){
@Override
public void mousePressed(MouseEvent evt){
System.exit(0);
}
};
//apro connessione
public URL apriConnessione(){
URL videoURL=null;
URLConnection connessione = null;
try {
videoURL = new URL(caricaVideoHttp());
} catch (MalformedURLException ex) {
System.out.println("MalformedURLException: "+ex.getMessage());
}
try {
connessione = videoURL.openConnection();
} catch (IOException ex) {
System.out.println("IOException: "+ex.getMessage());
}
connessione.setDoOutput(true);
return videoURL;
}
//carico il video
public String caricaVideoHttp(){
//"http://it.clip-1.filmtrailer.com/2845_6596_a_5.wmv",
percorsoVideo="http://it.clip-1.filmtrailer.com/2845_6596_a_5.wmv" ;
return percorsoVideo;
}
//creo il pannello
public void creaPannello(JFrame frameP,URL mediaFile){
frameP.setLayout( new BorderLayout() ); // crea BorderLayout
// usa un componente leggero per Swing
Manager.setHint( Manager.LIGHTWEIGHT_RENDERER, true );
try{
//crea un player per riprodurre il file specificato
Player mediaPlayer = Manager.createRealizedPlayer( mediaFile );
//prende i componenti del video
Component videoC = mediaPlayer.getVisualComponent();
//Component controls = mediaPlayer.getControlPanelComponent();
if ( videoC != null ){
frameP.add( videoC, BorderLayout.CENTER ); // add video component
}
videoC.enableInputMethods(true);
videoC.addMouseListener(ml);
//faccio partire il video
mediaPlayer.start();
} // fine try
catch ( NoPlayerException ex ){
System.err.println( "Nessun Player trovato: "+ex.getMessage() );
}
catch ( CannotRealizeException ex ){
System.err.println( "Impossibile realizzare il player: "+ex.getMessage() );
}
catch ( IOException ex ){
System.err.println( "Errore di input/output: "+ex.getMessage() );
}
}
//creo la finestra
public void creaFinestra(int posX,int posY,int larghezza,int altezza){
URL mediaURL=apriConnessione();
JFrame frameVideo = new JFrame();
frameVideo.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
//creo pannello
creaPannello(frameVideo, mediaURL);
//faccio diventare invisibile il cursore
Image i = Toolkit.getDefaultToolkit().getImage("./vuoto.gif");//.createImage(getClass().getResource("./vuoto.gif"));
frameVideo.setCursor(Toolkit.getDefaultToolkit().createCustomCursor(i, new Point(0,0), "ciao"));
//rendo il tutto chiudibile con un click
frameVideo.enableInputMethods(true);
frameVideo.addMouseListener(ml);
//tolgo i bordi
frameVideo.setUndecorated(true);
//setto la posizione
frameVideo.setLocation(posX, posY);
//setto la dimensione
frameVideo.setSize( larghezza, altezza );
//rendo visibile
frameVideo.setVisible( true );
}
public static void main(String[]args){
EasyVideo ev=new EasyVideo();
ev.creaFinestra(0,0,1024,768);
}
}
ma se lo mando in esecuzione con il file evidenziato mi genera il seguente errore: