NetBeans - Texte in Textfeld ausgeben
Hallo,
wir programmieren in der Schule gerade mit NedBeans eine GUI, in der man Patienten speichern und ausgeben lassen kann.
Wie kann man nun die eingespeicherten Patienten ausgeben?
Mit jTextField.setText(" ") wird immer der letzte Eintrag überschrieben. Womit kann man aber die Patienten untereinander Ausgeben? Oder muss ich ein anderes Feld (Text Area o.ä.) benutzen?
Vielen Dank im Vorraus, Jonas918.
2 Antworten
Wenn du deine Patienten untereinander schreiben willst, dann ist JTextField nicht die richtige Wahl, da es nur einzeilig ist. Das heißt selbst dieser Code:
jTextField.setText(jTextField.getText() + "\n" + naechsterPatient);
wird dir die Patienten auf einer Zeile ausgeben.
Es gibt verschiedene UI-Elemente, die dein Problem lösen - je nach Anwendungsfall ist dann das eine oder das andere besser.
Es gibt JTextArea. Das ist im Prinzip wie ein JTextField, allerdings lässt es mehrere Zeilen zu. Du kannst auf deine Patienten mit jTextArea.setText() ausgeben.
Es gibt JList. Darin werden Einträge angezeigt, die der Benutzer hinterher einzeln markieren kann, um so z.B. einen Eintrag zu ändern. Es ist für Arrays und Listen gut einsetzbar, da es im Konstruktor ein Array mit den anzuzeigenden Einträgen akzeptiert.
Was meinst du mit 'ausgeben'?
System.out.println();
?
Ein JTextField ist einzeilig. Da müsstest du auf eine JTextArea o.ä. zurückgreifen.
Wenn ich auf "Ausgeben" drücke, soll der Patient in einem Textfeld ausgegeben werden.
Wie schaffe ich, dass der vorherige Eintrag bei wiederholtem drücken des Buttons "Ausgeben" nicht verschwindet, sondern der nächste Patient da drunter aufgeführt wird.