JDialog öffnet sich nicht

appl_

Mitglied
Hallo Leute,

Ich habe folgenden Code:
Java:
		JButton AktuellAuftraege = new JButton("Aktuell Auftraege");
		AktuellAuftraege.setBounds(35, 32, 117, 70);
		AktuellAuftraege.addActionListener(new ActionListener() {
			
			public void actionPerformed(ActionEvent e) {
				JDialog dialog = new JDialog();
				dialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
				AktuellAuftraege aa = new AktuellAuftraege();
				dialog.getContentPane().add(aa);
				dialog.setSize(aa.getPreferredSize());
				dialog.setModal(true);
				dialog.setVisible(true);
				
				
				
			}
		});
		contentPane.add(AktuellAuftraege);
Und kriege beim anklicken folgende Fehlermeldung:

Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: adding a window to a container

Wie kann ich dies beheben?

Danke
 

ssoul26

Bekanntes Mitglied
AktuellAuftraege: was ist das für ein Objekt? "adding a window to a container" auch noch beachten, dann sollte sich die Frage erübrigen.
 

Andy17

Aktives Mitglied
Hey appl_,

dein Problem ist, dass du zu kompliziert denkst. Du scheinst den Dialog dem Frame zuweisen zu wollen und weist damit einen Container in dein Panel zu. Lies dir mal in der Javadoc etwas zu JDialog durch.

JDialog (Java Platform SE 7 )

Dort siehst du, warum das nicht geht und gleichzeitig wie es richtig geht.

Versuch es doch einfach so:

Java:
package JDialogViaButtonClick;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;

public class ExampleJDialog
{

    static JFrame beispielFrame = new JFrame("JDialogOpenerWindow");
    static JButton dialogOpener = new JButton("Öffne den Dialog");
    static JDialog dialog = new JDialog();
    
    private static void setWindowProperties() {
        
        dialog.setBounds(700, 500, 170, 100);
        dialog.setVisible(false);
        
        dialogOpener.setBounds(15, 15, 170, 100);
        dialogOpener.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent arg0)
            {
                dialog.setVisible(true);
            }
        });
        
        beispielFrame.setSize(210, 160);
        beispielFrame.setResizable(false);
        beispielFrame.setLayout(null);
        beispielFrame.add(dialogOpener);
        beispielFrame.setVisible(true);
        
    }
    
    public static void main(String[] args)
    {
        setWindowProperties();
    }
    
}

Ist zwar noch nicht auf dem Frame, das poste ich aber gleich nochmal im nachhinein.

LG
 

Andy17

Aktives Mitglied
Gerade noch einmal nachgeschaut, ich bekomme das so auf die schnelle zwischen diesen und jenen Späßen nicht hin.

Darf ich mir die Frage erlauben, warum du einen neuen JDialog in deinem aktuellen Fenster möchtest?

Wenn du einen Dialog in deinem aktuellen Fenster willst, dann entferne einfach alle Komponenten von dem aktuellen Frame und füge die neuen hinzu. Oder nimm dir zwei JPanels, denen du die Komponenten zuweist und die JPanels wechselst du einfach auf Button-Druck aus.

LG
 

ssoul26

Bekanntes Mitglied
AktuellAuftraege ist eine Klasse, also das JDialog das ich aufrufen möchte

Du versuchst also einen Dialog mit einem Dialog aufzurufen?

Solte die Klasse AktuellAuftraege JDialog ableiten, dann versuch mal folgendes:

Java:
   public void actionPerformed(ActionEvent e) {
               
                AktuellAuftraege aa = new AktuellAuftraege();
                aa.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
                aa.setModal(true);
                aa.setVisible(true);

            }
        });

Die Fehlermeldung wird daher wegen der folgenden Zeile geworfen:
Java:
dialog.getContentPane().add(aa);
JDialog leitet von Window ab. GetContentPane liefert einen Container. Daher die Fehlermeldung.
 
Zuletzt bearbeitet:

kaoZ

Top Contributor
Anstatt zu versuchen dein JDialog in einem Container zu öffnen, solltest du in Erwägung ziehen die Position einfach anhand des Elternelementes zu bestimmen, und dieses zu überlagern

demnach versuch einfach mal es über
Code:
.setLocationRelativeTo(Component);
zu realisieren

