Hallo,
ich habe ein Programm, in dem das Hauptprogramm ein ganz normales Fenster öffnet und dann sieht man eine Liste. Der Code des Fenster sund die Liste sind in einer anderen Klasse. Wenn ich das Programm starte, sieht man das Fenster, doch man erhält keine entsprechende Meldung, wenn man eine der Antworten anklickt
(Ich glaube, irgendwas ist nicht richtig "verbunden", weil es in einem einzigen Programm funktioniert.)
und das Fenster in der anderen Klasse:
Danke für jede hilfreiche Antwort :toll:
ich habe ein Programm, in dem das Hauptprogramm ein ganz normales Fenster öffnet und dann sieht man eine Liste. Der Code des Fenster sund die Liste sind in einer anderen Klasse. Wenn ich das Programm starte, sieht man das Fenster, doch man erhält keine entsprechende Meldung, wenn man eine der Antworten anklickt
(Ich glaube, irgendwas ist nicht richtig "verbunden", weil es in einem einzigen Programm funktioniert.)
Java:
package Packet1;
import javax.swing.JFrame;
public class HalloFenster {
public static void main(String[] args) {
Liste fenster = new Liste ();
fenster.setSize (400,250);
fenster.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
fenster.setVisible(true);
}
}
und das Fenster in der anderen Klasse:
Java:
package Packet1;
import java.awt.event.*;
import java.awt.event.ActionListener;
import java.awt.*;
import javax.swing.*;
public class Liste extends JFrame implements ActionListener {
private JComboBox liste;
private String[] antwort = {"Gut", "Schlecht", "Mäßig", "Gar nicht gut!"Sag ich nicht.", "Wundervoll"};
private String[] diagnose = {"Das freut mich!", "Das tut mir leid!", "OK, dann ist ja alles gut.", "Oh das ist aber blöd...", "Ja? OK!", "Toll!"};
public Liste () {
super ("Hallo, wie geht´s so?");
JPanel platte = new JPanel ();
platte.setLayout (new FlowLayout());
liste = new JComboBox(antwort);
liste.addActionListener (this);
platte.add (liste);
setContentPane (platte);
}
public void actionPerformed (ActionEvent ereignis){
Object quelle = ereignis.getSource();
if (quelle == liste){
return;
}
for (int i = 0; i < 6; i++){
if (liste.getSelectedIndex() == i){
JOptionPane.showMessageDialog (null, diagnose[i]);
}
}
}
}
Danke für jede hilfreiche Antwort :toll: