this. show() oder this.toFront()

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hallo Zusammen!

Ich hätte da eine Frage. Ich habe ein Hauptframe! Wenn ich das Schliessen will soll ein Dialogbox angezeigt werden, wo abgefragt wird ob man das Programm wirklich schliessen will! Wenn der Benutzer auf Abbrechen klickt soll das Hauptframe angeziegt werden! Meine Frage ich ob ich die Abfrage richtig positioniert habe und ob ich .show() oder lieber .tofront() nehmen soll! Was ist der unterschied der beiden???

Für jede Hilfe bin ich dankbar! :wink: :wink: :wink:


Code:
 /**Überschrieben, so dass eine Beendigung beim Schließen des Fensters möglich ist.*/
  protected void processWindowEvent(WindowEvent e) {
    super.processWindowEvent(e);
    if (e.getID() == WindowEvent.WINDOW_CLOSING) {
//Wenn das Programm geschlossen wird, erscheinte eine Dialogbox mit der Frage ob Sie wirklich schließen
//Wenn diese mit Ok betätigt wird schliesst er das komplette programm! ansonsten wird das Frame wieder angezeigt.
    this.show();
    Object[] options = { "OK", "Abbrechen" };
int i = JOptionPane.showOptionDialog(null, "Wollen Sie das Programm wirklich beenden ?", "Systemmeldung", JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE, null, options, options[0]);
if(i == JOptionPane.OK_OPTION)
{
     System.exit(0);
}
else
    this.toFront();
    }
  }


Ist diese Lösung überhaupt richtig???
 
G

Guest

Gast
Code:
frame.addWindowListener(
  new WindowAdapter {
    public void windowClosing(WindowEvent e) {
      if(JOptionPane.YES_OPTION == JOptionPane.showConfirmDialog(frame, "Wollen Sie das Programm wirklich beenden ?", "Systemmeldung", JOptionPane.YES_NO_OPTION))
        frame.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
      else
        frame.setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
    }

    public void windowClosed(WindowEvent e) {
      System.exit(0);
    }
  }
);
 
G

Gast

Gast
Vielen dank! Funktioniert so!

Aber war meine Lösung nicht sauber?? Könnt ihr mir paar Tipps geben! Dadurch denke ich lernt man sowas besser!

Was ist der unterschied zwischen .tofron() und .show()?????
 
G

Guest

Gast
toFront() setzt ein Fenster/Dialogfenster in den Vordergrund, wenn es nicht
aktiv ist (also, wenn's irgendwo im Hintergrund ist), show() zeigt es an.
Verwende aber unter Swing immer setVisible(true) statt show().
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben