Guest User

Untitled

a guest
May 19th, 2017
31
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.88 KB | None | 0 0
  1. import java.io.*;
  2. import java.util.*;
  3. import java.awt.FlowLayout;
  4. import java.awt.event.ActionEvent;
  5. import java.awt.event.ActionListener;
  6.  
  7. import javax.swing.JButton;
  8. import javax.swing.JFrame;
  9. import javax.swing.JLabel;
  10. import javax.swing.JPanel;
  11. import javax.swing.JOptionPane;
  12. import javax.swing.JPasswordField;
  13. import javax.swing.JTextField;
  14.  
  15. @SuppressWarnings("serial")
  16. public class Bank extends JFrame {
  17. private JTextField usernameField;
  18. private JButton register;
  19. private JButton login;
  20. private JLabel loginMessage;
  21. private JPasswordField passwordField;
  22. private JButton registerEnter;
  23. private JButton loginEnter;
  24. private JLabel invalidUserPass;
  25. private JLabel welcome;
  26. private List<Account> directory;
  27.  
  28. public Bank() {
  29. super("Banking Simulation");
  30. setLayout(new FlowLayout());
  31. directory = new ArrayList<>();
  32.  
  33. loginMessage = new JLabel();
  34. loginMessage.setText("Choose a username (enter on the left) and a password (enter on the right)");
  35. loginMessage.setVisible(false);
  36. add(loginMessage);
  37.  
  38. register = new JButton();
  39. register.setText("Click here to register an account");
  40. //button1.setToolTipText("This is a button!");
  41. register.setSize(200, 200);
  42. add(register);
  43.  
  44. login = new JButton();
  45. login.setText("Click here to log in");
  46. //button2.setToolTipText("This is a button!");
  47. login.setSize(200, 200);
  48. add(login);
  49.  
  50. usernameField = new JTextField("(Username): ");
  51. usernameField.setVisible(false);
  52. add(usernameField);
  53.  
  54. passwordField = new JPasswordField("mypass ");
  55. passwordField.setVisible(false);
  56. add(passwordField);
  57.  
  58. registerEnter = new JButton();
  59. registerEnter.setText("Enter");
  60. registerEnter.setVisible(false);
  61. add(registerEnter);
  62.  
  63. loginEnter = new JButton();
  64. loginEnter.setText("Enter");
  65. loginEnter.setVisible(false);
  66. add(loginEnter);
  67.  
  68. invalidUserPass = new JLabel();
  69. invalidUserPass.setText("Invalid User/Pass");
  70. invalidUserPass.setVisible(false);
  71. add(invalidUserPass);
  72.  
  73. welcome = new JLabel();
  74. welcome.setText("");
  75. welcome.setVisible(false);
  76. add(welcome);
  77.  
  78. thehandler handler = new thehandler();
  79. usernameField.addActionListener(handler);
  80. passwordField.addActionListener(handler);
  81.  
  82. register.addActionListener(new ActionListener() {
  83.  
  84. public void actionPerformed(ActionEvent event) {
  85. register.setVisible(false);
  86. login.setVisible(false);
  87. usernameField.setVisible(true);
  88. passwordField.setVisible(true);
  89. loginMessage.setVisible(true);
  90. registerEnter.setVisible(true);
  91. }
  92.  
  93. });
  94.  
  95. registerEnter.addActionListener(new ActionListener() {
  96.  
  97. public void actionPerformed(ActionEvent event) {
  98. KeyPairGeneration kp = new KeyPairGeneration();
  99. directory.add(new Account(usernameField.getText(), passwordField.getPassword(), kp.generatePublicKeys(), kp.generatePrivateKeys()));
  100. register.setVisible(true);
  101. login.setVisible(true);
  102. usernameField.setVisible(false);
  103. passwordField.setVisible(false);
  104. loginMessage.setVisible(false);
  105. registerEnter.setVisible(false);
  106. }
  107. });
  108.  
  109. login.addActionListener(new ActionListener() {
  110.  
  111. public void actionPerformed(ActionEvent event) {
  112. register.setVisible(false);
  113. login.setVisible(false);
  114. loginMessage.setText("Enter your username (on the left) and your password (on the right)");
  115. usernameField.setText("(Username): ");
  116. usernameField.setVisible(true);
  117. passwordField.setText("mypass ");
  118. passwordField.setVisible(true);
  119. loginMessage.setVisible(true);
  120. loginEnter.setVisible(true);
  121. }
  122.  
  123. });
  124.  
  125. loginEnter.addActionListener(new ActionListener() {
  126.  
  127. public void actionPerformed(ActionEvent event) {
  128. String user = usernameField.getText();
  129. char[] pass = passwordField.getPassword();
  130. Account client;
  131. boolean exists = false;
  132. for (Account a : directory)
  133. {
  134. if (user.equals(a.getUser()) && pass.equals(a.getPass()));
  135. {
  136. client = a;
  137. usernameField.setVisible(false);
  138. passwordField.setVisible(false);
  139. loginMessage.setVisible(false);
  140. loginEnter.setVisible(false);
  141. invalidUserPass.setVisible(false);
  142. welcome.setText("Welcome " + client.getUser() + "!");
  143. welcome.setVisible(true);
  144. exists = true;
  145. break;
  146. }
  147. }
  148. if (!exists)
  149. {
  150. invalidUserPass.setVisible(true);
  151. }
  152.  
  153. }
  154. });
  155.  
  156. }
  157.  
  158. private class thehandler implements ActionListener {
  159. public void actionPerformed(ActionEvent event) {
  160. String string = "";
  161.  
  162. if(event.getSource() == usernameField) {
  163. string = String.format("field 1: %s", event.getActionCommand());
  164. }
  165. else if(event.getSource() == passwordField){
  166. string = String.format("password field is: %s", event.getActionCommand());
  167. }
  168.  
  169. JOptionPane.showMessageDialog(null, string);
  170. }
  171. }
  172.  
  173. }
Add Comment
Please, Sign In to add comment