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

📄 loginframe.java

📁 和qq相似的网络聊天工具
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
        login.setToolTipText("\u767b\u9646");        login.addActionListener(new java.awt.event.ActionListener() {            public void actionPerformed(java.awt.event.ActionEvent evt) {                loginActionPerformed(evt);            }        });        getContentPane().add(login);        login.setBounds(120, 180, 70, 26);        quit.setText("\u9000\u51fa");        quit.setToolTipText("\u9000\u51fa");        quit.addActionListener(new java.awt.event.ActionListener() {            public void actionPerformed(java.awt.event.ActionEvent evt) {                quitActionPerformed(evt);            }        });        getContentPane().add(quit);        quit.setBounds(210, 180, 70, 26);        servername.setText("127.0.0.1");        getContentPane().add(servername);        servername.setBounds(90, 140, 77, 20);        serverport.setText("8080");        getContentPane().add(serverport);        serverport.setBounds(230, 140, 40, 20);        pack();    }    // </editor-fold>//GEN-END:initComponents    private void jCancelButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jCancelButtonActionPerformed// TODO add your handling code here:        Register.dispose();    }//GEN-LAST:event_jCancelButtonActionPerformed    private void jOKButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jOKButtonActionPerformed// TODO add your handling code here:        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("new");//发送新建用户请求            out.println(nickname.getText().trim());//发送呢称等信息            out.println(dialogPassword.getPassword());            out.println(email.getText().trim());            out.println(info.getText().trim());            out.println(place.getSelectedItem());            out.println(headpic.getSelectedIndex());//head picindex            if(boy.isSelected())out.println("boy");            else out.println("girl");            String str=in.readLine().trim();//从服务器读取信息            //如果出错            if(str.equals("false"))                JOptionPane.showMessageDialog(this,"注册失败,请重试","ok",JOptionPane.INFORMATION_MESSAGE);            else{//如果成功就告诉用户其号码                str=in.readLine().trim();                int no=Integer.parseInt(str);                int udpport=Integer.parseInt(in.readLine());//得到udp发送端口号                JOptionPane.showMessageDialog(this,"your javaicq#is"+no,"ok",JOptionPane.INFORMATION_MESSAGE);                Register.dispose();//并打开主窗口                MainWin f2=new MainWin(nickname.getText().trim(),no,server,serport,udpport);                f2.setBounds(800,10,100,400);                f2.setVisible(true);            }            socket.close();        }        catch(IOException e1){            JOptionPane.showMessageDialog(this,"无法与服务器连接","ok",JOptionPane.INFORMATION_MESSAGE);        }    }//GEN-LAST:event_jOKButtonActionPerformed    class HeadPicCombobox extends DefaultComboBoxModel {//头象列表类        public HeadPicCombobox(String[] pics) {            for(int i=0; i < pics.length; ++i) {                     addElement(new Object[] {new ImageIcon(pics[i]) } );            }        }	public Icon getIcon(Object object) {		Object[] array = (Object[])object;		return (Icon)array[0];	}    }        class HeadpicCellRenderer extends JLabel implements ListCellRenderer {	private Border		lineBorder = BorderFactory.createLineBorder(Color.red, 2),		emptyBorder = BorderFactory.createEmptyBorder(2,2,2,2);	public HeadpicCellRenderer() {		setOpaque(true);	}	public Component getListCellRendererComponent(JList list,Object value,int index,boolean isSelected,boolean cellHasFocus) {		HeadPicCombobox model =(HeadPicCombobox)list.getModel();		setIcon(model.getIcon(value));		if(isSelected) {                    setForeground(list.getSelectionForeground());                    setBackground(list.getSelectionBackground());		}		else {                    setForeground(list.getForeground());                    setBackground(list.getBackground());		}                if(cellHasFocus)setBorder(lineBorder);		else setBorder(emptyBorder);		return this;	}    }            private void quitActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_quitActionPerformed// TODO add your handling code here:        this.dispose();        System.exit(0);    }//GEN-LAST:event_quitActionPerformed    private void loginActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_loginActionPerformed// TODO add your handling code here:        try {            server=servername.getText().toString();            serport=Integer.parseInt(serverport.getText());        }        catch(Exception e) { e.printStackTrace(); }        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);            System.out.println(socket);            out.println("login");//告诉服务器我要登录            out.println(jicq.getText());            out.println(password.getPassword());            String str=" ";            str=in.readLine().trim();//从服务器读取消息            //如果失败就告诉出错            if(str.equals("false"))                JOptionPane.showMessageDialog(this,"密码错误,请重试!","ok",JOptionPane.INFORMATION_MESSAGE);            else if(str.equals("上线"))                JOptionPane.showMessageDialog(this,"该用户已经在线!","ok",JOptionPane.INFORMATION_MESSAGE);            else{//如果成功就打开主程序                str=in.readLine().trim();//得到注册昵称                int udpport=Integer.parseInt(in.readLine());//得到udp发送端口号                this.dispose();                int g=Integer.parseInt(jicq.getText());                MainWin mw=new MainWin(str,g,server,serport,udpport);                mw.setBounds(800,10,100,400);                mw.setVisible(true);            }            socket.close();        }        catch(IOException e1){            JOptionPane.showMessageDialog(this,"无法同服务器进行连接!","ok",JOptionPane.INFORMATION_MESSAGE);        }    }//GEN-LAST:event_loginActionPerformed    private void newuserActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_newuserActionPerformed// TODO add your handling code here:        try {            server=servername.getText().toString();            serport=Integer.parseInt(serverport.getText());        }        catch(Exception e) { e.printStackTrace(); }        this.dispose();        Register.setBounds(200, 200, 390, 360);//打开新建窗口        Register.setVisible(true);    }//GEN-LAST:event_newuserActionPerformed        /**     * @param args the command line arguments     */    public static void main(String args[]) {        java.awt.EventQueue.invokeLater(new Runnable() {            public void run() {                LoginFrame lf=new LoginFrame();                lf.setBounds(400, 280, 320, 250);                lf.setVisible(true);            }        });    }        // Variables declaration - do not modify//GEN-BEGIN:variables    private javax.swing.JDialog Register;    private javax.swing.JRadioButton boy;    private javax.swing.JPasswordField dialogPassword;    private javax.swing.JTextField email;    private javax.swing.JRadioButton girl;    private javax.swing.JComboBox headpic;    private javax.swing.JTextPane info;    private javax.swing.JButton jCancelButton;    private javax.swing.JLabel jLabel1;    private javax.swing.JLabel jLabel10;    private javax.swing.JLabel jLabel11;    private javax.swing.JLabel jLabel12;    private javax.swing.JLabel jLabel13;    private javax.swing.JLabel jLabel2;    private javax.swing.JLabel jLabel3;    private javax.swing.JLabel jLabel4;    private javax.swing.JLabel jLabel5;    private javax.swing.JLabel jLabel6;    private javax.swing.JLabel jLabel7;    private javax.swing.JLabel jLabel8;    private javax.swing.JLabel jLabel9;    private javax.swing.JButton jOKButton;    private javax.swing.JTextField jicq;    private javax.swing.JButton login;    private javax.swing.JButton newuser;    private javax.swing.JTextField nickname;    private javax.swing.JPasswordField password;    private javax.swing.JComboBox place;    private javax.swing.JButton quit;    private javax.swing.JTextField servername;    private javax.swing.JTextField serverport;    private javax.swing.ButtonGroup sexButtonGroup;    // End of variables declaration//GEN-END:variables    }

⌨️ 快捷键说明

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