Hallo Zusammen,
bisher konnte ich alle meine Probleme mit Hilfe vom Forum lösen, doch jetzt muss ich euch doch mal persönlich fragen...
Folgendes:
Ich möchte aus einer Klasse (Unterklasse) einen Wert in ein Textfeld eines JFrame (Fenster) schreiben.
Meine Unterklasse wird durch einen Button aus Fenster aufgerufen und soll dann einen Wert in einen JTextField im Fenster eintragen. Damit ich nicht meinen ganzen bisherigen Code hier eintrage, hab ich das Problem mal in einem separaten Projekt dargestellt:
Unterklasse:
und mein JFrame Fenster
Die setMethode gibt den String richtig in der Konsole aus, jedoch zeigt er diesen nicht im Textfeld an...
Ich bin leider völlig ratlos, wie es richtig funktionieren könnte...
Vielen Dank schonmal an eure Mithilfe.
Gruß Alexander
bisher konnte ich alle meine Probleme mit Hilfe vom Forum lösen, doch jetzt muss ich euch doch mal persönlich fragen...
Folgendes:
Ich möchte aus einer Klasse (Unterklasse) einen Wert in ein Textfeld eines JFrame (Fenster) schreiben.
Meine Unterklasse wird durch einen Button aus Fenster aufgerufen und soll dann einen Wert in einen JTextField im Fenster eintragen. Damit ich nicht meinen ganzen bisherigen Code hier eintrage, hab ich das Problem mal in einem separaten Projekt dargestellt:
Unterklasse:
Java:
public class Unterklasse extends Fenster
{
public Unterklasse()
{
Fenster.setMethode("hallo, schreib das ins TextFeld");
}
}
und mein JFrame Fenster
Java:
import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JButton;
import javax.swing.JTextField;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
public class Fenster extends JFrame {
private JPanel contentPane;
private static JTextField txtTest = new JTextField();
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Fenster frame = new Fenster();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public Fenster() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JButton btnAusfhren = new JButton("Ausf\u00FChren");
btnAusfhren.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
new Unterklasse ("hallo, schreib das ins TextFeld");
}
});
btnAusfhren.setBounds(297, 102, 89, 23);
contentPane.add(btnAusfhren);
txtTest.setBounds(33, 103, 161, 20);
contentPane.add(txtTest);
txtTest.setColumns(10);
}
public static void setMethode (String Text)
{
System.out.println("Im Text steht: "+Text);
txtTest.setText(Text);
}
}
Die setMethode gibt den String richtig in der Konsole aus, jedoch zeigt er diesen nicht im Textfeld an...
Ich bin leider völlig ratlos, wie es richtig funktionieren könnte...
Vielen Dank schonmal an eure Mithilfe.
Gruß Alexander