java 音乐播放问题
rt:Javaapilication中播放音乐。。点击play可以播放,点击stop可以停止,但是不能打开文件选择音乐播放。。。求高手解决下!!!该代码,说原因!!谢谢问...
rt:
Java apilication中播放音乐。。
点击play可以播放,点击stop可以停止,但是不能打开文件选择音乐播放。。。 求高手解决下!!!
该代码,说原因!!
谢谢
问题代码如下:
import java.awt.*;
import javax.swing.*;
import sun.audio.*;
import java.io.*;
import java.awt.event.*;
class window extends JFrame implements ActionListener
{
JButton play,stop,open;
InputStream in;
AudioStream as;
JTextField text;
JFileChooser fileChooser;
window()
{
setLayout(new FlowLayout());
play=new JButton("play");
stop=new JButton("stop");
open=new JButton("open");
add(play);
add(stop);
add(open);
play.addActionListener(this);
stop.addActionListener(this);
open.addActionListener(this);
text=new JTextField(10);
add(text);
try
{
in=new FileInputStream("123.wav");
as =new AudioStream(in);
}
catch(Exception e)
{
e.printStackTrace();
}
setVisible(true);
setBounds(100,100,400,400);
validate();
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==play)
{
AudioPlayer.player.start(as);
text.setText("play");
}
if(e.getSource()==stop)
{
AudioPlayer.player.stop(as);
text.setText("stop");
}
if(e.getSource()==open)
{
int i=fileChooser.showOpenDialog(this);
try
{
File music_file=new File(fileChooser.getCurrentDirectory(),fileChooser.getSelectedFile().getName());
if(i==JFileChooser.APPROVE_OPTION)
{
text.setText(null);
in=new FileInputStream(music_file.getName());
as=new AudioStream(in);
AudioPlayer.player.start(as);
}
}
catch(IOException exp)
{
text.setText("打开失败!");
}
}
}
}
class main
{
public static void main(String [] args)
{
window win=new window();
}
} 展开
Java apilication中播放音乐。。
点击play可以播放,点击stop可以停止,但是不能打开文件选择音乐播放。。。 求高手解决下!!!
该代码,说原因!!
谢谢
问题代码如下:
import java.awt.*;
import javax.swing.*;
import sun.audio.*;
import java.io.*;
import java.awt.event.*;
class window extends JFrame implements ActionListener
{
JButton play,stop,open;
InputStream in;
AudioStream as;
JTextField text;
JFileChooser fileChooser;
window()
{
setLayout(new FlowLayout());
play=new JButton("play");
stop=new JButton("stop");
open=new JButton("open");
add(play);
add(stop);
add(open);
play.addActionListener(this);
stop.addActionListener(this);
open.addActionListener(this);
text=new JTextField(10);
add(text);
try
{
in=new FileInputStream("123.wav");
as =new AudioStream(in);
}
catch(Exception e)
{
e.printStackTrace();
}
setVisible(true);
setBounds(100,100,400,400);
validate();
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==play)
{
AudioPlayer.player.start(as);
text.setText("play");
}
if(e.getSource()==stop)
{
AudioPlayer.player.stop(as);
text.setText("stop");
}
if(e.getSource()==open)
{
int i=fileChooser.showOpenDialog(this);
try
{
File music_file=new File(fileChooser.getCurrentDirectory(),fileChooser.getSelectedFile().getName());
if(i==JFileChooser.APPROVE_OPTION)
{
text.setText(null);
in=new FileInputStream(music_file.getName());
as=new AudioStream(in);
AudioPlayer.player.start(as);
}
}
catch(IOException exp)
{
text.setText("打开失败!");
}
}
}
}
class main
{
public static void main(String [] args)
{
window win=new window();
}
} 展开
1个回答
展开全部
你虽然声明了JFileChooser 的一个变量 fileChooser 但是却没有实例化它
就直接调用了 showOpenDialog(this) 这个方法 如下
“JFileChooser fileChooser;”
“int i=fileChooser.showOpenDialog(this);”——这是你代码原文
你试下把你的源代码“JFileChooser fileChooser;” 改成“JFileChooser fileChooser=new JFileChooser(new File("."));”(注:这样改是把你所写的window类的目录做为当前目录)
就直接调用了 showOpenDialog(this) 这个方法 如下
“JFileChooser fileChooser;”
“int i=fileChooser.showOpenDialog(this);”——这是你代码原文
你试下把你的源代码“JFileChooser fileChooser;” 改成“JFileChooser fileChooser=new JFileChooser(new File("."));”(注:这样改是把你所写的window类的目录做为当前目录)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询