Command và CommandListener
Command: là lệnh để người dùng đưa vào những hành
động tiếp sau đó theo mục đích của mình
- command cũng là một item trên form và được tạo như sau:
- command cũng là một item trên form và được tạo như sau:
Command cm=new Command("tên lệnh","loại lệnh","vị trí");
Trong đó: loại lệnh có thể là:
Command.SCREEN
Command.BACK
Command.CANCEL
Command.OK
Command.HELP
Command.STOP
Command.EXIT
Command.ITEM
...
còn vị trí tức là nếu củng một loại thì chúng sẽ được gom lại trong một menu, và vị trí chính là vị trí của lệnh trong menu
đó. Dù là một item như đó là một item đặc biệt vì vậy để thêm Command vào Form ta không dùng append mà dùng addCommand
Command.BACK
Command.CANCEL
Command.OK
Command.HELP
Command.STOP
Command.EXIT
Command.ITEM
...
f.addCommand(cm);
và khi sử dụng Command ta phải cho class thực thi kiểu
CommandListener đồng thời cho thực thi trên đối tượng có
command, cũng phải thêm vào một function mặc định để
phân tích và thực thi lệnh mỗi khi Command được sử dụng, class của ta có dạng như sau:
public class vd entends MIDlet implements CommandListener{
public vd(){}
public void startApp(){}
public void pauseApp(){}
public void destroyApp (boolean unconditional){}
public void commandAction (Command c,Displayable d){} }
* một số thao tác trên
command:public vd(){}
public void startApp(){}
public void pauseApp(){}
public void destroyApp (boolean unconditional){}
public void commandAction (Command c,Displayable d){} }
addCommad(cm); //thêm command vào một đối tượng nào đó
cm.setLabel("tên mới"); //thay đổi tên cho Command
cm.getLabel(); //lấy tên của Command
cm.getCommandType(); //trả về kiểu lệnh
còn sau đây là một ví dụ:
cm.setLabel("tên mới"); //thay đổi tên cho Command
cm.getLabel(); //lấy tên của Command
cm.getCommandType(); //trả về kiểu lệnh
public class vd entends MIDlet
implements
CommandListener{
Form f=new Form("command");
Command cm1=new Command("exit",Command.EXIT,2);
Command cm2=new Command("hien",Command.OK,2);
TextField tf=new TextField("my name","",16,TextField.ANY);
public vd(){
f.addCommand(cm1);
f.addCommand(cm2);
f.append(tf);
f.setCommandListener(this);
Display.getDisplay(this).setCurrent(f);}
public void startApp(){}
public void pauseApp(){}
public void destroyApp(boolean unconditional) {notifyDestroyed();}
public void commandAction(Command c,Displayable d){
if(c==cm1){destroyApp(true);}
if(c.getLabel().equals("hien")){tf.setString("Opakul");}} }
Form f=new Form("command");
Command cm1=new Command("exit",Command.EXIT,2);
Command cm2=new Command("hien",Command.OK,2);
TextField tf=new TextField("my name","",16,TextField.ANY);
public vd(){
f.addCommand(cm1);
f.addCommand(cm2);
f.append(tf);
f.setCommandListener(this);
Display.getDisplay(this).setCurrent(f);}
public void startApp(){}
public void pauseApp(){}
public void destroyApp(boolean unconditional) {notifyDestroyed();}
public void commandAction(Command c,Displayable d){
if(c==cm1){destroyApp(true);}
if(c.getLabel().equals("hien")){tf.setString("Opakul");}} }
0 nhận xét:
Đăng nhận xét