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.

128 lines
3.5 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. this.anmelden.addKeyListener(this);
  64. passwordField.addActionListener(this);
  65. benutzername.addActionListener(this);
  66. }
  67. @Override
  68. public void actionPerformed(ActionEvent ae) {
  69. if (ae.getSource() == this.anmelden
  70. && (benutzername.getText().length() == 0 || passwordField.getText().length() == 0)) {
  71. JOptionPane.showMessageDialog(anmelden, "Bitte geben Sie die richtigen Daten ein!");
  72. }
  73. if (ae.getSource() == this.anmelden && benutzername.getText().length() > 0
  74. && passwordField.getText().length() > 0) {
  75. MeinGui run = new MeinGui();
  76. run.setVisible(true);
  77. }
  78. }
  79. public static String setBenutzername() {
  80. String result = String.valueOf(benutzername);
  81. return result;
  82. }
  83. public static String setPassword() {
  84. String result = String.valueOf(benutzername);
  85. return result;
  86. }
  87. @Override
  88. public void keyTyped(KeyEvent e) {
  89. if (e.getSource() == this.anmelden) {
  90. MeinGui run = new MeinGui();
  91. run.setVisible(true);
  92. }
  93. }
  94. @Override
  95. public void keyPressed(KeyEvent e) {
  96. // TODO Auto-generated method stub
  97. }
  98. @Override
  99. public void keyReleased(KeyEvent e) {
  100. // TODO Auto-generated method stub
  101. }
  102. }