?? clientmainclass.java
字號:
package main;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.List;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import com.chat.client.*;
import com.chat.constants.ClientConstants;
import com.chat.io.TxtManager;
import javax.swing.*;
@SuppressWarnings("serial")
public class ClientMainClass extends JFrame {
private JComboBox cbxPort;
private JComboBox cbxIP;
private JComboBox cbxUserId;
/**
* Launch the application
* @param args
*/
public static void main(String args[]) {
try {
ClientMainClass frame = new ClientMainClass();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
public ClientMainClass() {
super();
setResizable(false);
setTitle("QQ演示版本 登陸");
getContentPane().setLayout(null);
setBounds(100, 100, 331, 215);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
final JLabel label = new JLabel();
label.setIcon(new ImageIcon(getClass().getResource("/images/h.jpg")));
label.setFont(new Font("", Font.PLAIN, 14));
//label.setText("本程序無需注冊,請輸入帳號直接登陸!(建議使用默認(rèn))");
label.setBounds(0, 0, 327, 42);
getContentPane().add(label);
final JButton button = new JButton();
button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if(cbxUserId.getItemCount()==0 || cbxIP.getItemCount()==0 ||cbxPort.getItemCount()==0)return;
String userId=cbxUserId.getSelectedItem().toString().trim();
//String ip="10.1.101.46";
String ip=cbxIP.getSelectedItem().toString().trim();
String port=cbxPort.getSelectedItem().toString().trim();
if(userId.equals("")){
javax.swing.JOptionPane.showMessageDialog(null, "請輸入帳號!");
return;
}
if(userId.indexOf(ClientConstants.FIRST_ITEM)>=0){
javax.swing.JOptionPane.showMessageDialog(null, "對不起, ["+ClientConstants.FIRST_ITEM+"] 為保留字,您不能用它來做帳號!");
return;
}
if(userId.indexOf(ClientConstants.SERVER_FRAME_ID)>=0){
javax.swing.JOptionPane.showMessageDialog(null, "對不起, ["+ClientConstants.SERVER_FRAME_ID+"] 為保留字,您不能用它來做帳號!");
return;
}
if(userId.length()>8){
javax.swing.JOptionPane.showMessageDialog(null, "對不起, 帳號不能超過8個(gè)字符!");
return;
}
if(ip.equals("")){
javax.swing.JOptionPane.showMessageDialog(null,"請輸入服務(wù)器地址!");
return;
}
if(port.equals("")){
javax.swing.JOptionPane.showMessageDialog(null,"請輸入端口號!");
return;
}
if(port.length()!=4){
javax.swing.JOptionPane.showMessageDialog(null,"服務(wù)器端口長度必須是四位!");
return;
}
if(!base.util.StringTransform.isDigit(port)){
javax.swing.JOptionPane.showMessageDialog(null,"服務(wù)器端口必須是有效數(shù)字!");
return;
}
String[] result={userId,ip,port};
dispose();
//ClientFrame.main(result);
MainFramtest.main(result);
}
});
button.setText("登陸(O)");
button.setBounds(150, 155, 77, 25);
getContentPane().add(button);
final JButton btnClose = new JButton();
btnClose.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
btnClose.setText("退出(E)");
btnClose.setBounds(238, 155, 77, 25);
getContentPane().add(btnClose);
final JLabel label_1 = new JLabel();
label_1.setText("帳 號:");
label_1.setBounds(37, 52, 72, 15);
getContentPane().add(label_1);
cbxUserId = new JComboBox();
cbxUserId.setEditable(true);
cbxUserId.setBounds(115, 48, 152, 23);
List<String> list=TxtManager.getUserId();
for(String userId:list){
cbxUserId.addItem(userId);
}
getContentPane().add(cbxUserId);
final JButton btnRemove = new JButton();
btnRemove.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if(cbxUserId.getItemCount()==0)return;
String seleceteItem=cbxUserId.getSelectedItem().toString();
TxtManager.removeUserId(seleceteItem);
cbxUserId.removeItem(seleceteItem);
}
});
btnRemove.setText("清除帳號");
btnRemove.setBounds(8, 155, 101, 25);
getContentPane().add(btnRemove);
cbxIP = new JComboBox();
cbxIP.setBounds(115, 77, 152, 23);
cbxIP.addItem("127.0.0.1");
cbxIP.addItem("0.0.0.0");
cbxIP.setEditable(true);
getContentPane().add(cbxIP);
cbxPort = new JComboBox();
cbxPort.setBounds(115, 106, 152, 23);
cbxPort.addItem("8888");
cbxPort.addItem("9000");
cbxPort.setEditable(true);
getContentPane().add(cbxPort);
final JLabel label_2 = new JLabel();
label_2.setText("服務(wù)器地址:");
label_2.setBounds(37, 81, 72, 15);
getContentPane().add(label_2);
final JLabel label_3 = new JLabel();
label_3.setText("服務(wù)器端口:");
label_3.setBounds(37, 110, 72, 15);
getContentPane().add(label_3);
//
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -