ActionListener von JButton funktioniert mit JFrame aber nicht mit JDialog

Frank87

Neues Mitglied
Hallo User des Java-Forums :)

Ich habe ein wirklich merkwürdiges Problem und bin echt am Verzweifeln :(

Hier erstmal mein Code:
Java:
public class AccountController implements IController, ActionListener {

	private IView view;
	
	public AccountController(JFrame rootWin) {
		
		view = new AccountView(rootWin);		
		view.addListener(this);
	}

	@Override
	public void actionPerformed(ActionEvent e) {
			System.out.println("Dies ist ein Test");
	}
	
}


public class AccountView extends JPanel implements IView {

	/**
	 * Instance variable JPanel was asking for 
	 */
	private static final long serialVersionUID = 1L;
	
	JButton ok;
	JTextField accountName;
	JComboBox accountType;
	JFrame win;
	
	protected AccountView(JFrame rootWin) {
		//define variables
		JPanel creationPanel;
		
		//create all Components
		creationPanel = new JPanel();
		accountName = new JTextField();
		accountType = new JComboBox();
		for (String s : Account.getNames())
			accountType.addItem(s);
		
		ok = new JButton("OK");
		ok.setActionCommand("ok");
		
		//set all Layout Managers
		creationPanel.setLayout(new GridLayout(0,2));
		setLayout(new BorderLayout());
		
		//Component hierarchy
		creationPanel.add(new JLabel ("Bezeichung:"));
		creationPanel.add(new JLabel ("Typ:"));
		creationPanel.add(accountName);
		creationPanel.add(accountType);
		creationPanel.add(new JLabel (" "));
		creationPanel.add(ok);
		add(creationPanel, BorderLayout.SOUTH);
		
		win = new JFrame("hallo");
		
		win.add(this);
		
		win.pack();
		win.setVisible(true);
	}
	
	public void addListener(IController listener) {
		ok.addActionListener((ActionListener) listener);
	}
}

in dieser Form läuft der Code anstandslos. Wenn ich den Button klicke, wird die Methode actionPerformed des ActionListeners ausgeführt und der Text wird ausgegeben. Ändere ich die Zeile mit dem JFrame wie folgt ab(und verändere natürlich den Typ von win entsprechend):

Java:
		win = new JDialog(rootWin, "hallo", true);

dann wird nichts mehr ausgegeben. rootWin ist einfach das Hauptfenster der Anwendung.

Und ich verstehe nun überhaupt nicht, warum es bei JFrame geht und bei JDialog nicht.
Der Button ist doch noch derselbe!! o_O

Ich hoffe jemand weis die Anwort. Danke schonmal im Vorraus! ^^

Liebe Grüße
Frank
 

KrokoDiehl

Top Contributor
Der JDialog, den du erstellst ist modal, d.h. der Aufruf von
Code:
setVisible(true)
blockiert. Dieser steht am Ende des Konstruktors von AccountView, also wird im AccountController die
Code:
addListener()
-Methode nicht aufgerufen, solange das Fenster sichtbar ist.
 

Frank87

Neues Mitglied
Hallo,

Vielen Dank :D

Ich dachte ja, das mit dem Modal bezieht sich nur auf das Fenster selbst und nicht auf seine Methoden. Das die setVisible-Methode nicht verlassen wird, solange das Fenster offen ist, das wusste ich nicht. m(

Mensch, da hätte ich ja noch ewig suchen und mich wundern können. ^^

Hab jetzt ne Methode in der View geschrieben, die win.setVisible(true) aufruft und die im Controler ganz zu letzt aufgerufen wird. Und siehe da, es klappt :D

lg
Frank
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Swing Änderung des ActionListener Events nach Klick auf JButton AWT, Swing, JavaFX & SWT 2
R Swing ActionListener bei JButton AWT, Swing, JavaFX & SWT 9
A JButton wird bei ActionListener nicht "angenommen" AWT, Swing, JavaFX & SWT 7
I Swing Problem mit InputMap bei JButton (ActionListener) AWT, Swing, JavaFX & SWT 3
S Swing JButton mit ActionListener innerhalb einer JTable AWT, Swing, JavaFX & SWT 4
W actionListener für JButton "Step" AWT, Swing, JavaFX & SWT 5
R Swing ActionListener für JButton bei Drücken AWT, Swing, JavaFX & SWT 3
ABstraCT ActionListener zufügen bei "extends JButton" AWT, Swing, JavaFX & SWT 7
A jButton und Actionlistener? AWT, Swing, JavaFX & SWT 5
Z TextField aus ActionListener von JButton verändern AWT, Swing, JavaFX & SWT 10
C JButton Array - ActionListener AWT, Swing, JavaFX & SWT 10
B JButton array und ActionListener AWT, Swing, JavaFX & SWT 2
B ActionListener, Thread, JButton Problem AWT, Swing, JavaFX & SWT 2
G 1.) ActionListener: JButton und 2.) JTable AWT, Swing, JavaFX & SWT 7
M JButton & ActionListener AWT, Swing, JavaFX & SWT 6
M ActionListener für JButton AWT, Swing, JavaFX & SWT 2
L Problem mit ActionListener, ChildFrame und JButton AWT, Swing, JavaFX & SWT 3
C Button ActionListener funktioniert nicht AWT, Swing, JavaFX & SWT 1
B Actionlistener mit Java Swing AWT, Swing, JavaFX & SWT 2
L jComboBox Actionlistener wird beim erstmaligen Befüllen getriggert AWT, Swing, JavaFX & SWT 7
H Viele ActionListener (MouseListener) - Performance AWT, Swing, JavaFX & SWT 24
pkm MainFrame durch Actionlistener auffrischen, aber wie? AWT, Swing, JavaFX & SWT 2
L actionListener für Button AWT, Swing, JavaFX & SWT 97
R Actionlistener funktioniert nicht AWT, Swing, JavaFX & SWT 4
N Bilder auf Button einfügen und mehrmals ändern (ein Button, mehrere ActionListener) AWT, Swing, JavaFX & SWT 2
R ActionListener in Actionlistener AWT, Swing, JavaFX & SWT 6
S Swing Variable in Actionlistener aufrufen AWT, Swing, JavaFX & SWT 10
P Swing ActionListener überschreibt einen Wert aus der Hauptklasse nicht AWT, Swing, JavaFX & SWT 5
N Aufruf einer anderen Klasse durch Button ActionListener AWT, Swing, JavaFX & SWT 2
M AWT Kann meinen Fehler beim ActionListener nicht finden AWT, Swing, JavaFX & SWT 5
F Wie bekomme ich den Wert der ComboBox in eine Variable gespeichert welche ich für meinen ActionListener nutzen kann? AWT, Swing, JavaFX & SWT 3
L Ein Actionlistener für ein Textfeld, anstatt viele Actionlistener für ein Textfeld AWT, Swing, JavaFX & SWT 7
coolian ActionListener funktonirt nicht richtig auf JMenuItem AWT, Swing, JavaFX & SWT 4
L ActionListener zu Button in Panel hinzufügen AWT, Swing, JavaFX & SWT 10
R Kann JLabel in ActionListener nicht aufrufen AWT, Swing, JavaFX & SWT 4
Blender3D einzelner ActionListener vs anonyme ActionListener AWT, Swing, JavaFX & SWT 10
xYurisha ActionListener Methoden Buttons zuweisen! AWT, Swing, JavaFX & SWT 16
J ActionListener bei Buttons AWT, Swing, JavaFX & SWT 14
S Swing Problem mit Button und ActionListener AWT, Swing, JavaFX & SWT 5
it_is_all ActionListener umlenken/ updaten mit AddActionListener funktioniert nicht AWT, Swing, JavaFX & SWT 3
it_is_all Event Handling ActionListener in anderer Klasse klappt nicht AWT, Swing, JavaFX & SWT 4
F "ActionListener" funktioniert nicht AWT, Swing, JavaFX & SWT 4
Z ActionListener Variable übergeben AWT, Swing, JavaFX & SWT 12
T JProgressbar während actionListener updaten AWT, Swing, JavaFX & SWT 1
S While Schleife im Actionlistener AWT, Swing, JavaFX & SWT 1
S ActionListener für alle Buttons AWT, Swing, JavaFX & SWT 26
T ActionListener nimmt JTextField nicht mehr an. AWT, Swing, JavaFX & SWT 2
P ActionListener Graphics Einbauen AWT, Swing, JavaFX & SWT 0
S actionlistener mit 2 fenster integrieren AWT, Swing, JavaFX & SWT 11
Liondary GUI - ActionListener AWT, Swing, JavaFX & SWT 7
J ActionListener erkennt Variable nicht AWT, Swing, JavaFX & SWT 6
E ActionListener führt falsche Funktion aus AWT, Swing, JavaFX & SWT 6
Sin137 ActionListener in MVC AWT, Swing, JavaFX & SWT 7
M ActionListener und mathematische Methoden AWT, Swing, JavaFX & SWT 13
A Oberfläche mit zwei Klassen und actionlistener verbinden AWT, Swing, JavaFX & SWT 7
Paul15 ActionListener Variablen AWT, Swing, JavaFX & SWT 13
Y ActionListener AWT, Swing, JavaFX & SWT 2
K Ereignisbehandlung, ActionListener, ActionEvent AWT, Swing, JavaFX & SWT 3
A Gui für Vokabeltrainer (ActionListener) AWT, Swing, JavaFX & SWT 14
C Im ActionListener Buttons disablen, einen Thread starten, dann Buttons enablen AWT, Swing, JavaFX & SWT 2
M JTextArea wird nicht aktualisiert (ActionListener-Problem) AWT, Swing, JavaFX & SWT 1
J Event Handling JOptionPane ActionListener setzen. AWT, Swing, JavaFX & SWT 3
S ActionListener Klasse aufrufen AWT, Swing, JavaFX & SWT 4
R Swing Problem: IOException bei ActionListener AWT, Swing, JavaFX & SWT 1
J ActionListener soll auf paint() Methode zugreifen AWT, Swing, JavaFX & SWT 1
T Einfaches Problem mit ActionListener AWT, Swing, JavaFX & SWT 2
K ActionListener mit KeyListener AWT, Swing, JavaFX & SWT 7
K GUI, Button, ActionListener - ein paar Einsteigerprobleme AWT, Swing, JavaFX & SWT 1
W Verschachtelter ActionListener AWT, Swing, JavaFX & SWT 0
N gewünschte ActionListener bei RadioButton mit isSelected geht nicht AWT, Swing, JavaFX & SWT 2
C Probleme mit Buttons und einem ActionListener AWT, Swing, JavaFX & SWT 2
K Swing JMenu und ActionListener AWT, Swing, JavaFX & SWT 4
A Swing ActionListener AWT, Swing, JavaFX & SWT 8
V ActionListener Abhängigkeitenproblem AWT, Swing, JavaFX & SWT 6
M ActionListener für mehrere Klassen AWT, Swing, JavaFX & SWT 4
J ActionListener für Buttons AWT, Swing, JavaFX & SWT 3
M Event Handling ActionListener übergeben ich checks net AWT, Swing, JavaFX & SWT 4
C Swing ComboBox - ActionListener deaktivieren AWT, Swing, JavaFX & SWT 2
S Button (ActionListener) funktioniert nicht, wenn y-Koordinate verändert wird AWT, Swing, JavaFX & SWT 5
L Swing ActionListener führt seine Aufgabe nur teilweise aus. AWT, Swing, JavaFX & SWT 7
A Swing ActionListener kann nicht hinzugefügt werden AWT, Swing, JavaFX & SWT 4
P Actionlistener - 3 klassen - kompliziert - auf methoden zugreifen AWT, Swing, JavaFX & SWT 3
Q CardLayout, ausgelagerte Panels, ActionListener AWT, Swing, JavaFX & SWT 5
M ProgressBar in ActionListener AWT, Swing, JavaFX & SWT 4
D AWT eigenem Knopf ActionListener zuweisen AWT, Swing, JavaFX & SWT 24
E Wert aus ActionListener geben AWT, Swing, JavaFX & SWT 4
J ActionListener per Innere Klasse oder e.getActionCommand() if-Abfrage? AWT, Swing, JavaFX & SWT 12
L Swing ActionListener zugriff auf bestimmte Elemente AWT, Swing, JavaFX & SWT 3
P Swing Seltsames ActionListener-Verhalten AWT, Swing, JavaFX & SWT 7
Oliver530 ActionListener von eigener ButtonKlasse AWT, Swing, JavaFX & SWT 16
Kenan89 statischer ActionListener keine Wirkung? AWT, Swing, JavaFX & SWT 2
Kenan89 statischer ActionListener keine Wirkung? AWT, Swing, JavaFX & SWT 3
C In der Schleife ActionListener aktivieren AWT, Swing, JavaFX & SWT 3
B Swing Problem beim ActionListener AWT, Swing, JavaFX & SWT 5
P Swing JPanel mit ActionListener mehrfach verwenden AWT, Swing, JavaFX & SWT 8
1 ActionEvent generieren und an ActionListener weiterleiten AWT, Swing, JavaFX & SWT 12
N Swing Klasse erbt von JDialog - Problem mit innerer ActionListener-Klasse AWT, Swing, JavaFX & SWT 6
N JCombobox und Actionlistener Aktion nur ausführen, wenn Useraktion ihn auslöst AWT, Swing, JavaFX & SWT 4
N Componente und Actionlistener AWT, Swing, JavaFX & SWT 5
C ActionListener AWT, Swing, JavaFX & SWT 6

Ähnliche Java Themen

Neue Themen


Oben