📄 new.java
字号:
/** ===================================================
* Title: New.java
* Created: [2007-6-11 20:18:53] by 作者
*=====================================================
* Copyright: Copyright (c) 成都信息工程学院, 2007-2008
* =====================================================
* Description: 实现客户端登录窗口
*=====================================================
*Modification Hisytory:
*1. 2007-6-11,作者创建了此文件
*
*/
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.net.*;
import java.io.*;
/**
*<p> New</p>
*
* 客户端登录模块的实现
* @author
* @version
*/
public class New extends JFrame {//登录窗口类
JPanel contentPane;
//*****************
String server;//服务器名
int serport;//端口
private Socket socket;
private BufferedReader in;//输入输出流
private PrintWriter out;
//***********//程序界面
JPanel jPanel1 = new JPanel();
JLabel jLabel1 = new JLabel();
JLabel jLabel2 = new JLabel();
JTextField jicq = new JTextField();
JLabel jLabel3 = new JLabel();
JPasswordField password = new JPasswordField();
JPanel jPanel2 = new JPanel();
JButton login = new JButton();
JButton newuser = new JButton();
JButton quit = new JButton();
JLabel jLabel6 = new JLabel();
JTextField servername = new JTextField();
JLabel jLabel7 = new JLabel();
JTextField serverport = new JTextField();
//构造方法
public New() {
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
try { jbInit();//构造界面,实现登录功能
server=servername.getText().toString().trim();//获取服务器IP
serport=Integer.parseInt(serverport.getText().trim());//获取服务器端口号
} catch(Exception e) { e.printStackTrace(); }
}//构造方法end
/**
* jbInit方法的功能描述
* 构造界面,实现登录功能
* @param
* @return void
* @throws Exception
*/
private void jbInit() throws Exception {
contentPane = (JPanel) this.getContentPane();
contentPane.setLayout(null);
this.setResizable(false);
this.setSize(new Dimension(344, 245));
this.setTitle("登录窗口");
//contentPane.add(text, null);
jPanel1.setBounds(new Rectangle(2, 3, 348, 110));
jPanel1.setLayout(null);
jLabel1.setText("请输入你的信息:");
jLabel1.setBounds(new Rectangle(5, 7, 109, 18));
jLabel2.setText("你的Jicq");
jLabel2.setBounds(new Rectangle(7, 66, 58, 18));
jicq.setBounds(new Rectangle(68, 65, 97, 22));
jLabel3.setText("你的密码");
jLabel3.setBounds(new Rectangle(173, 66, 67, 18));
password.setBounds(new Rectangle(237, 63, 94, 22));
jPanel2.setBounds(new Rectangle(8, 154, 347, 151));
jPanel2.setLayout(null);
login.setText("登录");
login.setBounds(new Rectangle(5, 27, 79, 29));
login.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(MouseEvent e) {
login_mouseClicked(e);//"登录"按钮事件处理
}
});
newuser.setText("新建");
newuser.setBounds(new Rectangle(118, 28, 79, 29));
newuser.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(MouseEvent e) {
newuser_mouseClicked(e);//"新建"按钮事件处理
}
});
quit.setText("退出");
quit.setBounds(new Rectangle(228, 26, 79, 29));
quit.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(MouseEvent e) {
quit_mouseClicked(e);//"退出"按钮事件处理
}
});
jLabel6.setText("服务器");
jLabel6.setBounds(new Rectangle(20, 132, 41, 18));
servername.setText("0.0.0.0");
servername.setBounds(new Rectangle(73, 135, 102, 22));
jLabel7.setText("端口");
jLabel7.setBounds(new Rectangle(191, 137, 41, 18));
serverport.setText("8080");
serverport.setBounds(new Rectangle(241, 131, 90, 30));
contentPane.add(jPanel1, null);
jPanel1.add(jLabel1, null);
jPanel1.add(jLabel2, null);
jPanel1.add(jicq, null);
jPanel1.add(jLabel3, null);
jPanel1.add(password, null);
contentPane.add(jPanel2, null);
jPanel2.add(login, null);
jPanel2.add(quit, null);
jPanel2.add(newuser, null);
contentPane.add(jLabel6, null);
contentPane.add(servername, null);
contentPane.add(jLabel7, null);
contentPane.add(serverport, null);
}//jbInit方法定义结束
protected void processWindowEvent(WindowEvent e) {//窗口关闭事件处理
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
System.exit(0);
}
}
public static void main(String[] args) {//主程序
New f=new New();
f.setVisible(true);
}
void login_mouseClicked(MouseEvent e) {//登录按扭事件处理
try{Socket socket=new Socket(InetAddress.getByName(server),serport);//连接服务器
BufferedReader in=new BufferedReader(new InputStreamReader(socket.getInputStream()));
PrintWriter out=new PrintWriter(new BufferedWriter(
new OutputStreamWriter(socket.getOutputStream())),true);
out.println("login");//告诉服务器我要登录
out.println(jicq.getText());
out.println(password.getPassword());
String str=" ";
//do{
str=in.readLine().trim();//从服务器读取消息
//如果失败就告诉出错
if(str.equals("false"))
JOptionPane.showMessageDialog(this,"对不起,出错了:-(","ok",JOptionPane.INFORMATION_MESSAGE);
else{//如果成功就打开主程序
this.dispose();
int g=Integer.parseInt(jicq.getText());
MainWin f2=new MainWin(g,server,serport);//wen 6.11注
f2.setVisible(true);
}
//System.out.println("\n");
//}while(!str.equals("ok"));
}catch(IOException e1){}
}//登录按扭事件处理结束
void newuser_mouseClicked(MouseEvent e) {//新建用户按纽事件处理
this.dispose();
JDialog d=new Register(server,serport);//打开新建窗口
d.pack();
d.setLocationRelativeTo(this);
d.setSize(400,400);
d.show();
}//新建用户按纽事件处理结束
void quit_mouseClicked(MouseEvent e) {//关闭按扭
this.dispose();
System.exit(0);
}//关闭按扭结束
} //New类定义结束
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -