📄 formmsgsend.java
字号:
/**
//文档生成日期:2005.11.3
//
//(1)概述:
//类名称:FormMsgSend
//类说明:
// 发送短信的Form界面
*
//所在子系统:MIMESMSnotifyPushRegistry
//
//系统总描述:
本工程发送一个MIME头的短信给目标手机。MIME头中指明了对方应该如何处理。
对方手机收到后,触发注册了PushRegistry的MIDlet应用,并解析短信,
按照指明的命令操作。
子系统描述:
发送一个MIME头的短信给目标手机.
//(2)历史记录:
//创建人: 郑昀(2005.11.3)
//联系我: Google Talk >> zhengyun@gmail.com
//Blogs: http://blog.csdn.net/zhengyun_ustc/以及http://www.cnblogs.com/zhengyun_ustc
//(3)版权声明:
//我这个版本的MIMESMSnotifyPushRegistry,
//j2me客户端代码仅仅允许您借鉴,但不得用于商业用途,除非得到郑昀本人的授权。本人保留所有权利。
////////////////////////////////////////////////////////////////////*/
package com.ultrapower.view;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.TextField;
import com.ultrapower.common.CommandResources;
import com.ultrapower.control.GUIController;
import com.ultrapower.model.NonInteractiveGaugeRunnable;
import com.ultrapower.model.ThreadSendMMS;
/**********************************************************
//FormMsgSend
//
//Class Description:
// 用于发送短信,提供了短信目的手机号码和文本内容编辑框。提供"发送"和“返回”按钮。
//
//Author:
//zhengyun@ultrapower 2005.11.3
//
**********************************************************/
public class FormMsgSend extends Form{
private GUIController controller;
private Command BACK_COMMAND;
private Command SEND_COMMAND;
private TextField mobileField;
private TextField msgField;
private ThreadSendMMS m_threadSend;
private NonInteractiveGaugeRunnable m_nonInteractive;
private int m_nAppendGaugeId = -1;
public FormMsgSend(String title, GUIController control){
super(title);
controller = control;
this.setCommandListener(new RssFeedAddListener());
BACK_COMMAND = new Command("返回",Command.BACK,1);
SEND_COMMAND = new Command("发送",Command.OK,2);
this.addCommand(BACK_COMMAND);
this.addCommand(SEND_COMMAND);
mobileField = new TextField("对方手机号码:","",35,TextField.DECIMAL);
msgField = new TextField("消息内容:",
"",
64,TextField.ANY);
this.append(mobileField);
this.append(msgField);
initSMSThread();
}
/*
* 初始化线程来准备发送短信
*/
public final void initSMSThread()
{
System.out.println("/** Enter initSMSThread!");
m_threadSend = new ThreadSendMMS(controller);
Thread thread;
(thread = new Thread(m_threadSend)).start();
setTitle(String.valueOf(CommandResources.getChars(
CommandResources.TXT_T_SEND_PROGRESS)));
}
/*
* 通知线程发送短信
*/
public final void startSend(String mobile, String text)
{
System.out.println("/** Enter startSend>>"
+ mobile + "+" + text);
startGauge();
m_threadSend.setDestMobileNumber(mobile);
m_threadSend.setMessageText(text);
m_threadSend.notifySend(true);
}
/*
* 发送短信成功了
*/
public final void succSend()
{
System.out.println("/** Enter succSend!");
setTitle(String.valueOf(CommandResources.getChars(
CommandResources.TXT_SENDSUCC_TITLE)));
}
/*
* 发送短信失败了
*/
public final void failSend()
{
System.out.println("/** Enter failSend!");
setTitle(String.valueOf(CommandResources.getChars(
CommandResources.TXT_SENDERROR_TITLE)));
}
public void clear(){
mobileField.setString("");
msgField.setString("");
}
public void startGauge()
{
m_nonInteractive = new NonInteractiveGaugeRunnable(
"发送中...", 10, 0);
new Thread(m_nonInteractive).start();
m_nAppendGaugeId = this.append(m_nonInteractive);
}
public void stopGauge()
{
m_nonInteractive.setDone();
if(m_nAppendGaugeId != -1)
this.delete(m_nAppendGaugeId);
}
/*
* 内部监听器,监听器监听所有Command事件,并把事件响应推出来让控制器处理
*/
private class RssFeedAddListener implements CommandListener{
public void commandAction(Command command, Displayable disp){
if(command == BACK_COMMAND){
controller.handleEvent(GUIController.EventID.EVENT_SENDSMS_BACK, null);
}
else if(command == SEND_COMMAND){
String mobile = mobileField.getString();
String msg = msgField.getString();
if((mobile == null || mobile.equals(""))
|| (msg == null || msg.equals(""))){
return;
}
Object[] args = {mobile, msg};
controller.handleEvent(GUIController.EventID.EVENT_SENDMMS, args);
}//end else
}
}//end inner class
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -