import java.applet.Applet;
import java.applet.AudioClip;
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;import javax.swing.JButton;
import javax.swing.JPanel;
public class Audio extends Applet {
private JPanel panel;
private JButton button;
private AudioClip sound;
private boolean play = true;
public void init() {
panel = new JPanel();
button = new JButton("Play");
sound = getAudioClip(getDocumentBase(),"DragonMusic/BG_000.mid");
panel.setLayout(new BorderLayout());
panel.add(button, BorderLayout.CENTER);
button.addActionListener(new JButtonListener());
add(panel);
sound.loop();
}
public class JButtonListener implements ActionListener{
public void actionPerformed(ActionEvent event){
if(event.getSource()==button){
System.out.println(play);
if(play) {
sound.stop();
play = false;
} else {
sound.stop();
sound.loop();
play = true;
}
}
}
}
}
// <applet code=Audio width=100 height=200></applet>
这个只是单个音乐 ,play键一按就停 再按就 重放 ,已测试可以实现,下面我想多个音乐按上下或左右键切换, play键 同样有暂停 播放功能
可是按上两次后 再按就再也不会出声了 ,
请高手指教
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
import javax.swing.*;
public class Study extends Applet{
private static int i=0;
private JPanel panel;
private JButton button;
private JButton buttonUp;
private JButton buttonDown;
private JButton buttonLeft;
private JButton buttonRight;
private AudioClip backSound[];
private AudioClip sound;
public void init(){
panel=new JPanel();
button=new JButton("Play");
buttonUp=new JButton("↑");
buttonDown=new JButton("↓");
buttonLeft=new JButton("←");
buttonRight=new JButton("→");
button.addActionListener(new JButtonListener());
buttonUp.addActionListener(new JButtonListener());
buttonDown.addActionListener(new JButtonListener());
buttonLeft.addActionListener(new JButtonListener());
buttonRight.addActionListener(new JButtonListener());
backSound=new AudioClip[67];
for(int n=0;n<67;n++){
if(n/10==0){
backSound[n]=getAudioClip(getDocumentBase(),"DragonMusic\\BG_00"+n+".mid");
}
else{
backSound[n]=getAudioClip(getDocumentBase(),"DragonMusic\\BG_0"+n+".mid");
}
}
sound=backSound[0];
sound.loop();
setSize(400,300);
panel.setLayout(new BorderLayout());
panel.add(button,BorderLayout.CENTER);
panel.add(buttonLeft,BorderLayout.WEST);
panel.add(buttonRight,BorderLayout.EAST);
panel.add(buttonUp,BorderLayout.NORTH);
panel.add(buttonDown,BorderLayout.SOUTH);
add(panel);
}
private class JButtonListener implements ActionListener{
public void actionPerformed(ActionEvent event){
if(event.getSource()==button){
sound.stop();
sound=backSound[i];
sound.loop();
}
else if(event.getSource()==buttonLeft||event.getSource()==buttonUp){
sound.stop();
if(i>0){
i--;
sound=backSound[i];
sound.loop();
}
else{
i=backSound.length-1;
sound=backSound[i];
sound.loop();
}
}
else if(event.getSource()==buttonRight||event.getSource()==buttonDown){
sound.stop();
if(i==backSound.length-1){
i=0;
sound=backSound[i];
sound.loop();
}
else{
i++;
sound=backSound[i];
sound.loop();
}
}
}
}
}
import java.applet.AudioClip;
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;import javax.swing.JButton;
import javax.swing.JPanel;
public class Audio extends Applet {
private JPanel panel;
private JButton button;
private AudioClip sound;
private boolean play = true;
public void init() {
panel = new JPanel();
button = new JButton("Play");
sound = getAudioClip(getDocumentBase(),"DragonMusic/BG_000.mid");
panel.setLayout(new BorderLayout());
panel.add(button, BorderLayout.CENTER);
button.addActionListener(new JButtonListener());
add(panel);
sound.loop();
}
public class JButtonListener implements ActionListener{
public void actionPerformed(ActionEvent event){
if(event.getSource()==button){
System.out.println(play);
if(play) {
sound.stop();
play = false;
} else {
sound.stop();
sound.loop();
play = true;
}
}
}
}
}
// <applet code=Audio width=100 height=200></applet>
这个只是单个音乐 ,play键一按就停 再按就 重放 ,已测试可以实现,下面我想多个音乐按上下或左右键切换, play键 同样有暂停 播放功能
可是按上两次后 再按就再也不会出声了 ,
请高手指教
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
import javax.swing.*;
public class Study extends Applet{
private static int i=0;
private JPanel panel;
private JButton button;
private JButton buttonUp;
private JButton buttonDown;
private JButton buttonLeft;
private JButton buttonRight;
private AudioClip backSound[];
private AudioClip sound;
public void init(){
panel=new JPanel();
button=new JButton("Play");
buttonUp=new JButton("↑");
buttonDown=new JButton("↓");
buttonLeft=new JButton("←");
buttonRight=new JButton("→");
button.addActionListener(new JButtonListener());
buttonUp.addActionListener(new JButtonListener());
buttonDown.addActionListener(new JButtonListener());
buttonLeft.addActionListener(new JButtonListener());
buttonRight.addActionListener(new JButtonListener());
backSound=new AudioClip[67];
for(int n=0;n<67;n++){
if(n/10==0){
backSound[n]=getAudioClip(getDocumentBase(),"DragonMusic\\BG_00"+n+".mid");
}
else{
backSound[n]=getAudioClip(getDocumentBase(),"DragonMusic\\BG_0"+n+".mid");
}
}
sound=backSound[0];
sound.loop();
setSize(400,300);
panel.setLayout(new BorderLayout());
panel.add(button,BorderLayout.CENTER);
panel.add(buttonLeft,BorderLayout.WEST);
panel.add(buttonRight,BorderLayout.EAST);
panel.add(buttonUp,BorderLayout.NORTH);
panel.add(buttonDown,BorderLayout.SOUTH);
add(panel);
}
private class JButtonListener implements ActionListener{
public void actionPerformed(ActionEvent event){
if(event.getSource()==button){
sound.stop();
sound=backSound[i];
sound.loop();
}
else if(event.getSource()==buttonLeft||event.getSource()==buttonUp){
sound.stop();
if(i>0){
i--;
sound=backSound[i];
sound.loop();
}
else{
i=backSound.length-1;
sound=backSound[i];
sound.loop();
}
}
else if(event.getSource()==buttonRight||event.getSource()==buttonDown){
sound.stop();
if(i==backSound.length-1){
i=0;
sound=backSound[i];
sound.loop();
}
else{
i++;
sound=backSound[i];
sound.loop();
}
}
}
}
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货