playmusicdemo.java

来自「Java ME手机应用开发大全一书的配套光盘上的源码」· Java 代码 · 共 85 行

JAVA
85
字号
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.media.*;
public class PlayMusicDemo extends MIDlet implements CommandListener{
    private Display display;
    private Command cmdExit = new Command("退出", Command.STOP, 1);
    
    private List list;
    //list列表的内容
    private static final String[] items = {"播放MIDI音乐","播放Wave音乐"};
    
    public PlayMusicDemo() {
        list = new List("播放不同格式声音演示", List.IMPLICIT, items, null);
        list.addCommand(cmdExit);
        list.setCommandListener(this);
    }
    
    public void startApp() {
        display = Display.getDisplay(this);
        display.setCurrent(list);
    }
    
    public void pauseApp() {
    }
    
    public void destroyApp(boolean unconditional) {
    }
    
    /**
     * 命令按钮事件
     */
    public void commandAction(Command c, Displayable d) {
        String label = c.getLabel();
        if (label.equals("退出")) {
            this.notifyDestroyed();
        }
        
        if (c == list.SELECT_COMMAND) {
            switch (list.getSelectedIndex()) {
                case 0:
                    playMIDI();
                    break;
                case 1:
                    playWave();
                    break;
            }
        }
    }
    
    //用于播放MIDI文件
    private void playMIDI() {
        try {
			//获取Jar包中的MIDI文件
            java.io.InputStream is = getClass().getResourceAsStream("/1.mid");
			//创建Player实例
            Player player = Manager.createPlayer(is, "audio/midi");
			//使Player处于REALIZED状态
            player.realize();
			//使Player处于PREFETCHED状态
            player.prefetch();
			//播放音频
            player.start();
        } catch(Exception e) {
            System.out.println("g播放MIDI音乐发生异常:" + e.toString());
        }
    }
    //用于播放Wave文件
    private void playWave() {
        try {
			//获取Jar包中的WAV文件
            java.io.InputStream is = getClass().getResourceAsStream("/1.wav");
			//创建Player实例
            Player player = Manager.createPlayer(is, "audio/x-wav");
			//使Player处于REALIZED状态
            player.realize();
            //使Player处于PREFETCHED状态
            player.prefetch();
            //播放音频
            player.start();
        } catch(Exception e) {
            System.out.println("播放Wave音乐发生异常:" + e.toString());
        }
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?