WindowClosingAdapter

Status
Nicht offen für weitere Antworten.

Mythos

Mitglied
Hi,

erstmal ein Hallo an die Java-Communiyt :D

Ich habe mir das "Handbuch der Java Programmirung" zum Nachschlagen besorgt, habe mich da mit Swings beschäftigt.
Ich habe das Problem, das die Beispiele in meiner Entwicklungsumgebung Eclipse nicht richtig funktionieren.

Folgendes Beispiel:

Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class Listing3711
extends JFrame
{
  private static final String[] COLORS = {
    "rot", "grün", "blau", "gelb"
  };

  public Listing3711()
  {
    super("JComboBox");
    addWindowListener(new WindowClosingAdapter(true));  // "WindowClosingAdapter" Wird rot markiert !!!
    Container cp = getContentPane();
    for (int i = 1; i <= 2; ++i) {
      JPanel panel = new JPanel();
      panel.setLayout(new FlowLayout(FlowLayout.LEFT, 10, 2));
      panel.add(new JLabel("Farbe " + i + ":"));
      JComboBox combo = new JComboBox(COLORS);
      combo.setEditable(i == 1);
      panel.add(combo);
      cp.add(panel, i == 1 ? BorderLayout.NORTH : BorderLayout.CENTER);
    }
  }

  public static void main(String[] args)
  {
    Listing3711 frame = new Listing3711();
    frame.setLocation(100, 100);
    frame.setSize(200, 200);
    frame.setVisible(true);
  }
}

Es kommt immer folgende Fehlermeldeung

Code:
Exception in thread "main" java.lang.Error: Unresolved compilation problem: 
	WindowClosingAdapter cannot be resolved to a type

	at AWT.Listing3711.<init>(Listing3711.java:17)
	at AWT.Listing3711.main(Listing3711.java:32)

Wäre schön wenn mir jemand sagen könnte wie ich den Code ändern kann, so das ich eine Ausgabe bekomme.

Gruß

Mythos
 

Mythos

Mitglied
Ich beschäftige mich mit Swing seit kurzem, der Quelltext oben ist von der CD, aber ich kann ihn nicht zum laufen bringen, weil Eclipse immer eine Fehlermeldung, wie oben beschrieben ausgibt.

Mir selbst, sagt "WindowClosingAdapter" auch nichts.

Gruß

Mythos
 

Der Müde Joe

Top Contributor
Mythos hat gesagt.:
Mir selbst, sagt "WindowClosingAdapter" auch nichts.

...naja....gibts halt nicht...

und der WindowAdapter ist selber auch nur Rumpf mit leeren Methoden...

wenn es ums schliessen geht:

Code:
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

EDIT:
ist vielleicht eine implementierung des WindowAdapter auf deiner CD
 

Mythos

Mitglied
Ich habe die betreffende Zeile duch Deine ersetzt und es funktioniert. :D

Vielen Dank Dir Joe, you made my day.

Gruß

Mythos
 

Der Müde Joe

Top Contributor
kannst ja alternativ die mal benutzen und den Code belassen:
Code:
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;


public class WindowCloseAdapter extends WindowAdapter {

    private boolean close;
    
    public WindowCloseAdapter(boolean b){
        this.close = b;
    }

    @Override
    public void windowClosing(WindowEvent e) {
        if(close){
            System.exit(0);            
        }
    }
}
 

Quaxli

Top Contributor
Vermutlich wurde die Klasse WindowCloseAdapter irgendwo vorher im Buch beschrieben?
Vermutlich so ziemlich in der Form wie sie der müde Joe oben gepostet hat? :)
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben