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

📄 register.java

📁 JICQ是用JAVA语言编写的一个基于客户机/服务器(C/S)模式的局域短信实时通信工具系统
💻 JAVA
字号:
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.net.*;
import java.io.*;
import javax.swing.border.*;
import java.lang.String;
import java.awt.image.*;
import java.applet.*;

public class Register extends JDialog {//新建用户类
//以下创建程序界面
  JPanel panel1 = new JPanel();
  
  JLabel jLabel2=new JLabel();
  JTextField nickname = new JTextField();
  JLabel jLabel3=new JLabel();
  JComboBox sex = new JComboBox();
  JLabel jLabel4=new JLabel();
  JComboBox headpic = new JComboBox();
  JLabel jLabel5 = new JLabel();
  JPasswordField password = new JPasswordField();
  JLabel jLabel6=new JLabel();
  JPasswordField checkpassword=new JPasswordField();
  JLabel jLabel7 = new JLabel();
  JTextField email = new JTextField();
  JLabel jLabel8 = new JLabel();
  JComboBox province=new JComboBox();
  JLabel jLabel9 = new JLabel();
  JTextField city=new JTextField();
  JLabel jLabel10=new JLabel();
  JTextPane info = new JTextPane();
  JButton jButton1 = new JButton();
  JButton jButton2 = new JButton();
  JLabel jLabel1=new JLabel();
  
  private String[] pics = new String[] { //头像
        "1.jpg", "3.jpg", "5.jpg", "7.jpg" };
        
 
String sername;//服务器名
int serverport;//服务器端口

  public Register(String  s,int port) {//构造函数
   sername=s;
   serverport=port;
     try {
      jbInit();//创建窗口
      pack();
    }
    catch(Exception ex) {
      ex.printStackTrace();}
    //this(null, "", true);
  }
  void jbInit() throws Exception {//创建窗口
    Font f=new Font("宋体",Font.PLAIN,12);
    panel1.setLayout(null);
    panel1.setBackground(new Color(101,185,243));//设置面板的背景色
    this.getContentPane().setLayout(null);
    this.setSize(new Dimension(420, 475));
    panel1.setBounds(new Rectangle(-2, 0, 419, 472));//设置面板大小
    this.setTitle("基本资料");
    jLabel1.setText("个人信息");
    jLabel1.setFont(f);
    jLabel1.setBounds(new Rectangle(2, 9, 53,20 ));
    
    
    jLabel2.setText("昵称");
    jLabel2.setFont(f);
    jLabel2.setBounds(new Rectangle(2,45,53,20));
    nickname.setBounds(new Rectangle(55, 45, 120, 20));
    jLabel3.setText("性别");
    jLabel3.setFont(f);
    jLabel3.setBounds(new Rectangle(195,45,26,20));
    
    sex.setBounds(new Rectangle(221,45,60,22));
    sex.setBackground(new Color(101,185,243));
    sex.setToolTipText("");
    sex.addItem("");
    sex.addItem("男");
    sex.addItem("女");
    
    jLabel4.setText("头像");
    jLabel4.setFont(f);
    jLabel4.setBounds(new Rectangle(292,45,26,20));
    
    ComboBoxModel model = new HeadPicCombobox(pics);
     ListCellRenderer renderer = new HeadpicCellRenderer();        
     headpic.setBounds(new Rectangle(318,25,50,42));
     headpic.setBackground(new Color(101,185,243)); 
     headpic.setBounds(new Rectangle(318,25,50,42));    
    jLabel5.setText("密码");
    jLabel5.setFont(f);
    jLabel5.setBounds(new Rectangle(2,95,53,20));
    password.setBounds(new Rectangle(55, 95, 120, 22));
    jLabel6.setText("校验密码");
    jLabel6.setFont(f);
    jLabel6.setBounds(new Rectangle(195,95,53,20));
    checkpassword.setBounds(new Rectangle(248,95,120,20));
    ;
    jLabel7.setText("电子邮件");
    jLabel7.setFont(f);
    jLabel7.setBounds(new Rectangle(2, 150, 53, 20));
    email.setBounds(new Rectangle(55, 150, 120, 20));
    jLabel8.setText("省份");
    jLabel8.setFont(f);
    jLabel8.setBounds(new Rectangle(195,150,26,20));
    province.setBounds(new Rectangle(221,150,60,22));
    province.setBackground(new Color(101,185,243));
    
    province.addItem("");
    province.addItem("山东省");
    province.addItem("湖南省");
    province.addItem("台湾省");
    jLabel9.setText("城市");
    jLabel9.setFont(f);
    jLabel9.setBounds(new Rectangle(292,150,26,20));
    city.setBounds(new Rectangle(318,150,50,22));
    jLabel10.setText("个人资料");
    jLabel10.setFont(f);
    jLabel10.setBounds(new Rectangle(6, 200, 87, 18));
    info.setBounds(new Rectangle(5, 219, 363, 103));
    
    jButton1.setText("提交");
    jButton1.setFont(f); 
    jButton1.setBackground(new Color(101,185,243));
    jButton1.setBounds(new Rectangle(228, 354, 60, 22));
    jButton1.addMouseListener(new java.awt.event.MouseAdapter() {
      public void mouseClicked(MouseEvent e) {
        jButton1_mouseClicked(e);
      }
    });
    jButton2.setText("取消");
    jButton2.setFont(f);
    jButton2.setBackground(new Color(101,185,243));
    jButton2.setBounds(new Rectangle(308, 354, 60, 22));
    
    this.getContentPane().add(jButton1, null);
    this.getContentPane().add(panel1, null);
    
    


	
    panel1.add(jLabel1,null);
    panel1.add(jLabel2, null);
    panel1.add(nickname, null);
    panel1.add(jLabel3,null);
    panel1.add(sex,null);
    panel1.add(jLabel4,null);
    panel1.add(headpic,null);
    panel1.add(jLabel5, null);
    panel1.add(password, null);
    
    panel1.add(jLabel6,null);
    panel1.add(checkpassword,null);
    panel1.add(jLabel7, null);
    panel1.add(email, null);
    panel1.add(jLabel10, null);
    panel1.add(info, null);
    panel1.add(jLabel8, null);
    panel1.add(province,null);
    panel1.add(jLabel9, null);
    panel1.add(city,null);
    panel1.add(jButton1, null);
    panel1.add(jButton2, null);
    panel1.add(jLabel1,null);
    

 }

  void jButton1_mouseClicked(MouseEvent e) {
            try {
                System.out.println(sername);
                System.out.println(serverport);
                Socket socket =
                new Socket(InetAddress.getByName(sername), serverport);
                //连接服务器
                
                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(sex.getSelectedItem());
                out.println(password.getPassword());
                out.println(email.getText().trim());
                out.println(province.getSelectedItem());
                out.println(city.getText().trim());
                
                out.println(info.getText().trim());
                
                out.println(headpic.getSelectedIndex());//head picindex
               
                int no;
                no = Integer.parseInt(in.readLine());
                System.out.print(no);
                
                String str = " ";
                //do{
                str = in.readLine().trim(); //从服务器读取信息
                //如果出错
                if (str.equals("false"))
                    JOptionPane.showMessageDialog(
                    this,
                    "对不起,出错了:-(",
                    "ok",
                    JOptionPane.INFORMATION_MESSAGE);
                else { //如果成功就告诉用户其号码
                    JOptionPane.showMessageDialog(
                    this,
                    "your javaicq#is" + no,
                    "ok",
                    JOptionPane.INFORMATION_MESSAGE);
                    
                    this.dispose(); //并打开主窗口
                    MainWin f2 = new MainWin(no, sername, serverport);
                    f2.setVisible(true);
                }
                //System.out.println("\n");
                //}while(!str.equals("ok"));
                // socket.close();
            } catch (IOException e1) {
            }
            
        }
}
class HeadPicCombobox extends DefaultComboBoxModel { //头象列表类
    public HeadPicCombobox(String[] pics) {
        for (int i = 0; i < pics.length; ++i) {
            
            addElement(new Object[] { new ImageIcon("D:\\Java\\New\\Jicq\\src\\"+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;
    }
}

⌨️ 快捷键说明

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