Habe eine GUI geschrieben in welcher man eine bestimmte Zahl von Arrayfeldern
eingibt, danach soll man für diese Felder die Zahlen eingeben.
Die Eingabe der Felder ist aber endlos möglich.
Ich habe keine Ahnung wieso.
Bitte um Hilfe.
anbei der Code:
eingibt, danach soll man für diese Felder die Zahlen eingeben.
Die Eingabe der Felder ist aber endlos möglich.
Ich habe keine Ahnung wieso.
Bitte um Hilfe.
anbei der Code:
Java:
public class Array_ein {
int AnzahlZahlen;
int ZahlenZähler = 1;
int ZahlenEingabe;
int anz;
final JTextField textfeld1 = new JTextField();
final JTextField textfeld2 = new JTextField();
JFrame f1 = new JFrame ("Zahleneingabe");
JLabel noten_label = new JLabel();
JButton ende_button = new JButton("Ende");
JLabel info_label = new JLabel();
JLabel eingegebene_zahlen_label = new JLabel("Eingegebene Zahlen: ");
JLabel ausgabe_array_label = new JLabel();
public static void main(String[] args) {
Array_ein start = new Array_ein();
start.fenster();
}
public void fenster(){
f1.setSize(500,300);
f1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f1.setResizable(false);
f1.setLayout(null);
f1.setLocation(600,350);
JLabel anzahl_zahlen_label = new JLabel("Anzahl Zahlen");
anzahl_zahlen_label.setBounds(24,10,140,10);
f1.add(anzahl_zahlen_label);
textfeld1.setBounds(24,25,40,25);
f1.add(textfeld1);
textfeld2.setBounds(24,75,40,25);
f1.add(textfeld2);
textfeld2.setVisible(false);
ausgabe_array_label.setBounds(145,110,300,20);
f1.add(ausgabe_array_label);
ausgabe_array_label.setVisible(false);
eingegebene_zahlen_label.setBounds(24,110,120,20);
f1.add(eingegebene_zahlen_label);
eingegebene_zahlen_label.setVisible(false);
noten_label.setBounds(26,55,60,20);
noten_label.setText(Integer.toString(ZahlenZähler) + " . Zahl");
noten_label.setVisible(false);
f1.add(noten_label);
f1.setVisible(true);
textfeld1.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent e) {
ENTERkeypressed (e); }
});
textfeld2.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent e) {
ENTERkeypressed2 (e); }
});
} // ENDE GUI
private void ENTERkeypressed (KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_ENTER) {
arrayanzahl();
} }
private void ENTERkeypressed2 (KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_ENTER) {
array_erzeugen();
} }
public void arrayanzahl(){
AnzahlZahlen = Integer.parseInt(textfeld1.getText());
textfeld1.setEditable(false);
noten_label.setVisible(true);
textfeld2.setVisible(true);
textfeld2.requestFocus();
textfeld2.selectAll();
}
public void array_erzeugen(){
eingegebene_zahlen_label.setVisible(true);
ausgabe_array_label.setVisible(true);
int Feld = 0;
int Eingabe;
int [] Zahlenfeld = new int [AnzahlZahlen];
for (Feld = 0 ; Feld < AnzahlZahlen ; Feld++ ) {
Eingabe = Integer.parseInt(textfeld2.getText());
Zahlenfeld [Feld] = Eingabe;
ausgabe_array_label.setText(ausgabe_array_label.getText() + Zahlenfeld [Feld] + " ");
textfeld2.setText(""); }
textfeld2.setEditable(false);
textfeld2.setFocusable(false); }
} // Programmende