📄 sendmessageui.java
字号:
package com.j2medev.ch6.wma;
import java.io.*;
import javax.microedition.io.Connector;
import javax.microedition.lcdui.*;
import javax.wireless.messaging.*;
public class SendMessageUI extends Form implements CommandListener,Runnable {
private SMSMIDlet midlet = null;
private TextField address = null;
private TextField message = null;
private String number = "";//收信人号码
private String content = "";//短信内容
public static final Command sendCommand = new Command("发送",Command.OK,1);
public static final Command backCommand = new Command("返回",Command.BACK,2);
public SendMessageUI(SMSMIDlet midlet) {
super("发送短信");
this.midlet = midlet;
address = new TextField("收信人", "", 20, TextField.PHONENUMBER);
message = new TextField("短信内容", "", 140, TextField.ANY);
this.append(address);
this.append(message);
this.addCommand(sendCommand);
this.addCommand(backCommand);
this.setCommandListener(this);
}
public void clean(){
//清除收信人和短信内容文本框的内容
address.setString("");
message.setString("");
}
public void commandAction(Command cmd,Displayable displayable){
if(cmd == backCommand){
midlet.backToMain();
}else if(cmd == sendCommand){
//启动发送短消息的线程
number = address.getString();
content = message.getString();
new Thread(this).start();
}
}
public void run(){
String address = "sms://"+number+":"+midlet.getAppProperty("port");
MessageConnection mconn = null;
try{
//建立客户端模式的MessageConnection,读者应该在这里添加一个等待界面
mconn = (MessageConnection)Connector.open(address);
TextMessage tm = (TextMessage)mconn.newMessage(MessageConnection.TEXT_MESSAGE);
//设置消息地址和文本数据
tm.setAddress(address);
tm.setPayloadText(content);
//发送消息
mconn.send(tm);
mconn.close();
midlet.backToMain();
}catch(Exception ex){
ex.printStackTrace();
midlet.displayError(ex.toString(), this);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -