📄 mainframe.java
字号:
package gprs;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.LinkedList;
////////////////////////////////
////导入comm...jsmsengine包
import javax.comm.*;
import org.jsmsengine.*;
////////////////////////////////
/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2005</p>
* <p>Company: </p>
* @author not attributable
* @version 1.0
*/
public class MainFrame extends JFrame {
///////////////////////////////////
// Create jSMSEngine service.
CService srv = new CService("com3", 9600);
int status;
///////////////////////////////////
JPanel contentPane;
JButton jButton1 = new JButton();
JScrollPane jScrollPane1 = new JScrollPane();
JTextArea jTextArea1 = new JTextArea();
JButton jButton2 = new JButton();
JButton jButton3 = new JButton();
JScrollPane jScrollPane2 = new JScrollPane();
JTextArea jTextArea2 = new JTextArea();
JScrollPane jScrollPane3 = new JScrollPane();
JTextArea jTextArea3 = new JTextArea();
JButton jButton4 = new JButton();
JTextField jTextField1 = new JTextField();
JLabel jLabel1 = new JLabel();
JButton jButton5 = new JButton();
JButton jButton6 = new JButton();
JScrollPane jScrollPane4 = new JScrollPane();
JTextArea jTextArea4 = new JTextArea();
//Construct the frame
public MainFrame() {
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
try {
jbInit();
}catch (Exception e) {
e.printStackTrace();
}
}
//Component initialization
private void jbInit() throws Exception {
contentPane = (JPanel)this.getContentPane();
jButton1.setBounds(new Rectangle(9, 9, 102, 27));
jButton1.setFont(new java.awt.Font("Dialog", 0, 16));
jButton1.setToolTipText("");
jButton1.setText("连接...");
jButton1.addActionListener(new MainFrame_jButton1_actionAdapter(this));
contentPane.setLayout(null);
this.setSize(new Dimension(604, 497));
this.setTitle("Frame Title");
jScrollPane1.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
jScrollPane1.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
jScrollPane1.setBounds(new Rectangle(119, 9, 472, 125));
jTextArea1.setText("");
jButton2.setBounds(new Rectangle(9, 135, 102, 27));
jButton2.setFont(new java.awt.Font("Dialog", 0, 16));
jButton2.setText("发送");
jButton2.addActionListener(new MainFrame_jButton2_actionAdapter(this));
jButton3.setBounds(new Rectangle(9, 343, 102, 27));
jButton3.setFont(new java.awt.Font("Dialog", 0, 16));
jButton3.setText("接收");
jButton3.addActionListener(new MainFrame_jButton3_actionAdapter(this));
jScrollPane2.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
jScrollPane2.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
jScrollPane2.setBounds(new Rectangle(119, 174, 473, 75));
jTextArea2.setText("");
jScrollPane3.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
jScrollPane3.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
jScrollPane3.setBounds(new Rectangle(120, 345, 472, 147));
jTextArea3.setText("");
jButton4.setBounds(new Rectangle(9, 49, 102, 27));
jButton4.setFont(new java.awt.Font("Dialog", 0, 16));
jButton4.setText("断开连接");
jButton4.addActionListener(new MainFrame_jButton4_actionAdapter(this));
jTextField1.setFont(new java.awt.Font("Dialog", 0, 16));
jTextField1.setText("");
jTextField1.setBounds(new Rectangle(203, 140, 171, 22));
jLabel1.setFont(new java.awt.Font("Dialog", 0, 16));
jLabel1.setText("手机号码:");
jLabel1.setBounds(new Rectangle(119, 140, 81, 22));
jButton5.setBounds(new Rectangle(9, 92, 102, 27));
jButton5.setFont(new java.awt.Font("Dialog", 0, 16));
jButton5.setText("退出系统");
jButton5.addActionListener(new MainFrame_jButton5_actionAdapter(this));
jButton6.setBounds(new Rectangle(9, 258, 102, 27));
jButton6.setFont(new java.awt.Font("Dialog", 0, 16));
jButton6.setText("已发短信");
jButton6.addActionListener(new MainFrame_jButton6_actionAdapter(this));
jScrollPane4.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
jScrollPane4.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
jScrollPane4.setBounds(new Rectangle(120, 256, 473, 75));
jTextArea4.setText("");
contentPane.add(jScrollPane1, null);
contentPane.add(jButton1, null);
contentPane.add(jButton4, null);
contentPane.add(jTextField1, null);
contentPane.add(jButton2, null);
contentPane.add(jLabel1, null);
contentPane.add(jScrollPane2, null);
contentPane.add(jButton5, null);
contentPane.add(jScrollPane3, null);
contentPane.add(jScrollPane4, null);
contentPane.add(jButton6, null);
contentPane.add(jButton3, null);
jScrollPane4.getViewport().add(jTextArea4, null);
jScrollPane3.getViewport().add(jTextArea3, null);
jScrollPane2.getViewport().add(jTextArea2, null);
jScrollPane1.getViewport().add(jTextArea1, null);
}
//Overridden so we can exit when window is closed
protected void processWindowEvent(WindowEvent e) {
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
System.exit(0);
}
}
////////.....连接.........
void jButton1_actionPerformed(ActionEvent e) {
String str = "";
try {
// Initialize service.
srv.initialize();
// Set the cache directory.
srv.setCacheDir(".\\");
// Connect to GSM device.
status = srv.connect();
// did we connect ok:
if (status == CService.ERR_OK) {
// Set the operation mode to PDU
srv.setOperationMode(CService.MODE_PDU);
str = str + "Mobile Device Information: \n";
str = str + "Manufacturer : " + srv.getDeviceInfo().getManufacturer();
str = str + "\nModel : " + srv.getDeviceInfo().getModel();
str = str + "\nSerial No : " + srv.getDeviceInfo().getSerialNo();
str = str + "\nIMSI : " + srv.getDeviceInfo().getImsi();
str = str + "\nS/W Version : " + srv.getDeviceInfo().getSwVersion();
str = str + "\nBattery Level : " + srv.getDeviceInfo().getBatteryLevel() +
"%";
str = str + "\nSignal Level : " + srv.getDeviceInfo().getSignalLevel() +
"%";
jTextArea1.setText(str);
}
// else {
// JOptionPane.showMessageDialog(this, "连接失败: " + status, "提示", 2);
//}
}
catch (Exception ee) {
JOptionPane.showMessageDialog(this, "连接失败zxcv", "提示", 2);
}
}
///////////发送短信...
void jButton2_actionPerformed(ActionEvent e) {
try {
String text = jTextArea2.getText(); //短信内容
String number = jTextField1.getText(); //手机号码
///////判断是否为空
if (text.equals("") || number.equals("")) {
JOptionPane.showConfirmDialog(this, "手机号码或短信内容不能为空", "错误", 0);
}
if (status == CService.ERR_OK) {
System.out.println("status:"+status+"");
System.out.println("CService.ERR_OK:"+CService.ERR_OK);
// Set the operation mode to PDU - default is ASCII.
srv.setOperationMode(CService.MODE_PDU);
//srv.setOperationMode(CService.MODE_ASCII);
// Set the SMSC number (set to default).
srv.setSmscNumber("");
// Create a COutgoingMessage object and dispatch it.
// *** Please update the phone number with one of your choice ***
COutgoingMessage msg = new COutgoingMessage(number, text);
// Character set is 7bit by default - lets make it UNICODE :)
// We can do this, because we are in PDU mode (look at line 63). When in ASCII mode,
// this does not make ANY difference...
msg.setMessageEncoding(CMessage.MESSAGE_ENCODING_UNICODE);
if (srv.sendMessage(msg) == CService.ERR_OK) {
//jLabel1.setText("信息发送成功...");
JOptionPane.showMessageDialog(this, "信息发送成功", "恭喜", 1);
}
else{ //srv.sendMessage(msg) == CService.ERR_OK
JOptionPane.showMessageDialog(this, "信息发送失败...", "对不起", 1);
}
}else{ //status == CService.ERR_OK
JOptionPane.showMessageDialog(this, "信息发送失败...", "对不起", 1);
}
}
catch (Exception ee) {
JOptionPane.showMessageDialog(this, "...", "出错", 2);
}
}
/////读取信息
void jButton3_actionPerformed(ActionEvent e) {
jTextArea3.setText("");
if (status == CService.ERR_OK) {
LinkedList msgList = new LinkedList();
String mssg = "";
// Request to read all messages.
if (srv.readMessages(msgList, CIncomingMessage.CLASS_ALL) == CService.ERR_OK) {
// Enumerate and print all messages.
for (int i = 0; i < msgList.size(); i++) {
CIncomingMessage msg = (CIncomingMessage) msgList.get(i);
mssg = msg.getText();
jTextArea3.append(mssg + "\n");
//srv.deleteMessage(msg);//删除GSM Modem内的记录
//System.out.println("记录删除成功.");
}
}
}else {
JOptionPane.showMessageDialog(this, "连接失败...", "对不起", 1);
}
}
////////断开连接
void jButton4_actionPerformed(ActionEvent e) {
srv.disconnect();
jTextArea1.setText("");
jTextArea1.setText("已经断开连接...");
}
////退出系统
void jButton5_actionPerformed(ActionEvent e) {
srv.disconnect();
System.exit(0);
}
////已发短信
void jButton6_actionPerformed(ActionEvent e) {
}
}
class MainFrame_jButton1_actionAdapter implements java.awt.event.ActionListener {
MainFrame adaptee;
MainFrame_jButton1_actionAdapter(MainFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton1_actionPerformed(e);
}
}
class MainFrame_jButton3_actionAdapter implements java.awt.event.ActionListener {
MainFrame adaptee;
MainFrame_jButton3_actionAdapter(MainFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton3_actionPerformed(e);
}
}
class MainFrame_jButton4_actionAdapter implements java.awt.event.ActionListener {
MainFrame adaptee;
MainFrame_jButton4_actionAdapter(MainFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton4_actionPerformed(e);
}
}
class MainFrame_jButton2_actionAdapter implements java.awt.event.ActionListener {
MainFrame adaptee;
MainFrame_jButton2_actionAdapter(MainFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton2_actionPerformed(e);
}
}
class MainFrame_jButton5_actionAdapter implements java.awt.event.ActionListener {
MainFrame adaptee;
MainFrame_jButton5_actionAdapter(MainFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton5_actionPerformed(e);
}
}
class MainFrame_jButton6_actionAdapter implements java.awt.event.ActionListener {
MainFrame adaptee;
MainFrame_jButton6_actionAdapter(MainFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton6_actionPerformed(e);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -