Hi,
hab vor ein paar Tagen mit Java angefangen und schon eine Frage.
Ich habe eine GUI geschrieben, in der ich SWING nutze.
Nun habe ich auch eine TextBox geschrieben:
Diese TextBox habe ich an meine GUI gefügt:
Einen Teil weiter unten habe ich dann auch einen Action Listener implementiert:
Mit folgenden Code füge ich einen Button den ActionListener hinzu:
Nun möchte ich, dass wenn man auf diesen Butten klickt, die Zahl / der String aus der oben genannten TextBox ausgelesen wird, also:
Leider geht aber nicht folgender Code:
Da man aus den ActionListener nicht auf die Steuerelemente der "public static void main( String[] args )" zugreifen kann.
Also meine Frage ist, wie ich aus den ActionListener auf ein Steuerelement in der Main-Funktion meines Programmes zugreifen kann.
Vielen vielen Dank für all euere Antworten :wink:
edit: Kompletter Sourcecode:
hab vor ein paar Tagen mit Java angefangen und schon eine Frage.
Ich habe eine GUI geschrieben, in der ich SWING nutze.
Nun habe ich auch eine TextBox geschrieben:
Code:
JTextField Zahl_01 = new JTextField(" Zahl_001 ");
Diese TextBox habe ich an meine GUI gefügt:
Code:
taschenrechner.add( Zahl_01, BorderLayout.LINE_START );
Einen Teil weiter unten habe ich dann auch einen Action Listener implementiert:
Code:
ActionListener Calculate = new ActionListener() {
public void actionPerformed( ActionEvent e ) {
}
};
Mit folgenden Code füge ich einen Button den ActionListener hinzu:
Code:
Ausrechnen.addActionListener(Calculate);
Nun möchte ich, dass wenn man auf diesen Butten klickt, die Zahl / der String aus der oben genannten TextBox ausgelesen wird, also:
Code:
Zahl_001.getText();
Leider geht aber nicht folgender Code:
Code:
ActionListener Calculate = new ActionListener() {
public void actionPerformed( ActionEvent e ) {
Zahl_001.getText();
}
};
Da man aus den ActionListener nicht auf die Steuerelemente der "public static void main( String[] args )" zugreifen kann.
Also meine Frage ist, wie ich aus den ActionListener auf ein Steuerelement in der Main-Funktion meines Programmes zugreifen kann.
Vielen vielen Dank für all euere Antworten :wink:
edit: Kompletter Sourcecode:
Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Taschenrechner extends JFrame
{
//Globale Variablen
String scripter = "Stevi's "; String appname = "Math "; double appversion = 1.000;
//GUI-Klasse
public Taschenrechner()
{
setVisible(true);
setResizable(false);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setTitle(scripter + appname + appversion);
Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
setLocation( (d.width - getSize().width ) / 2,
(d.height - getSize().height) / 2 );
}
public static void main( String[] args )
{
//Instanz von Taschenrechner erzeugen
Taschenrechner taschenrechner = new Taschenrechner();
//Steuerelemente erzeugen
JButton Ausrechnen = new JButton("Ausrechnen");
JTextField Zahl_01 = new JTextField(" Zahl_001 ");
JTextField Zahl_02 = new JTextField(" Zahl_002 ");
JButton Beenden = new JButton("Beenden");
//Steuerelemente anordnen
taschenrechner.setLayout( new BorderLayout(5, 5) );
taschenrechner.add( Ausrechnen, BorderLayout.PAGE_START );
taschenrechner.add( Zahl_02, BorderLayout.LINE_END );
taschenrechner.add( Beenden, BorderLayout.PAGE_END );
taschenrechner.add( Zahl_01, BorderLayout.LINE_START );
//Steuerelment erzeugen
JComboBox choice = new JComboBox();
choice.addItem("+");
choice.addItem("-");
choice.addItem("*");
choice.addItem("/");
//Steuerelement anordnen
taschenrechner.add(choice);
//ActionListener erzeugen
ActionListener End = new ActionListener() {
public void actionPerformed( ActionEvent e ) {
System.exit( 0 );
}
};
//ActionListener erzeugen
ActionListener Calculate = new ActionListener() {
public void actionPerformed( ActionEvent e ) {
System.out.println("sdf"); //<--- FEHLER
}
};
//ActionListener hinzufügen
Beenden.addActionListener(End);
Ausrechnen.addActionListener(Calculate);
//GUI verkleinern
taschenrechner.pack();
}
}