⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 formmsgsend.java

📁 J2ME开发的SMS发送短信的手机软件源码。
💻 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 + -