ModestGenius

LoginWindow

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