Guten abend,
bräuchte dringend eine kleine Anfängerunterstützung, da der in eine extra Klasse "outgesourcte" ActionListener einfach nicht tut, was er tun soll. Er soll einfach das erste String Feld des Arrays in die JTextArea schreiben, sobald der Benutzer den Button drückt. Ich bekomme beim Ausführen folgenden Codes:
[HIGHLIGHT="Java"]import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
public class SinnGUI {
public SinnGUI() {
initGUI();
}
public void initGUI() {
ActionBeobachter1 beobachter = new ActionBeobachter1();
JFrame sinnframe = new JFrame ();
//Fenstererzeugung
sinnframe.setSize (800,500);
sinnframe.setLocation (200,100);
// Comonentenerzeugung
JLabel sinnlabel = new JLabel (" Merkprogramm");
JTextArea sinntext = new JTextArea (10,20);
JButton weiter = new JButton ("weiter");
weiter.setActionCommand ("nächstes Zitat");
JPanel sinn1 = new JPanel ();
sinn1.setBackground(Color.ORANGE);
sinn1.add(sinnlabel);
JPanel sinn2 = new JPanel ();
sinn2.setBackground(Color.ORANGE);
sinn2.add (sinntext);
sinnframe.getContentPane().add(BorderLayout.NORTH,sinn1);
sinnframe.getContentPane().add(BorderLayout.CENTER, sinn2);
sinnframe.getContentPane().add(BorderLayout.SOUTH, weiter);
weiter.addActionListener (beobachter);
sinnframe.setVisible (true);
}
public static void main(String args[])
{
SwingUtilities.invokeLater(new Runnable()
{
public void run()
{
new SinnGUI();
}
});
}
}[/HIGHLIGHT]
[HIGHLIGHT="Java"]import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class ActionBeobachter1 implements ActionListener {
JTextArea sinntext;
public void actionPerformed(ActionEvent e){
String [] sinnArray; // Deklaration des Arrays
sinnArray = new String [20]; // Initialisierung des Arrays
sinnArray [0] = "Ein Tag am Meer ist ein Tag am Meer";
sinnArray [1] = "Der Sinn des Lebens ist der Unsinn selbst, Guru Pitka" ;
sinntext.setText( "sinnArray [0] ");
}
}[/HIGHLIGHT]
folgenden Fehler des Java-Editor-Compilers angezeigt:
Ich möchte den ActionListener aber nicht als innere Klasse implementieren, denn das habe ich schon hinbekommen. Würde mich riesig über Eure Hilfe freuen, denn ich versuche schon seit einiger Zeit das Problem alleine zu lösen, bisher erfolglos.
;(
bräuchte dringend eine kleine Anfängerunterstützung, da der in eine extra Klasse "outgesourcte" ActionListener einfach nicht tut, was er tun soll. Er soll einfach das erste String Feld des Arrays in die JTextArea schreiben, sobald der Benutzer den Button drückt. Ich bekomme beim Ausführen folgenden Codes:
[HIGHLIGHT="Java"]import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
public class SinnGUI {
public SinnGUI() {
initGUI();
}
public void initGUI() {
ActionBeobachter1 beobachter = new ActionBeobachter1();
JFrame sinnframe = new JFrame ();
//Fenstererzeugung
sinnframe.setSize (800,500);
sinnframe.setLocation (200,100);
// Comonentenerzeugung
JLabel sinnlabel = new JLabel (" Merkprogramm");
JTextArea sinntext = new JTextArea (10,20);
JButton weiter = new JButton ("weiter");
weiter.setActionCommand ("nächstes Zitat");
JPanel sinn1 = new JPanel ();
sinn1.setBackground(Color.ORANGE);
sinn1.add(sinnlabel);
JPanel sinn2 = new JPanel ();
sinn2.setBackground(Color.ORANGE);
sinn2.add (sinntext);
sinnframe.getContentPane().add(BorderLayout.NORTH,sinn1);
sinnframe.getContentPane().add(BorderLayout.CENTER, sinn2);
sinnframe.getContentPane().add(BorderLayout.SOUTH, weiter);
weiter.addActionListener (beobachter);
sinnframe.setVisible (true);
}
public static void main(String args[])
{
SwingUtilities.invokeLater(new Runnable()
{
public void run()
{
new SinnGUI();
}
});
}
}[/HIGHLIGHT]
[HIGHLIGHT="Java"]import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class ActionBeobachter1 implements ActionListener {
JTextArea sinntext;
public void actionPerformed(ActionEvent e){
String [] sinnArray; // Deklaration des Arrays
sinnArray = new String [20]; // Initialisierung des Arrays
sinnArray [0] = "Ein Tag am Meer ist ein Tag am Meer";
sinnArray [1] = "Der Sinn des Lebens ist der Unsinn selbst, Guru Pitka" ;
sinntext.setText( "sinnArray [0] ");
}
}[/HIGHLIGHT]
folgenden Fehler des Java-Editor-Compilers angezeigt:
Code:
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Ich möchte den ActionListener aber nicht als innere Klasse implementieren, denn das habe ich schon hinbekommen. Würde mich riesig über Eure Hilfe freuen, denn ich versuche schon seit einiger Zeit das Problem alleine zu lösen, bisher erfolglos.
;(
Zuletzt bearbeitet von einem Moderator: