📄 mobile.java
字号:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.lang.*;
public class Mobile extends JFrame implements ActionListener {
JPanel imagepad = new JPanel(new GridLayout(1,2,2,2));
JPanel keypad = new JPanel(new GridLayout(4,3,2,2));
Font font = new Font("SansSerif", Font.BOLD, 22);
JButton keys[][];
JButton keys1,keys2;
JTextArea display = new JTextArea("",10,8);
String finaltext;
String buttonInfo;
int presstime=0;
boolean next,sent;
public Mobile() {
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
setTitle("Mobile: Text Messaging");
display.setLineWrap(true);
keys1 = new JButton(new ImageIcon("call.gif"));
keys1.addActionListener(this);
keys2 = new JButton(new ImageIcon("hangup.gif"));
keys2.addActionListener(this);
imagepad.add(keys1);
imagepad.add(keys2);
int i, j;
// create the keys
keys = new JButton[4][3];
keys[0][0] = new JButton(".'1");
keys[0][1] = new JButton("abc2");
keys[0][2] = new JButton("def3");
keys[1][0] = new JButton("ghi4");
keys[1][1] = new JButton("jkl5");
keys[1][2] = new JButton("mno6");
keys[2][0] = new JButton("pqrs7");
keys[2][1] = new JButton("tuv8");
keys[2][2] = new JButton("wxyz9");
keys[3][0] = new JButton("next");
keys[3][1] = new JButton("0");
keys[3][2] = new JButton("space");
for(i = 0; i < 4; i++) {
for(j = 0; j < 3; j++) {
keys[i][j].setFont(font);
keys[i][j].addActionListener(this);
keypad.add(keys[i][j]);
}
}
getContentPane().setLayout(new BorderLayout());
this.getContentPane().add(imagepad, BorderLayout.CENTER);
this.getContentPane().add(keypad, BorderLayout.SOUTH);
display.setFont(font);
display.setEditable(false);
display.setForeground(Color.green);
display.setBackground(Color.black);
this.getContentPane().add(display, BorderLayout.NORTH);
setSize(340,500);
setVisible(true);
}
public void actionPerformed(java.awt.event.ActionEvent e) {
try {
if(e.getSource()==keys[3][0]) {
next=true; } else if (e.getSource()==keys[3][2]){
finaltext=finaltext+" ";
display.setText(finaltext);
} else if(e.getSource()==keys1) {
display.setText("Sent the message"); sent=true;
} else if(e.getSource()==keys2) {
if(display.getText().length()!=0) {
finaltext=display.getText();
display.setText(finaltext.substring(0,finaltext.length()-1).toString());
}
} else if(e.getSource()==keys[3][1]) {
finaltext=finaltext+"0";
display.setText(display.getText()+"0");
} else { if(sent==true) { display.setText(""); sent=false; }
int len=(display.getText()).length();
buttonInfo=e.getActionCommand().toString();
if(len==0) { finaltext=buttonInfo.substring(0,1);
display.setText(finaltext);
presstime++;
} else {
if(e.getActionCommand().indexOf(finaltext.charAt(len-1))!=-1 && next==false) { display.setText(finaltext.substring(0,len-1)+buttonInfo.substring(presstime,presstime+1));
presstime++;
if(presstime==buttonInfo.length()) {
presstime=0;
}
} else {
presstime=0; finaltext=display.getText()+buttonInfo.substring(presstime,presstime+1);
display.setText(finaltext);
presstime++;
next=false;
}
}
}
} catch (NumberFormatException e2) {
display.setText("Wrong Number Format");
}
}
public static void main(String args[]) {
Mobile textMsg = new Mobile();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -