Hey, ich habe erst mit Java angefangen und versuche gerade ein eigenes GUI zu erstellen, mit dem ich den Umfang und die Fläche eines Rechtecks ausrechnen kann. Irgendwie weiß ich nicht genau wie ich das machen soll, da ich auch mit den TextFields nicht weiter kommen, da ich nicht genau weiß wie man dann darauf zugreifen und im Anschluss auch damit rechnen kann.
Also ich möchte in meinem JFrame, also in dem Panel 3 Label. Einmal das man die kurze seite angeben soll - dahinter dann ein TextField, dann das man die lange Seite angeben soll - wieder ein Textfield, und dann als letztes noch um die Maßeinheit anzugeben - wieder ein TextField. Ich versteh nun aber nicht wie ich auf die Textfields zugreifen kann, um mit ihnen zu rechnen. Hoffentlich hat jetzt jemand meine Frage verstanden und kann mir helfen. Danke!
Nun ja ein JTextField hat eine Methode die getText() heißt. Diese liefert dir den Text des Textfeldes als String zurück. Mittels Integer.parseInt(String s) (für int) oder Double.parseDouble(String s) (für doubles) kannst du dann die Eingabe in eine Zahl umwandeln. (je nach dem ob du nur mit Ganzzahlen rechnen möchtest oder auch mit Kommazahlen).
Mit den umgewandelten Zahlen kannst du dann ganz normal rechnen.
import javax.swing.*;
import java.awt.event.*;
public class Gui implements ActionListener
{
JFrame fenster = new JFrame ();
JPanel mPanel = new JPanel ();
JLabel mLabel = new JLabel ("Bitte geben sie die kurze Seite ein: ");
JLabel nLabel = new JLabel (" Bitte geben sie die lange Seite ein: ");
JLabel oLabel = new JLabel (" Bitte geben sie die Einheit ein: ");
JTextField mTextField = new JTextField (eingabe);
JTextField nTextField = new JTextField (eingabe);
JTextField oTextField = new JTextField (eingabe);
JButton mButton = new JButton ("ok");
public static void main (String [] args) {
new Gui ();
}
Gui () {
Du willst in deiner Klasse Gui ja mit der Klasse RectangleCalculation rechnen. Deshalb brauchst du in der GUI Klasse auch eine Instanz deiner RectangleCalculation Klasse, damit du auf die dort implementierten Methoden zugreifen kannst.
Jetzt musst du deiner RectangleCalculation Klasse noch Methoden hinzufügen wie zum Beispiel eine public double add(double d1, double d2) Methode. Diese führt dann die Berechnung durch und gibt das Ergebnis zurück.
Danach sagst du in deinem ActionListener, dass sobald der Button gedrückt wurde du dir den Inhalt aus den beiden Textfeldern holst und diese in Double Zahlen umwandelst. Bspw. so: