📄 set.java
字号:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Set implements ActionListener{//设置用户名,IP地址和端口
String port;//端口号
JDialog dialog;//对话框
JPanel panel1;
JPanel panel2;
JPanel panel3;
JPanel panel4;
JLabel label1;
JLabel label2;
JLabel label3;
JLabel tip;
JTextField ipaddress;//IP地址文本框
JTextField portnumber;//端口号文本框
JTextField username;//用户名文本框
JButton save;//保存
JButton cancel;//取消
Dimension dialogsize;//对话框的尺寸
Dimension screensize;//窗口的尺寸
public Set(JFrame frame){
dialog = new JDialog(frame,"连接",true);
Container contentpane = dialog.getContentPane();
panel1 = new JPanel();
panel1.setLayout(new GridLayout(3,0));
label1 = new JLabel("I P:");
label1.setHorizontalAlignment(SwingConstants.RIGHT);
label2 = new JLabel("端 口:");
label2.setHorizontalAlignment(SwingConstants.RIGHT);
label3 = new JLabel("用户名:");
label3.setHorizontalAlignment(SwingConstants.RIGHT);
panel1.add(label1);
panel1.add(label2);
panel1.add(label3);
contentpane.add(panel1,BorderLayout.WEST);
panel2 = new JPanel();
panel2.setLayout(new GridLayout(3,0));
ipaddress = new JTextField(ChatClient.ip,15);
port = String.valueOf(ChatClient.port);
portnumber = new JTextField(port,15);
username = new JTextField(ChatClient.username,15);
panel2.add(ipaddress);
panel2.add(portnumber);
panel2.add(username);
contentpane.add(panel2,BorderLayout.EAST);
panel3 = new JPanel();
panel3.setLayout(new GridLayout(2,1));
tip = new JLabel("默认设置");
panel3.add(tip);
panel4 = new JPanel();
save = new JButton("保存");
save.addActionListener(this);
cancel = new JButton("取消");
cancel.addActionListener(this);
panel4.add(save);
panel4.add(cancel);
panel3.add(panel4);
contentpane.add(panel3,BorderLayout.SOUTH);
dialog.pack();
dialogsize = dialog.getSize();
screensize = Toolkit.getDefaultToolkit().getScreenSize();
int x = (int)(screensize.width - dialogsize.getWidth())/2;
int y = (int)(screensize.height - dialogsize.getHeight())/2;
dialog.setLocation(x,y);
dialog.setResizable(false);
dialog.setVisible(true);
}
public void actionPerformed(ActionEvent e){//事件处理
Object obj = e.getSource();
if(obj == save){
int saveport,ippoint = 0,ipflag = 1,portflag = 1;
String ipstring;
ipstring = ipaddress.getText();
for(int i = 0;i < ipstring.length();i++){
if(ipstring.charAt(i) != '.'){
int temp = ipstring.charAt(i) - '0';
if(temp < 0 || temp > 9){
ipflag = 0;
break;
}
}
else ippoint++;
}
if(ippoint != 3) ipflag = 0;
if(ipflag == 0){//检查输入IP地址格式是否正确
tip.setText("IP地址格式不正确,请重新输入!");
return;
}
try{
saveport = Integer.valueOf(portnumber.getText()).intValue();
if(saveport < 1024 || saveport > 65535){//检查输入端口是否在范围内
tip.setText("端口号必须是1024-65535之间的整数");
portflag = 0;
return;
}
}
catch(Exception a){
tip.setText("错误的端口号,端口号请填写整数!");
portflag = 0;
return;
}
if(ipflag == 1 && portflag == 1){
ChatClient.ip = ipaddress.getText();
ChatClient.port = saveport;
ChatClient.username = username.getText();
dialog.dispose();
}
}
else if(obj == cancel) dialog.dispose();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -