ich habe mal eine Frage:
Ich habe ein Programm und möchte ein kleines Dialogfenster innerhalb des Programmes haben ohne das dieses unten in der Taskleiste angezeigt wird.
Also wie das Öffnen-Dialog in Word oder Einstellungsdialog in anderen Programmen.
Aber ich habe keien Ahnung wie ich sowas realisiere.
Habt ihr eine Idee?
Danke für den Tipp.
Ich suche ja im Moment nicht Abfragen oder so sondern ich möchte ein dynamisches Suchfenster realisieren.
Das JOptionPane werde ich später auch gebrauchen können ...
Also ich erstelle einen JDialog und dadrin gibt es unter anderem einen Beenden-Button, dadurch wird der ActionListener aufgerufen.
Was soll dieser aber mit dem JDialog machen, dass es so "aussieht", dass ich es geschlossen habe?
Das dispose() löscht doch alles verbundene oder was macht das genau?
Weil ich möchte ja in der aufrufenden Klasse auf die Werte die eingegeben worden sind zugreifen.
Desweiteren kann man die setDefaultCloseOperation mit einem Funktionsaufruf verbinden?
dispose() ""löscht"" nicht deine Variablen, die du selber in der Klasse extends JDialog definiert hast, das ist schon mal sicher. Was es aber genau macht, müsstest du mithilfe google nachlesen.
Desweiteren kann man die setDefaultCloseOperation mit einem Funktionsaufruf verbinden?
this.setDefaultCloseOperation(JDialog.DO_NOTHING_ON_CLOSE); // verhindert, das sich das Fenster selber beendet.
this.addWindowListener(new WindowListener(){
public void windowClosing(WindowEvent e){
// wird aufgerufen wenn man oben rechts aufs X klickt.
}
public void windowClosed(WindowEvent e){}
public void windowActivated(WindowEvent e){}
public void windowDeactivated(WindowEvent e){}
public void windowDeiconified(WindowEvent e){}
public void windowIconified(WindowEvent e){}
public void windowOpened(WindowEvent e){}
});
In vielen Codeschnipsel wird WindowConstants genutzt, aber man findet vereinzelt auch was mit JDialog.
Ich selber kann aber nicht sagen ob es da einen Unterschied gibt.
Ich weiß nur, dass beides läuft.
In vielen Codeschnipsel wird WindowConstants genutzt, aber man findet vereinzelt auch was mit JDialog.
Ich selber kann aber nicht sagen ob es da einen Unterschied gibt.
Ich weiß nur, dass beides läuft.
Definiert sind die XXX_ON_CLOSE-Konstanten im WindowConstants-Interface. JDialog, JFrame und JInternalFrame implementieren dieses Interface. Damit sind die Konstanten natürlich auch über diese Klassen erreichbar. Wenn man Konstanten aus Interfaces benutzt sollte man trotzdem den Ort ihrer Herkunft richtig auszeichnen. Daher besser WindowConstants.DISPOSE_ON_CLOSE statt JDialog.DISPOSE_ON_CLOSE.
In vielen Codeschnipsel wird WindowConstants genutzt, aber man findet vereinzelt auch was mit JDialog.
Ich selber kann aber nicht sagen ob es da einen Unterschied gibt.
Ich weiß nur, dass beides läuft.
Definiert sind die XXX_ON_CLOSE-Konstanten im WindowConstants-Interface. JDialog, JFrame und JInternalFrame implementieren dieses Interface. Damit sind die Konstanten natürlich auch über diese Klassen erreichbar. Wenn man Konstanten aus Interfaces benutzt sollte man trotzdem den Ort ihrer Herkunft richtig auszeichnen. Daher besser WindowConstants.DISPOSE_ON_CLOSE statt JDialog.DISPOSE_ON_CLOSE.
Persönlich finde ich die Version JDialog.DISPOSE_ON_CLOSE besser. Da mit dem Aufruf klar ist das JDialog das interface WindowConstants implementiert. Was für einen Vorteil hat es den WindowConstants.DISPOSE_ON_CLOSE zu schreiben?
Persönlich finde ich die Version JDialog.DISPOSE_ON_CLOSE besser. Da mit dem Aufruf klar ist das JDialog das interface WindowConstants implementiert. Was für einen Vorteil hat es den WindowConstants.DISPOSE_ON_CLOSE zu schreiben?
Es hat in diesem Fall praktisch gar keinen Vorteil. Prinzipiell sollte man sich angewöhnen statische Variablen und Methoden direkt zu referenzieren. Das heißt, immer über die Klasse / das Interface in der sie definiert sind; nicht über Ableitungen / Implementierungen, auch nicht über Instanzen.