Nokia系列手机上的一个手电筒程序(附源代码)
作者:陈跃峰
出自:http://blog.csdn.net/mailbomb
在晚上的楼梯上,没有灯时,很多人需要用手机来照明,所以就有了这个简单的手电筒程序。程序利用的是Nokia UI API中提供的功能实现,程序在Nokia 6020上测试通过。具体的源代码如下:
//文件名:LightMIDlet.java
package light;
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class LightMIDlet extends MIDlet {
static LightMIDlet instance;
LightForm displayable = new LightForm();
public LightMIDlet() {
instance = this;
}
public void startApp() {
Display.getDisplay(this).setCurrent(displayable);
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
public static void quitApp() {
instance.destroyApp(true);
instance.notifyDestroyed();
instance = null;
}
}
//文件名:LightForm.java
package light;
import javax.microedition.lcdui.*;
import com.nokia.mid.ui.DeviceControl;
public class LightForm extends Form implements CommandListener {
StringItem si;
Command cmdOpen;
Command cmdClose;
Command cmdExit;
public LightForm() {
super("手电筒");
si = new StringItem("手电筒状态:","打开");
this.append(si);
cmdOpen = new Command("打开",Command.OK,1);
this.addCommand(cmdOpen);
cmdClose = new Command("关闭",Command.CANCEL,1);
this.addCommand(cmdClose);
cmdExit = new Command("退出",Command.EXIT,1);
this.addCommand(cmdExit);
setCommandListener(this);
DeviceControl.setLights(0,100);
}
public void commandAction(Command c, Displayable d) {
//关闭
if (c == cmdExit) {
// stop the MIDlet
LightMIDlet.quitApp();
}
//打开
if(c == cmdOpen){
DeviceControl.setLights(0,100);
si.setText("打开");
}
if(c == cmdClose){
DeviceControl.setLights(0,0);
si.setText("关闭");
}
}
}
未经允许,严禁转载!