Michael: modaler Dialog erstellen?

Beitrag lesen

Danke für die Links!

Diese Links hab ich schon durchgelesen doch irgendwie haben Sie mich nur begrenzt weitergebracht, denn ich möchte ja nicht irgendwelche simplen Dialoge sondern sondern ein eigenes JDialog. Ich habe nun so eine Klasse geschrieben, welche von JDialog abgeleitet ist doch irgendwie spuckt die momentan noch fehlermeldungen aus. Hier die aktuelle Version der Klasse:

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

public class LehrpersonDialog extends JDialog implements ActionListener{

private JTextField bedenkzeit = new JTextField();
  private JTextField anzSpielrunden = new JTextField();
  private JTextField konferenzZeit = new JTextField();
  private JTextField eintrittsWahrsch = new JTextField();

boolean answer;

public LehrpersonDialog(JFrame frame, String title, boolean modal) {
    super(frame, title, modal);
    try {
      initialisieren();
      pack();
    }
    catch(Exception ex) {
    }
  }

public void initialisieren() throws Exception {

this.add(bedenkzeit);
    this.add(anzSpielrunden);
    this.add(konferenzZeit);
    this.add(eintrittsWahrsch);

JButton ok = new JButton();
    ok.setText("OK");
    this.add(ok);
    ok.setActionCommand("ok");
    ok.addActionListener(this);

JButton abbrechen = new JButton();
    abbrechen.setText("Abbechen");
    abbrechen.addActionListener(this);
    abbrechen.setActionCommand("abbrechen");
    this.add(abbrechen);

pack();

this.addWindowListener(new WindowAdapter() {
      public void windowClosing(WindowEvent e) {
        setVisible(false);
        dispose();
      }
    });
  }

public void actionPerformed(ActionEvent event) {
    String actionCommand = event.getActionCommand();
    if (actionCommand.equals("ok")) {
      answer = true;
      dispose();
    }
    if (actionCommand.equals("abbrechen")) {
      answer = false;
      dispose();
    }
  }

public boolean showDialog(){
    setModal(true);
    //this.setLocationRelativeTo(Hauptfenster.getHauptfenster());
    show();
    return (answer);
  }

public String[] getText(){
    String [] text = {bedenkzeit.getText(), anzSpielrunden.getText(),
        konferenzZeit.getText(), eintrittsWahrsch.getText()};
    return text;
  }
}