下载的程序运行不成功,谁给提点修改意见?谢谢/**
   处理点击按钮事件
*/import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.applet.*;
import java.io.File;public class SimpleButtonTest
{
   public static void main(String[] args)
   {
      ButtonFrame frame = new ButtonFrame();
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      frame.setVisible(true);
   }
}//   包含一个按钮的自定义框架类
class ButtonFrame extends JFrame
{
   public ButtonFrame()
   {
      setTitle("SimpleButtonTest");
      setSize(300,200);      JButton button=new JButton("play");//事件源
      PlayListener listener=new PlayListener();//事件监听器
      button.addActionListener(listener);//注册
      //button.addActionListener(new PlayListener());//简写      setLayout(new FlowLayout());
      add(button);
   }
}
//处理按钮的点击的事件监听器类
class PlayListener implements ActionListener
{
    public void actionPerformed(ActionEvent event)
    {
   ClassLoader classLoader=this.getClass().getClassLoader();
   AudioClip audio=JApplet.newAudioClip(classLoader.getResource("F:/love.mid"));
       audio.play();
    }
 }

解决方案 »

  1.   


     audio.play()换成javax.sound()?没有这个方法吧?
      

  2.   


     audio.play()换成javax.sound()?没有这个方法吧?
    javax.sound是Java音频开发方面的扩展包
      

  3.   

    应该使用javax.sound 播放 
      

  4.   

    F:/love.mid要放在当前工作目录。直接改为“love.mid”应该可以。
      

  5.   


    请问如何添加javax.sound到源代码里啊?我还是不明白,请指教
      

  6.   


    你指讲音乐love.mid放在MyEclipse安装目录里吗?不行哦
      

  7.   

    import java.io.*;
    import javax.sound.midi.*;
       
    public class MidiSoundTest {
       private static Sequencer midiPlayer;
       
       // testing main method
       public static void main(String[] args) {
          startMidi("song1.mid");     // start the midi player
          try {
             Thread.sleep(10000);   // delay
          } catch (InterruptedException e) { }
          System.out.println("faster");
          midiPlayer.setTempoFactor(2.0F);   // >1 to speed up the tempo
          try {
             Thread.sleep(10000);   // delay
          } catch (InterruptedException e) { }
       
          // Do this on every move step, you could change to another song
          if (!midiPlayer.isRunning()) {  // previous song finished
             // reset midi player and start a new song
             midiPlayer.stop();
             midiPlayer.close();
             startMidi("song2.mid");
          }
       }
       
       public static void startMidi(String midFilename) {
          try {
             File midiFile = new File(midFilename);
             Sequence song = MidiSystem.getSequence(midiFile);
             midiPlayer = MidiSystem.getSequencer();
             midiPlayer.open();
             midiPlayer.setSequence(song);
             midiPlayer.setLoopCount(0); // repeat 0 times (play once)
             midiPlayer.start();
          } catch (MidiUnavailableException e) {
             e.printStackTrace();
          } catch (InvalidMidiDataException e) {
             e.printStackTrace();
          } catch (IOException e) {
             e.printStackTrace();
          }
       }
    }
      

  8.   


    你指讲音乐love.mid放在MyEclipse安装目录里吗?不行哦是资源文件夹下。