下边的代码描述了如何在J2ME应用里控制移动设备的音量,VolumeControl类可以用来控制播放器Player类的音量

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.lcdui.Ticker;
import javax.microedition.media.*;

public class VolumeControlDemo extends MIDlet implements CommandListener {
   
    private Display display;
    private Command exit,incr,decr;
    Form frm;
   
    VolumeControl vc;
    int vol;
    Player player;
   
    public VolumeControlDemo() {
        display = Display.getDisplay(this);
       
    }
   
    public void startApp() {
       
        frm=new Form("VolumeControlDemo  Demo");
       
        exit= new Command("Exit",Command.EXIT,1);
        decr= new Command("Decrease",Command.EXIT,1);
        incr= new Command("Increase",Command.EXIT,1);
        frm.addCommand(exit);
        frm.addCommand(decr);
        frm.addCommand(incr);
       
        frm.setCommandListener(this);
       
       
        display.setCurrent(frm);
       
        try {
           
            // 创建播放器Player对象
            player = Manager.createPlayer("/demo.wav");
           
            // 设置循环计数器
            player.setLoopCount(-1);
           
            // 播放
            player.start();
            Control cs[];
           
            // 获得播放器的所有控制对象
            cs = player.getControls();
           
            for (int i = 0; i < cs.length; i++) {
                if (cs[i] instanceof VolumeControl)
                    // 获得音量控制类实例
                    vc=(VolumeControl)cs[i];
            }
           
        } catch (Exception e) {}
       
    }
   
    public void pauseApp() {
       
    }
   
    public void destroyApp(boolean un) {
       
    }
   
    public void commandAction(Command cmd,Displayable d) {
        try {
            if(decr) {
                if(vol>0) vol--;
                vc.setLevel(vol);
            } else if() {
                if(vol<99) vol--;
                vc.setLevel(vol);
            }
           
            frm.appent("vol="+vc.getLevel());
        }catch(Exception e){}
       
    }

 


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/the3gwireless/archive/2006/04/24/675072.aspx

posted on 2009-08-05 21:00  x1Ao  阅读(241)  评论(0编辑  收藏  举报