Ich habe ein kleines Problem. Und zwar weiß ich nicht wie ich etwas Bestimmtes in meinen Code schreiben kann. Dieses kleine Problem, lautet wie folgt:
Ich habe ein Frame in dem zwei JPasswortField's drinnen sind und ein Button um weiter zu kommen. So, jetzt möchte ich aber in den Code schreiben, wenn der Benutzer, den richtigen Benutzernamen eingibt und das richtige Passwort, und auf den 'Weiter' Button klickt, dass ein neues JFrame erscheint.
Und dasselbe auch, wenn die Felder falsch sind, das ebenso ein Frame erscheint.
Code 1:
Code 2 (Der Listener):
Ich habe ein Frame in dem zwei JPasswortField's drinnen sind und ein Button um weiter zu kommen. So, jetzt möchte ich aber in den Code schreiben, wenn der Benutzer, den richtigen Benutzernamen eingibt und das richtige Passwort, und auf den 'Weiter' Button klickt, dass ein neues JFrame erscheint.
Und dasselbe auch, wenn die Felder falsch sind, das ebenso ein Frame erscheint.
Code 1:
Java:
import java.awt.*;
import javax.swing.*;
import javax.swing.border.EmptyBorder;
@SuppressWarnings("serial")
public class Authenticator extends JFrame {
private JPanel contentPane;
private JPasswordField benutzernameFeld;
private JPasswordField passwortFeld;
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Authenticator frame = new Authenticator();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public Authenticator() {
setTitle("Authenticator");
setBackground(Color.GRAY);
setResizable(false);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
contentPane = new JPanel();
contentPane.setBackground(Color.GRAY);
contentPane.setForeground(Color.WHITE);
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JLabel lblBenutzername = new JLabel("Benutzername:");
lblBenutzername.setForeground(Color.BLACK);
lblBenutzername.setBounds(92, 103, 107, 14);
contentPane.add(lblBenutzername);
JLabel lblPasswort = new JLabel("Passwort:");
lblPasswort.setForeground(Color.BLACK);
lblPasswort.setBackground(Color.BLACK);
lblPasswort.setBounds(119, 134, 107, 14);
contentPane.add(lblPasswort);
JButton button1 = new JButton("Weiter");
button1.setToolTipText("Weiter");
button1.setVerticalAlignment(SwingConstants.BOTTOM);
button1.setBackground(Color.GRAY);
button1.setForeground(Color.BLACK);
button1.setBounds(185, 228, 89, 23);
contentPane.add(button1);
button1.addActionListener(new Listener(button1));
benutzernameFeld = new JPasswordField();
benutzernameFeld.setBackground(UIManager.getColor("Button.highlight"));
benutzernameFeld.setForeground(Color.BLACK);
benutzernameFeld.setBounds(185, 100, 121, 20);
contentPane.add(benutzernameFeld);
passwortFeld = new JPasswordField();
passwortFeld.setForeground(Color.BLACK);
passwortFeld.setBackground(Color.WHITE);
passwortFeld.setBounds(185, 131, 121, 20);
contentPane.add(passwortFeld);
}
}
Code 2 (Der Listener):
Java:
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.net.Authenticator;
import java.net.PasswordAuthentication;
import javax.swing.*;
import javax.swing.text.PasswordView;
public class Listener implements ActionListener{
JButton button1;
Listener(JButton button1){
this.button1 = button1;
}
@Override
public void actionPerformed(ActionEvent button1){
JFrame frame;
frame = new JFrame();
frame.setSize(500, 400);
frame.setTitle("Welcome");
frame.setBackground(Color.GRAY);
frame.setLocationRelativeTo(null);
JLabel label = new JLabel("Welcome", SwingConstants.CENTER);
frame.add(label);
label.setBackground(Color.GRAY.darker());
frame.setVisible(true);
}
}