das Elternelement wäre in deinem Fall dein Frame.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
A Jdialog nur 1x anzeigen Java Basics - Anfänger-Themen 2
D JButton in JDialog mit Action belgen Java Basics - Anfänger-Themen 6
J JDialog Zugriff auf parent JDialog Java Basics - Anfänger-Themen 5
J JDialog: wie kann ich ihn direkt als invisible erstellen Java Basics - Anfänger-Themen 7
D JDialog schließen Java Basics - Anfänger-Themen 11
I Veränderungen am JPanel vom JDialog aus Java Basics - Anfänger-Themen 6
H JDialog Problem Java Basics - Anfänger-Themen 10
H Problem JDialog.setVisible Java Basics - Anfänger-Themen 3
T Modales JDialog schliessen mit JButton Java Basics - Anfänger-Themen 2
I JDialog Problem Java Basics - Anfänger-Themen 37
J Icon JDialog mit Java 1.4 Java Basics - Anfänger-Themen 2
M JDialog Modality Java Basics - Anfänger-Themen 7
S JDialog resize zur Laufzeit PROBLEM!!! Java Basics - Anfänger-Themen 5
S JDialog und SwingUtilities Java Basics - Anfänger-Themen 6
H Modalen JDialog schließen, ohne dabei das Parent-Frame zu schließen Java Basics - Anfänger-Themen 7
M JDialog soll was an die AufruferKlasse zurück geben Java Basics - Anfänger-Themen 3
S Layout JDialog Java Basics - Anfänger-Themen 9
S eigene Methoden in JDialog Java Basics - Anfänger-Themen 13
pun Im JDialog auf Objekt im Parent JFrame zugreifen Java Basics - Anfänger-Themen 2
C Frame, JFrame, JDialog Java Basics - Anfänger-Themen 12
S Datenzugriff auf JDialog! Java Basics - Anfänger-Themen 8
A JDialog, Owner JFrame ZIEL: nciht in der taskbar Java Basics - Anfänger-Themen 9
E Übergabe von werten aus einem JDialog Java Basics - Anfänger-Themen 4
B Grafiken/Bilder mit Netbeans in Jdialog Java Basics - Anfänger-Themen 7
O Beim Schließen JDialog, im Frame-Owner eine Methode starten Java Basics - Anfänger-Themen 6
G JDialog + p aintComponent-Override Java Basics - Anfänger-Themen 3
A Klasse erbot von JDialog. Kontruktor? Java Basics - Anfänger-Themen 4
M Hauptfenster nicht wählbar bei offenem JDialog Java Basics - Anfänger-Themen 2
G Bei JDialog warten Java Basics - Anfänger-Themen 5
B Fenstergröße variiert bei JDialog.pack()-Aufruf Java Basics - Anfänger-Themen 10
S JDialog während automatischer Dateisuche einblenden Java Basics - Anfänger-Themen 6
J JDialog zeigt nichts an Java Basics - Anfänger-Themen 4
C JDialog Werte nach Frame übergeben Java Basics - Anfänger-Themen 10
G JDialog + setOpaque Java Basics - Anfänger-Themen 5
G JDialog auf Jpanel statt Frame? Java Basics - Anfänger-Themen 4
N Werte von JDialog entgegennehmen Java Basics - Anfänger-Themen 7
G JDialog-Status im Frame abfragen Java Basics - Anfänger-Themen 2
Bernasconi dynamisches JDialog Java Basics - Anfänger-Themen 2
T Register im JDialog Java Basics - Anfänger-Themen 9
G JDialog übers X schliessen und Programm beenden Java Basics - Anfänger-Themen 4
C Fehlermeldungen umleiten auf JDialog Java Basics - Anfänger-Themen 2
S new .() extends JDialog {.} Java Basics - Anfänger-Themen 15
M Button in einem JDialog mit Enter ausführen Java Basics - Anfänger-Themen 2
C FocusLost reagiert nicht bei JDialog Java Basics - Anfänger-Themen 5
E Von einem JDialog einen neuen JDialog aufrufen Java Basics - Anfänger-Themen 10
R JDialog schließen ( nicht mit dispose()! ) Java Basics - Anfänger-Themen 14
G JDialog Java Basics - Anfänger-Themen 15
M JDialog Java Basics - Anfänger-Themen 3
M JDialog basierend auf JDialog aufrufen Java Basics - Anfänger-Themen 4
B KeyListener beim JDialog Java Basics - Anfänger-Themen 4
E JDialog schließen Java Basics - Anfänger-Themen 9
S JDialog Frage Java Basics - Anfänger-Themen 2
G Wiedermal vererbung, extends JDialog extends Exception ? Java Basics - Anfänger-Themen 8
P JDialog funktioniert nicht? Java Basics - Anfänger-Themen 9
P JDialog & JProgressBar Java Basics - Anfänger-Themen 2
F JDialog per Button-Klick schliessen Java Basics - Anfänger-Themen 2
S JDialog einrichten Java Basics - Anfänger-Themen 4
G Owner von JDialog;Komme einfach nicht weiter Java Basics - Anfänger-Themen 4
G einfaches jdialog beispiel Java Basics - Anfänger-Themen 1
J Default Button bei jDialog Java Basics - Anfänger-Themen 2
M JDialog mit TextArea Java Basics - Anfänger-Themen 2
K JDialog aus einer anderen klasse einfügen Java Basics - Anfänger-Themen 2
S Auf JDialog aus anderer Datei zugreifen Java Basics - Anfänger-Themen 5
P Mein Programm wird zwar erfolgreich Compiliert, öffnet sich aber nicht Java Basics - Anfänger-Themen 6
B Programm, dass alle 3 Tage eine Webseite öffnet? Java Basics - Anfänger-Themen 20
H Eingabe tätigen bevor Graphics g Fenster öffnet Java Basics - Anfänger-Themen 5
C Exportierte JAR öffnet zweiten Frame nicht mehr Java Basics - Anfänger-Themen 7
J JFrame Fenster öffnet sich nicht Java Basics - Anfänger-Themen 7
S Nach dem Herüberschieben eines Arrays zwischen 2 Frames öffnet sich das Frame nicht mehr Java Basics - Anfänger-Themen 12
H Wieso öffnet sich der Texteditor? Java Basics - Anfänger-Themen 6
D Programm öffnet hinter Taskleiste Java Basics - Anfänger-Themen 1
E Eclipse öffnet nur mit Trick Java Basics - Anfänger-Themen 2
dat_vin JFrame öffnet sich mehrmals Java Basics - Anfänger-Themen 6
T GUI öffnet sich nicht Java Basics - Anfänger-Themen 23
T Ausführbare .jar öffnet nur ein cmd... Java Basics - Anfänger-Themen 2
J BlueJ öffnet package falsch Java Basics - Anfänger-Themen 2
J Klick auf Button -> JFrame öffnet sich erneut. & Datei lässt sich nicht löschen Java Basics - Anfänger-Themen 7
L Eclipse.exe öffnet sich nicht. Java Basics - Anfänger-Themen 7
D Erste Schritte Java Konsole öffnet sich nicht Java Basics - Anfänger-Themen 4
W ObjectInputStream öffnet nicht Java Basics - Anfänger-Themen 4
D Programm öffnet sich nicht Java Basics - Anfänger-Themen 5
K Erste Schritte Ein Button öffnet ein JFrame Java Basics - Anfänger-Themen 16
M Timer-Thread in Swing öffnet jedes Mal ein neues Fenster Java Basics - Anfänger-Themen 6
E javaw öffnet trotzdem ein DOS Fenster Java Basics - Anfänger-Themen 15
T Warum öffnet sich kein Fenster? Java Basics - Anfänger-Themen 3
D Applet öffnet nicht richtig Java Basics - Anfänger-Themen 4
E PopupMenu öffnet nicht so wie ich möchte Java Basics - Anfänger-Themen 2
G cmd.exe öffnet sich nicht Java Basics - Anfänger-Themen 5
S JFileChooser öffnet Unterverzeichnisse sehr langsam Java Basics - Anfänger-Themen 2
L Warum öffnet sich aus einer .jar-Datei kein Dosfenster? Java Basics - Anfänger-Themen 5
K ResultSet öffnet sich garnicht erst Java Basics - Anfänger-Themen 9
L JFrame öffnet 2tes JFrame, welches Daten vom 1sten braucht. Java Basics - Anfänger-Themen 21
D Programmausführung öffnet sich nicht Java Basics - Anfänger-Themen 4
F Packprogramm öffnet sich bei Doppelklick auf jar-Datei Java Basics - Anfänger-Themen 26
W warum öffnet der nur die erste datei???? Java Basics - Anfänger-Themen 5
N Klassen Hintergrundfarbe in JPanel ändert sich nicht Java Basics - Anfänger-Themen 3
KogoroMori21 Wann ist der richtige Zeitpunkt, um sich Hilfe zu suchen? (Bin Informatik-Student) Java Basics - Anfänger-Themen 10
N Hey Leute und zwar versuche ich gerade ein 2D Spiel zu Programmieren aber die Figur will sich nicht nach links oder rechts bewegen :( Java Basics - Anfänger-Themen 12
T code so schreiben das er von sich selber anpasst (code soll die anzahl aller bustaben bestimmen) Java Basics - Anfänger-Themen 16
P Probleme mit NetBeans: Wie lässt sich jar. Datei an einem MacBook öffnen Java Basics - Anfänger-Themen 21

Ähnliche Java Themen

Neue Themen


Oben