📄 media.java
字号:
package my;
import java.io.InputStream;
import javax.microedition.midlet.*;
import javax.microedition.media.*;
import javax.microedition.media.control.*;
import javax.microedition.lcdui.*;
public class Media extends MIDlet implements CommandListener, ItemStateListener
{
private Form f;
private Display display;
private Command command1,command2,command3;
private Gauge gauge; //音量控制
private VolumeControl vc; //音量控制
private Player p;
public Media()
{
// TODO Auto-generated constructor stub
f = new Form("音乐");
display = Display.getDisplay(this);
command1 = new Command("播放",Command.OK,1);
command2 = new Command("停止",Command.STOP,1);
command3 = new Command("重放",Command.ITEM ,3);
f.addCommand(command1);
f.addCommand(command2);
f.setCommandListener(this);
gauge = new Gauge("音量控制",true,10,5);
gauge.setLayout(Item.LAYOUT_CENTER);
f.append(gauge); //在f中添加gauge
f.setItemStateListener(this);
try
{
InputStream is = getClass().getResourceAsStream("/mymusic.midi"); //获得音频流
p = Manager.createPlayer(is,"audio/midi"); //创建Player对象
p.realize(); //准备
p.prefetch();
vc = (VolumeControl)p.getControl("VideoControl");
vc.setLevel(50);
p.setLoopCount(2); //循环播放
}catch(Exception e){}
}
public void commandAction(Command c, Displayable d)
{
if(c == command1)
{
f.removeCommand(command1);
f.addCommand(command3);
try
{
p.start();
}
catch(Exception e){};
}
if(c == command2)
{
if(p!=null)
{
try
{
p.stop();
}catch(Exception e){}
}
}
if(c == command3 )
{
f.removeCommand(command3);
f.addCommand(command1);
try
{
p.setMediaTime(-1);
p.start();
}catch(Exception e){}
}
}
public void itemStateChanged(Item item)
{
int volume = gauge.getValue()*10;
if(vc!=null)
{
vc.setLevel(volume);
}
}
protected void pauseApp(){
}
protected void destroyApp(boolean arg0)
{
if(p!=null)
{
p.close();
}
}
protected void startApp() {
display.setCurrent(f);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -