📄 register.java
字号:
package talk3;import java.awt.*;import javax.swing.*;import java.awt.event.*;import java.net.*;import java.io.*;import javax.swing.border.*;public class Register extends JDialog {//新建用户类//以下创建程序界面int a=0;JPanel panel1 = new JPanel();JLabel jLabel1 = new JLabel();JTextField nickname = new JTextField();JLabel jLabel2 = new JLabel();JLabel jLabel3 = new JLabel();JPasswordField password = new JPasswordField();JLabel jLabel4 = new JLabel();JTextField email = new JTextField();JLabel jLabel5 = new JLabel();JLabel jLabel6 = new JLabel();JTextPane info = new JTextPane();JButton jButton1 = new JButton();JButton jButton2 = new JButton();JLabel jLabel7 = new JLabel();JRadioButton boy = new JRadioButton();JRadioButton girl = new JRadioButton();JLabel jLabel8 = new JLabel();JComboBox place = new JComboBox();JComboBox headpic = new JComboBox();//***************************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();}}void jbInit() throws Exception {//创建窗口panel1.setLayout(null);this.getContentPane().setLayout(null);panel1.setBackground(Color.yellow);panel1.setMaximumSize(new Dimension(200, 200));panel1.setMinimumSize(new Dimension(200, 100));panel1.setBounds(new Rectangle(-2, 0, 419, 452));this.setTitle("register");jLabel1.setText("昵称:");jLabel1.setBounds(new Rectangle(9, 45, 41, 18));nickname.setBounds(new Rectangle(50, 44, 128, 22));jLabel2.setText("请填写以下内容");jLabel2.setBounds(new Rectangle(9, 9, 103, 18));jLabel3.setText("密码 :");jLabel3.setBounds(new Rectangle(200, 44, 41, 18));password.setBounds(new Rectangle(247, 42, 126, 22));jLabel4.setText("电子邮件 :");jLabel4.setBounds(new Rectangle(2, 97, 58, 18));email.setBounds(new Rectangle(55, 96, 124, 22));jLabel5.setText("头像:");jLabel5.setBounds(new Rectangle(193, 96, 51, 18));//***************ComboBoxModel model = new HeadPicCombobox(pics);ListCellRenderer renderer = new HeadpicCellRenderer();jLabel6.setText("个人资料 : (可不填)");jLabel6.setBounds(new Rectangle(6, 189, 147, 18));info.setBounds(new Rectangle(6, 210, 378, 103));jButton1.setText("确定");jButton1.setBounds(new Rectangle(147, 330, 79, 29));jButton1.addMouseListener(new java.awt.event.MouseAdapter() {public void mouseClicked(MouseEvent e) {jButton1_mouseClicked(e);}});jButton2.setText("取消");jButton2.addMouseListener(new java.awt.event.MouseAdapter() {public void mouseClicked(MouseEvent e) {jButton2_mouseClicked(e);}});jButton2.setBounds(new Rectangle(260, 329, 79, 29));jLabel7.setText("性别 :");jLabel7.setBounds(new Rectangle(7, 159, 41, 18));boy.setText("男");boy.setBounds(new Rectangle(48, 154, 63, 25));girl.setText("女");girl.setBounds(new Rectangle(119, 153, 60, 25));jLabel8.setText("来自:");jLabel8.setBounds(new Rectangle(193, 153, 41, 18));place.setToolTipText("");place.addItem("山东");place.addItem("其他");place.setBounds(new Rectangle(245, 153, 131, 22));headpic.setBounds(new Rectangle(249, 91, 126, 25));headpic.setModel(model);headpic.setRenderer(renderer);this.getContentPane().add(jButton1, null);this.getContentPane().add(panel1, null);panel1.add(jLabel2, null);panel1.add(jLabel1, null);panel1.add(nickname, null);panel1.add(jLabel3, null);panel1.add(password, null);panel1.add(email, null);panel1.add(jLabel5, null);panel1.add(jButton2, null);panel1.add(jLabel6, null);panel1.add(place, null);panel1.add(headpic, null);panel1.add(jLabel4, null);panel1.add(info, null);panel1.add(jLabel8, null);panel1.add(girl, null);panel1.add(boy, null);panel1.add(jLabel7, null);}//---->void jButton1_mouseClicked(MouseEvent e) {try{Socket socket=new Socket(sername,serverport);//连接服务器BufferedReader in=new BufferedReader(new InputStreamReader(socket.getInputStream()));PrintWriter out=new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())),true);String s= InetAddress.getLocalHost().toString() ;int a=s.indexOf("/");String s2=s.substring(a+1,s.length() ) ;out.println("new");out.println(nickname.getText().trim());out.println(password.getPassword());out.println(s2);out.println(email.getText().trim());out.println(info.getText().trim());out.println(place.getSelectedItem());out.println(headpic.getSelectedIndex());int no;no=Integer.parseInt(in.readLine());String str=" ";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();ChatRoom f2=new ChatRoom(no,sername,serverport);f2.setVisible(true);}}catch(Exception e1){}}//<----新建功能实现了。void jButton2_mouseClicked(MouseEvent e) {this.dispose() ;System.exit(0) ;}}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 BorderlineBorder = 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 + -