You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

141 lines
3.9 KiB

  1. package MeinBudgetView;
  2. import java.awt.BorderLayout;
  3. import java.awt.EventQueue;
  4. import java.awt.Font;
  5. import java.awt.Image;
  6. import java.awt.event.ActionEvent;
  7. import java.awt.event.ActionListener;
  8. import java.awt.event.KeyEvent;
  9. import java.awt.event.KeyListener;
  10. import javax.swing.JFrame;
  11. import javax.swing.JPanel;
  12. import javax.swing.border.EmptyBorder;
  13. import javax.swing.ImageIcon;
  14. import javax.swing.JButton;
  15. import javax.swing.JPasswordField;
  16. import javax.swing.JTextField;
  17. import javax.swing.JLabel;
  18. import javax.swing.JOptionPane;
  19. import java.awt.Color;
  20. public class LoginFrame extends JFrame implements ActionListener, KeyListener {
  21. public JPanel contentPane;
  22. public static JPasswordField passwordField;
  23. public static JTextField benutzername;
  24. public JButton anmelden;
  25. public LoginFrame() {
  26. setTitle("Anmelden");
  27. setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  28. setBounds(100, 100, 450, 300);
  29. contentPane = new JPanel();
  30. contentPane.setBackground(Color.orange);
  31. contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
  32. setContentPane(contentPane);
  33. contentPane.setLayout(null);
  34. anmelden = new JButton("Anmelden");
  35. anmelden.setBounds(182, 168, 97, 23);
  36. contentPane.add(anmelden);
  37. passwordField = new JPasswordField();
  38. passwordField.setBounds(147, 137, 132, 20);
  39. contentPane.add(passwordField);
  40. benutzername = new JTextField();
  41. benutzername.setBounds(147, 106, 132, 20);
  42. contentPane.add(benutzername);
  43. benutzername.setColumns(10);
  44. JLabel labaelBenutzername = new JLabel("Benutzername:");
  45. labaelBenutzername.setBounds(48, 106, 89, 20);
  46. contentPane.add(labaelBenutzername);
  47. JLabel labelPassword = new JLabel("Password: ");
  48. labelPassword.setBounds(61, 140, 76, 14);
  49. contentPane.add(labelPassword);
  50. JLabel loginImage = new JLabel("");
  51. loginImage.setBounds(313, 106, 56, 51);
  52. Image image1 = new ImageIcon(this.getClass().getResource("/login-icon.png")).getImage();
  53. loginImage.setIcon(new ImageIcon(image1));
  54. loginImage.setFont(new Font("Tahoma", Font.BOLD, 13));
  55. contentPane.add(loginImage);
  56. JLabel loginHauptImage = new JLabel("");
  57. loginHauptImage.setBounds(10, 11, 56, 51);
  58. Image image2 = new ImageIcon(this.getClass().getResource("/budgetapp.png")).getImage();
  59. loginHauptImage.setIcon(new ImageIcon(image2));
  60. loginHauptImage.setFont(new Font("Tahoma", Font.BOLD, 13));
  61. contentPane.add(loginHauptImage);
  62. this.anmelden.addActionListener(this);
  63. passwordField.addActionListener(this);
  64. benutzername.addActionListener(this);
  65. this.anmelden.addKeyListener(this);
  66. benutzername.addKeyListener(this);
  67. passwordField.addKeyListener(this);
  68. }
  69. @Override
  70. public void actionPerformed(ActionEvent ae) {
  71. if (ae.getSource() == this.anmelden
  72. && (benutzername.getText().length() == 0 || passwordField.getText().length() == 0)) {
  73. JOptionPane.showMessageDialog(anmelden, "Bitte geben Sie die richtigen Daten ein!");
  74. }
  75. if (ae.getSource() == this.anmelden && benutzername.getText().length() > 0
  76. && passwordField.getText().length() > 0) {
  77. MeinGui run = new MeinGui();
  78. run.setVisible(true);
  79. }
  80. }
  81. public static String setBenutzername() {
  82. String result = String.valueOf(benutzername);
  83. return result;
  84. }
  85. public static String setPassword() {
  86. String result = String.valueOf(benutzername);
  87. return result;
  88. }
  89. @Override
  90. public void keyTyped(KeyEvent e) {
  91. // TODO Auto-generated method stub
  92. }
  93. @Override
  94. public void keyPressed(KeyEvent e) {
  95. if (e.getKeyCode() == KeyEvent.VK_ENTER) {
  96. if (benutzername.getText().length() > 0 && passwordField.getText().length() > 0) {
  97. MeinGui run = new MeinGui();
  98. run.setVisible(true);
  99. } else {
  100. JOptionPane.showMessageDialog(this.anmelden, "Bitte geben Sie die richtigen Daten ein!");
  101. }
  102. }
  103. if (e.getKeyCode() == KeyEvent.VK_F5) {
  104. System.exit(0);
  105. }
  106. }
  107. @Override
  108. public void keyReleased(KeyEvent e) {
  109. // TODO Auto-generated method stub
  110. }
  111. public static String benutzernameLeeren() {
  112. return "";
  113. }
  114. }