motorola手机中在主类中响应其它类中的按钮消息

来源:互联网 发布:公共大数据重点实验室 编辑:程序博客网 时间:2024/06/14 00:37

 

见程序 :

//文件名 LWTDemoMIDlet.java
import com.motorola.lwt.*;
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;

public class LWTDemoMIDlet extends MIDlet implements CommandListener
{
class ButtonScreen extends ComponentScreen {

public ButtonScreen() {

// Add a button to the screen
Button b1 = new Button("b");
///////////下面的代码是设定按钮高度
b1.setBottomEdge(Component.HEIGHT, 30);

///////////下面的代码是设定按钮宽度
b1.setRightEdge(Component.WIDTH,80);

///////////下面的代码是设定按钮y坐标,a相对屏幕最上

b1.setTopEdge(Component.SCREEN_TOP, 10);

///////////下面的代码是设定按钮x坐标相对前一个控件
b1.setLeftEdge(Component.PREVIOUS_COMPONENT_RIGHT, 30);


add(b1);


// Add another button to the screen
Button b2 = new Button("点我就行了"){
public void componentActuated() {
Show();
}
};
// Extend the right edge to the right edge of the screen
b2.setRightEdge(Component.WIDTH, 220);
b2.setBottomEdge(Component.HEIGHT, b2.getPreferredHeight() * 2);
add(b2);
Command next = new Command("Next", Command.OK, 1);
Command prev = new Command("Previous", Command.BACK, 1);

addCommand(next);
addCommand(prev);
}
};

ButtonScreen screens = new ButtonScreen();
public LWTDemoMIDlet() {
screens.setCommandListener(this);
}
protected void startApp()
throws MIDletStateChangeException {
Display.getDisplay(this).setCurrent(screens);
}
protected void pauseApp()
{
}
protected void destroyApp(boolean unconditional)
throws MIDletStateChangeException
{
}
public void Show()
{
System.out.println("Get it on main Class");


}
public void commandAction (Command c, Displayable d)
{

if (screens == d) {
// Found it, check which command was triggered
if (c.getCommandType() == Command.BACK) {
System.out.println("back");
}
else if (c.getCommandType() == Command.OK) {
System.out.println("ok");
}
return;
}

}

}

以上程序用jcreater pro

motoSDK 编译

原创粉丝点击