Ich bin ein blutiger Anfänger. Ich möchte einen Login-Bildschirm, aber ich stoßen einen Compiler-Fehler:Java - wie bekomme ich den Text von TextField
package passwordmanager;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
@SuppressWarnings("serial")
public class Frame extends JFrame
{
JLabel username;
JLabel password;
JTextField user;
JPasswordField pass;
JButton login;
public Frame()
{
//Frame
setLayout(null);
setLocationRelativeTo(null);
setResizable(false);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setSize(425, 300);
setVisible(true);
setTitle("Password-Login");
//Label 1
username = new JLabel("Benutzernahme:");
username.setBounds(16, 50, 500, 15);
//Font
Font font1 = new Font("", Font.BOLD, 13);
username.setFont(font1);
add(username);
//Label2
password = new JLabel("Passwort:");
password.setBounds(16, 134, 200, 20);
password.setFont(font1);
add(password);
//TextField
user = new JTextField();
user.setBounds(16, 76, 350, 30);
user.setVisible(true);
add(user);
//PasswordField
pass = new JPasswordField();
pass.setBounds(16, 160, 350, 30);
pass.setVisible(true);
add(pass);
//Button
login = new JButton();
login.setBounds(0, 0, 5, 5);
add(login);
}
String myusername = user.getText();
String mypassword = new String(pass.getPassword());
public class Listener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
if(myusername.equalsIgnoreCase("whatever") && mypassword.equalsIgnoreCase("whatever"))
{
System.out.println("NICE");
}
}
}
}
Eclipse-sagt, dass diese Zeichenfolge
String myusername = user.getText();
falsch ist. Weißt du, wie ich das beheben kann?
Vielen Dank im Voraus :)
Bitte senden Sie die ‚blutige‘ Fehlermeldung in voller Höhe;) –
Sie versuchen, die Werte außerhalb der Methode oder Funktion (Accessoren) zu erhalten, die ungültig ist, tut es in Verfahren oder in Konstruktor ... – RohitS
Wenn der Code in Zukunft nicht kompiliert wird und Sie danach fragen, geben Sie den vollständigen Kompilierungsfehler in Ihre Frage selbst ein. Es ist eigentlich ziemlich wichtig. Noch besser - zuerst diese Website auf der Fehlermeldung als wahrscheinlich die Frage wurde zuvor gefragt (wie diese Frage hat, mindestens 10.000 mal). –