ModestGenius

RegistrationWindow

Mar 10th, 2016
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.28 KB | None | 0 0
  1. package com.company;
  2.  
  3. import javax.swing.*;
  4. import javax.swing.border.EmptyBorder;
  5. import java.awt.event.*;
  6. import java.sql.ResultSet;
  7. import java.sql.SQLException;
  8.  
  9. import static com.company.ConnectionWithDB.connect;
  10.  
  11. /**
  12.  * Created by Максим on 05.03.2016.
  13.  */
  14. public class RegistrationWindow extends JFrame {
  15.     JTextField loginField;
  16.     JPasswordField passwordField;
  17.  
  18.     RegistrationWindow()
  19.     {
  20.         super("Регистрация");
  21.         setDefaultCloseOperation(EXIT_ON_CLOSE);
  22.  
  23. // Настраиваем первую горизонтальную панель (для ввода логина)
  24.         Box box1 = Box.createHorizontalBox();
  25.         JLabel loginLabel = new JLabel("Логин:");
  26.         loginField = new JTextField(15);
  27.         loginField.addKeyListener(new KeyListener() {
  28.             @Override
  29.             public void keyTyped(KeyEvent e) {}
  30.             @Override
  31.             public void keyReleased(KeyEvent e) {}
  32.             public void keyPressed(KeyEvent event) {
  33.                 if (event.getKeyCode()==KeyEvent.VK_ESCAPE)
  34.                     loginField.setText("");
  35.             }
  36.         });
  37.         box1.add(loginLabel);
  38.         box1.add(Box.createHorizontalStrut(6));
  39.         box1.add(loginField);
  40. // Настраиваем вторую горизонтальную панель (для ввода пароля)
  41.         Box box2 = Box.createHorizontalBox();
  42.         JLabel passwordLabel = new JLabel("Пароль:");
  43.         passwordField = new JPasswordField(15);
  44.         box2.add(passwordLabel);
  45.         box2.add(Box.createHorizontalStrut(6));
  46.         box2.add(passwordField);
  47. // Настраиваем третью горизонтальную панель (с кнопками)
  48.         Box box3 = Box.createHorizontalBox();
  49.         JButton reg = new JButton("Зарегистрироваться");
  50.         reg.addMouseListener(new MouseAdapter() {
  51.             @Override
  52.             public void mouseClicked(MouseEvent e) {
  53.                 ResultSet rs = null;
  54.                 Boolean k = false;
  55.                 try {
  56.                     rs = connect();
  57.                     while (rs.next())
  58.                         if(loginField.getText().equals(rs.getString("login")))
  59.                             k=true;
  60.                     if(k==false)
  61.                     {
  62.                         connect(loginField.getText(),passwordField.getText());
  63.                         JOptionPane.showMessageDialog(null, "Здравствуйте, "+loginField.getText()+". Регистрация прошла успешно!");
  64.                         LoginWindow loginWindow = new LoginWindow();
  65.                         loginWindow.loginField.setText(loginField.getText());
  66.                        loginWindow.passwordField.setText(passwordField.getText());
  67.                        loginWindow.setVisible(true);
  68.                         dispose();
  69.                     }
  70.                     else {
  71.                         JOptionPane.showMessageDialog(null, "Данный логин уже занят");
  72.                     }
  73.  
  74.  
  75.                 } catch (SQLException e1) {
  76.                     e1.printStackTrace();
  77.                 }
  78.  
  79.  
  80.             }
  81.         });
  82.         JButton cancel = new JButton("Отмена");
  83.         cancel.addMouseListener(new MouseAdapter(){
  84.             public void mouseClicked(MouseEvent e) {
  85.                 dispose();
  86.                 LoginWindow loginWindow = new LoginWindow();
  87.                 loginWindow.setVisible(true);
  88.             }
  89.         });
  90.  
  91.         box3.add(Box.createHorizontalGlue());
  92.         box3.add(reg);
  93.         box3.add(Box.createHorizontalStrut(12));
  94.         box3.add(cancel);
  95. // Уточняем размеры компонентов
  96.         loginLabel.setPreferredSize(passwordLabel.getPreferredSize());
  97. // Размещаем три горизонтальные панели на одной вертикальной
  98.         Box mainBox = Box.createVerticalBox();
  99.         mainBox.setBorder(new EmptyBorder(12,12,12,12));
  100.         mainBox.add(box1);
  101.         mainBox.add(Box.createVerticalStrut(12));
  102.         mainBox.add(box2);
  103.         mainBox.add(Box.createVerticalStrut(17));
  104.         mainBox.add(box3);
  105.         setContentPane(mainBox);
  106.         pack();
  107.         setResizable(false);
  108.  
  109.     }
  110. }
Advertisement
Add Comment
Please, Sign In to add comment