请高手帮忙,java小程序调试~~~~~~~~~`
有一个媒体播放器的小程序有错,但是找不到!那位高手帮忙解决以下!!!!!
我的程序是:
import java.media.*;
import java.awt.*;
import java.awt.event.*;
class MediaPlayer extends Frame implements ActionListener,
ControllerListener,ItemListener
{
Player player;
Component vc,cc;
boolean first=true,loop=false;
String currentDirectory;
MediaPlayer(String title)
{
super(title);
addWindowListener(new WindowAdapter());
{
public void windowClosing(WindowEvent e)
{
dispose();
}
public void windowClosing(WindowEvent e)
{
if(player!=null) player.close();
System.exit(0);
}
}
Menu m=new Menu("文件");
MenuItem mi=new MenuItem("打开");
mi.addActionListener(this);
m.add(mi);
setMenuBar(mb);
SetSize(200,200);
SetVisible(true);
}
public void actionPerformed(ActionEvent e)
{
if(e.getActionCommand().eqnals("退出"))
{
dispose();
return;
}
FilledDialog fd=new FileDialog(this,"打开媒体文件",FileDialog.LOAD);
fd.setDirectory(currentDirectory);
fd.show();
if(fd.getFile()==null) return;
currentDirectory=fd.getDirectory();
if(player!=null)
player.close();
try
{
player=Manager.createPlayer(new MediaLocator
("file:"+fd.getDirectory()+fd.getFile()));
}
catch(java.io.IOException e2)
{
System.out.println(e2);
return;
}
catch(NoplayerException e2)
{
System.out.println("不能找到播放器。");
return;
}
if(player==null)
{
System.out.println("无法创建播放器。");
return;
}
first=false;
setTitle(fd.getFile());
player.addControllerListener(this);
player.prefetch();
}
public void controllerUpdate(ControllerEvent e)
{
if(e instanceof ControllerClosedEvent)
{
if(vc!=null)
{
remove(vc);
vc=null;
}
if(cc!=null)
{
remove(cc);
cc=null;
}
return;
}
if(e instanceof EndOfMediaEvent)
{
if(loop)
{
player.steMediaTime(new Time(0));
player.start();
}
return;
}
if(e instanceof PrefetchCompleteEvent)
{
player.start();
return;
}
if(e instanceof RealizeCompleteEvent)
{
vc=player.getVisualComponent();
if(vc!=null)
add(vc);
cc=player.getControlPanelComponent();
if(cc!=null)
add(cc,BorderLayout.SOUTH);
pack();
}
}
public void itemStaeChanged(ItemEvent e)
{
if(first)
{
int w=getSize().width;
int h=getSize().height;
g.setColor(Color.blue);
g.fillRect(0,0,w,h);
Font f=new Font("DialogInput",Font.BOLD,16);
g.setFont(f);
FontMetrics fm=g.getFontMetrice();
int swidth=fm.stringWidth("***欢迎***");
g.setColor(Color.white);
g.drawString("***欢迎***",
(w-swidth)/2,
(h+getInsets().top)/2);
} super.paint(g);
}
public viod update(Graphic g)
{
paint(g);
}
public static void mian(String args[])
{
new MediaPlayer("媒体播放器1.0");
}
}
谢谢了~~~~~~~~~~~~~~~~``