⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 login.java

📁 本工程模拟网上社区,其中包括银行,软件销售公司,软件投资公司,茶餐馆,和多个服务器.
💻 JAVA
字号:
package client;
import java.net.*;
import java.io.*;
import javax.swing.*;
public class Login extends javax.swing.JFrame implements Runnable{
    private BufferedReader in;
    private PrintWriter out;
    private boolean shutdown=false;
    private Socket socket;
    public Login(Socket socket_) {
        initComponents();
        this.setLocation(450,180);
        try{
              socket=socket_;  
              in=new BufferedReader(new InputStreamReader(socket.getInputStream()));
              out=new PrintWriter(socket.getOutputStream(),true);
        }
        catch(Exception e)
        {
            System.out.println("ClientLogin initial"+e.toString());
        }
       Thread t=new Thread(this);
       t.start();
    }
////////////////////////////////////////////////////////////////////////////
//客户端登陆程序主体    
    public void run()
    { 
        try
        {
            while(!shutdown)
            {
              String  str=in.readLine();
              if(str.equals("login/success"))
              {
                    JOptionPane.showMessageDialog(this,"用户: "+jTextField_Name.getText()+"  登陆成功");
                    Hall framehall=new Hall(jTextField_Name.getText(),socket,in,out);     
                    framehall.setVisible(true);  
                    Thread t=new Thread(framehall);
                    t.start();   
                    in=null;
                    out=null;
                    socket=null;
                    shutdown=true;                    
              }
              if(str.equals("login/failure"))
              {
                    jTextField_Name.setText("");
                    jPasswordField.setText("");  
                    JOptionPane.showMessageDialog(this,"帐号和密码不对");                   
              }
              if(str.equals("login/already"))
              {
                    jTextField_Name.setText("");
                    jPasswordField.setText("");   
                    JOptionPane.showMessageDialog(this,"该用户已经登陆,请重新输入其他帐号和密码");
              }
              if(str.equals("login cancel/success"))
              {
                    shutdown=true;
                    in.close();
                    out.close();
                    socket.close();                    
              }
              if(str.equals("login/register"))
              {
                     new Register(in,out,socket).setVisible(true);
                     in=null;
                     out=null;
                     try{
                     socket=null;
                     }
                     catch(Exception e)
                     {
                         System.out.println("socket null"+e.toString());
                     }
                     shutdown=true; 
                     this.setVisible(false);
              }
           }
        }
        catch(Exception e)
        {
            System.out.println("Login run"+e.toString());
        }          
        this.dispose(); 
    }
    // <editor-fold defaultstate="collapsed" desc=" 生成的代码 ">//GEN-BEGIN:initComponents
    private void initComponents() {
        jPanel1 = new javax.swing.JPanel();
        jButton_Login = new javax.swing.JButton();
        jButton_Register = new javax.swing.JButton();
        jButton_Canel = new javax.swing.JButton();
        jLabel2 = new javax.swing.JLabel();
        jPasswordField = new javax.swing.JPasswordField();
        jLabel1 = new javax.swing.JLabel();
        jTextField_Name = new javax.swing.JTextField();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        setTitle("\u671d\u9633\u793e\u533a\u767b\u9646");
        jPanel1.setBackground(new java.awt.Color(204, 204, 204));
        jPanel1.setBorder(javax.swing.BorderFactory.createEtchedBorder());
        jButton_Login.setText("\u767b\u9646");
        jButton_Login.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                jButton_LoginMouseClicked(evt);
            }
        });

        jButton_Register.setText("\u6ce8\u518c");
        jButton_Register.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                jButton_RegisterMouseClicked(evt);
            }
        });

        jButton_Canel.setText("\u9000\u51fa");
        jButton_Canel.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                jButton_CanelMouseClicked(evt);
            }
        });

        jLabel2.setText("\u5bc6  \u7801\uff1a");
        jLabel2.setBorder(javax.swing.BorderFactory.createEmptyBorder(1, 1, 1, 1));

        jPasswordField.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyPressed(java.awt.event.KeyEvent evt) {
                jPasswordFieldKeyPressed(evt);
            }
        });

        jLabel1.setText("\u7528\u6237\u540d\uff1a");
        jLabel1.setBorder(javax.swing.BorderFactory.createEmptyBorder(1, 1, 1, 1));

        org.jdesktop.layout.GroupLayout jPanel1Layout = new org.jdesktop.layout.GroupLayout(jPanel1);
        jPanel1.setLayout(jPanel1Layout);
        jPanel1Layout.setHorizontalGroup(
            jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(jPanel1Layout.createSequentialGroup()
                .addContainerGap()
                .add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
                    .add(jLabel2, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 55, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                    .add(jLabel1)
                    .add(jButton_Login))
                .add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
                    .add(org.jdesktop.layout.GroupLayout.LEADING, jPanel1Layout.createSequentialGroup()
                        .add(38, 38, 38)
                        .add(jButton_Register)
                        .add(32, 32, 32)
                        .add(jButton_Canel))
                    .add(org.jdesktop.layout.GroupLayout.LEADING, jPanel1Layout.createSequentialGroup()
                        .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                        .add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
                            .add(jTextField_Name, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 178, Short.MAX_VALUE)
                            .add(jPasswordField, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 178, Short.MAX_VALUE))))
                .add(34, 34, 34))
        );
        jPanel1Layout.setVerticalGroup(
            jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(org.jdesktop.layout.GroupLayout.TRAILING, jPanel1Layout.createSequentialGroup()
                .add(33, 33, 33)
                .add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
                    .add(jLabel1)
                    .add(jTextField_Name, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
                .add(41, 41, 41)
                .add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
                    .add(jLabel2)
                    .add(jPasswordField, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
                .add(34, 34, 34)
                .add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
                    .add(jButton_Login)
                    .add(jButton_Register)
                    .add(jButton_Canel))
                .addContainerGap())
        );

        org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(layout.createSequentialGroup()
                .addContainerGap()
                .add(jPanel1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(layout.createSequentialGroup()
                .addContainerGap()
                .add(jPanel1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 189, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );
        pack();
    }// </editor-fold>//GEN-END:initComponents

    private void jPasswordFieldKeyPressed(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_jPasswordFieldKeyPressed
// TODO 将在此处添加您的处理代码:
        int  key=evt.getKeyCode();
        String account=jTextField_Name.getText();
        String code=jPasswordField.getText();       
        if(key==evt.VK_ENTER)
        {
            if((!account.equals(""))&&(!code.equals("")))
            {
                out.println("login/"+account+"/"+code);
                out.flush();
            }
            else
            {
                JOptionPane.showMessageDialog(this,"输入错误");             
            }
        }
    }//GEN-LAST:event_jPasswordFieldKeyPressed

    private void jButton_RegisterMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jButton_RegisterMouseClicked
        out.println("login/register");
        out.flush();        
    }//GEN-LAST:event_jButton_RegisterMouseClicked

    private void jButton_CanelMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jButton_CanelMouseClicked
       out.println("login/cancel");
       out.flush();
    }//GEN-LAST:event_jButton_CanelMouseClicked

    private void jButton_LoginMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jButton_LoginMouseClicked
         String account=jTextField_Name.getText();
         String code=jPasswordField.getText();
         if((!account.equals(""))&&(!code.equals("")))
         {
             out.println("login/"+account+"/"+code);
             out.flush();
         }
         else
         {
             JOptionPane.showMessageDialog(this,"输入错误");             
         }
    }//GEN-LAST:event_jButton_LoginMouseClicked
    
    // 变量声明 - 不进行修改//GEN-BEGIN:variables
    private javax.swing.JButton jButton_Canel;
    private javax.swing.JButton jButton_Login;
    private javax.swing.JButton jButton_Register;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JPasswordField jPasswordField;
    private javax.swing.JTextField jTextField_Name;
    // 变量声明结束//GEN-END:variables
   
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -