Zum Inhalt springen

JFrames im Dialog aufeinander abstimmen


Empfohlene Beiträge

Geschrieben

Guten Morgen zusammen,

ich melde mich mal wieder an dieser Stelle, da es ja bereits hervorragend funktioniert hat...

Ich öffne über einen "add Button" ein neues Frame. Dieses soll änlich eines JOptionPanes eine ComboBox und ein TextField sowie ein Save Button zur Verfügung stellen. Die Eingabe soll weiter verwendet werden. Ich öffne das neue Frame in dem AktionListener des "add"- Buttons. Die eingegebenen Daten sollen erst weiterverwendet werden, wenn der "Save" Button betätigt wurde.

Momentan funktioniert dies nicht so und die Auswertung geschieht sofort mit dem Drücken des Add Buttons, sodass der standmäßige ComboBox Eintrag eingelesen wird (auch das TextField kann deshalb nicht ausgefüllt werden).

Ich hoffe meine Beschreibung war soweit verständlich und ihr könnt mir helfen!

Danke

Geschrieben

Du kannst auch einfach anstatt eines JFrames einen eigenen Dialog erzeugen. Das geht entweder komplett selber über die Klasse JDialog oder über die Methoden der Klasse JOptionPane. Wenn du den Dialog dann modal erzeugst, blockiert die setVisible() Methode des Dialog, bis dieser geschlossen wurde.

Geschrieben (bearbeitet)

Hallo,

ich habe es nun soweit geschafft, dass wenn sich der JDialog öffnet, das Hauptfenster gesperrt wird.

Das Problem nun ist allerdings, dass wenn ich das Dialog Fenster über das "X" (oben rechts im Fenster) schließe, mein Hauptfenster gesperrt und minimiert wird, somit ist anschließend keine Funktionen im Hauptfenster mehr auswählbar (das Hauptfenster kann nicht mal mehr geschlossen werden).

//über diesen Button wird JDialog geöffnet


// Button

		JButton addButton = new JButton("ADD");

		addButton.setToolTipText("Click this button to...");


		addButton.addActionListener(new ActionListener() {


			public void actionPerformed(ActionEvent arg0) {

				FileUtil FileUtil = new FileUtil();



				WindowCloseWaiter asdf = new WindowCloseWaiter(gui_frame);

				FitDialog addFit = new FitDialog();


				gui_frame.setFocusable(false);

				gui_frame.setEnabled(false);


				addFit.addWindowListener(asdf);

//WindosCloseWaiter

public class WindowCloseWaiter extends WindowAdapter

	{


		JFrame frame;


		/**

		 * Constructor

		 */

		public WindowCloseWaiter(JFrame frame) {

			this.frame= frame;

		}


		/**

		 * @see java.awt.event.WindowAdapter#windowClosing(java.awt.event.WindowEvent)

		 */

		@Override

		public void windowClosing(WindowEvent e) {

			this.frame.setFocusable(true);	

			this.frame.setEnabled(true);


			System.out.println("###");

		}


	}

//AktionPerformed in JDialog

public void actionPerformed(ActionEvent e) {


		this.setVisible(false);

		this.dispatchEvent(new WindowEvent(this, WindowEvent.WINDOW_CLOSING));

		this.dispose();

	}

Hat jmd eine Idee wie ich das Problem behebe? Das die Anwendungen des Hauptprogramms/Hauptfensters bestehen bleiben, wenn ich über das "X" schließe?

Bearbeitet von schnixx

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...