📄 testmedia.java
字号:
package testmedia;
import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.FileDialog;
import java.awt.Menu;
import java.awt.MenuBar;
import java.awt.MenuItem;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.media.ControllerEvent;
import javax.media.ControllerListener;
import javax.media.Manager;
import javax.media.MediaLocator;
import javax.media.Player;
import javax.media.RealizeCompleteEvent;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class TestMedia {
Player videoPlayer;
JFrame jf;
JPanel jp;
MenuBar mb;
Menu m;
MenuItem mi;
FileDialog fd;
String strURL;
Component comp1,comp2;
public TestMedia() {
jf = new JFrame("播放器测试");
jf.setSize(300, 300);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.setVisible(true);
jf.validate();
jp = new JPanel();
jp.setLayout(new BorderLayout());
mb = new MenuBar();
m = new Menu("File");
mi = new MenuItem("Open...");
mi.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (e.getActionCommand().equals("Open...")) {
try {
fd = new FileDialog(jf, "choose video file",
FileDialog.LOAD);
fd.setVisible(true);
strURL = fd.getDirectory() + fd.getFile();
System.out.println(strURL);
if(videoPlayer != null){
videoPlayer.close();
jp.remove(comp1);
jp.remove(comp2);
}
videoPlayer = Manager.createPlayer(new MediaLocator(
"file:/" + strURL));
videoPlayer.addControllerListener(new ControllerListener() {
public synchronized void controllerUpdate(
ControllerEvent event) {
if (event instanceof RealizeCompleteEvent) {
if ((comp1 = videoPlayer.getVisualComponent()) != null){
jp.add(comp1,BorderLayout.CENTER);
}
if ((comp2 = videoPlayer.getControlPanelComponent()) != null) {
jp.add(comp2,BorderLayout.SOUTH);
}
jp.validate();
}
}
});
videoPlayer.start();
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
});
m.add(mi);
mb.add(m);
jf.setMenuBar(mb);
jf.add(jp,BorderLayout.CENTER);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
TestMedia tm = new TestMedia();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -