setEnabled(false); Problem

Doc

Aktives Mitglied
Hallo,
ich bins mal wieder.

Sind irgendwelche "Bugs" in Verbindung mit dem setEnabled Befehl bekannt?

Vielleicht bin ich etwas vorschnell, aber ich kann mir aber keine andere Erklärung vorstellen.

Wenn ich auf einen Button setEnabled(false) lege, sodass er sich selbst deaktiviert,
dann läuft bei der Ausführung irgendwas schief.
Also es keine exception, aber im Programm wird im Prinzip ein Element, wie von einem Mausklick, markiert. Also ein TextPane ändert seine Farbe als ob es angeklickt werden würde.

Entferne ich den Befehl, oder setze den Wert TRUE tuts wunderbar. Der Befehl macht doch nichts ausser einen Button zu aktivieren/deaktivieren. Wie kann der Befehl mein Programm beeinflussen?

Ein anderer Button der dieselbe Funktionalität hat, macht keine Schwierigkeiten.

Ich steh vor einem Rätsel. Hoffenltich weiss von euch jemand Bescheid.

Danke schonmal im Vorraus.
 

Doc

Aktives Mitglied
Also nochmal genau:
Ich hab einen Button. Wenn ich den Button selbst deaktiviere mit setEnabled(false),
dann wird beim Klicken des Buttons der FocusListener ausgeführt und zwar an der ersten Stelle eines Textpanes in einem GridLayout.
Lass ich setEnabled(false) weg, oder setze den Wert auf TRUE, dann wird der Focuslistener nicht ausgelöst!

Der FocusListener darf an der Stelle übrigens nicht ausgelöst werden. Das macht überhaupt keinen Sinn. ;(

Es sind sogar 2 Buttons die den Focus verlieren lassen und bekommen ihn auch direkt danach wieder neu.

Alles abhängig von dem setEnabled Befehl.
 
Zuletzt bearbeitet:

Doc

Aktives Mitglied
Also ein zweiter Button hat dieselbe Funktionalität, da funktionierts. Und Code posten ist jetzt nicht ganz so einfach, da müsste ich einiges zusammensuchen.

Daher wollte ich erstmal fragen ob irgendwelche Bugs bekommt sind, da die Sache für mich überhaupt keinen Sinn macht.

Ich hab jetzt eine System.out.println-Ausgabe die Bescheid gibt wann der Focuslistener Focus bekommt und wann er ihn verliert.
Und wie gesagt, mit setEnabled(false) treten die Probleme auf, da der FocusListener zuschlägt.
Ohne den Befehl, oder auf den Wert TRUE gesetzt, meldet der FocusListener nichts!
 
Zuletzt bearbeitet:

Doc

Aktives Mitglied
Mit dem FocusListener klicke ich in eine Feld mit mehreren TextPanes.
Hab jetzt noch rausgefunden, das ein anderer Button dieselben Probleme macht, wenn er sich mit set.Enabled(false) selbst deaktiviert. Daran scheints wohl zu liegen, aber wie gesagt, ich hab noch andere Buttons bei denen es keine Probleme macht.
 

diel2001

Bekanntes Mitglied
Der FocusListener liegt wahrscheinlich auf dem Container, in dem der Button liegt oder ??
Dann ist es, eigentlich logisch, da der Button wenn er disabled ist , wahrscheinlich keinen ActionListener mehr hat oder eben keine hohe Priorität hat und der FocusListener zuschlägt
 

Doc

Aktives Mitglied
Es liegen noch weitere Buttons auf dem Panel bei denen es keine Schwierigkeiten gibt.

Wenn ich alle setEnable Befehle weglasse, und somit alle Buttons aktiviert sind, dann treten auch keine Probleme auf. Also wirds kein Container Problem sein.

Ausserdem liegt der Focuslistener garnicht auf diesem Container.
 
Zuletzt bearbeitet:

Doc

Aktives Mitglied
Ergänzung:
Auf beiden Buttons die Probleme machen werden setFocusable(true/false); Befehle ausgelöst.
Aber wie gesagt: Ich habe andere Buttons mit der identischen Funktionalität, die keine Schwierigkeiten machen.
Und ohne die setEnable(false)-Befehle gehts auch.

Falls es ein Bug ist, meint ihr unter Linux könnte es funktionieren?
 
Zuletzt bearbeitet:

Doc

Aktives Mitglied
und noch eine Ergänzung:

zur Erklärung: Ich hab links und rechts jeweils die gleichen Buttons mit der identischen Funktionalität.
Die linke Seite tut nicht, die rechte funktioniert.

Wenn ich nun das Layout so änder, dass die linke Seite rechts und die rechte links ist, dann tut wieder die linke Seite nicht aber wieder die rechte. Es liegt also nicht an den Buttons.
 

Doc

Aktives Mitglied
Jetzt hab ich beide Buttons die Probleme machen auf setFocusable(false) gesetzt.
Jetzt ist einer von ihnen nicht mehr focusable, der andere aber immer noch.

Also das sieht für mich nach einem Java Problem aus.
 

Doc

Aktives Mitglied
Ich hab jetzt den Code umgebaut, um zu überprüfen ob es an der Reihenfolge liegt in der die Buttons geladen werden. Ist auch nicht das Problem.

zum Code:
Es macht glaub wenig Sinn ein ganzes GUI zu posten. Das sind echt viele Zeilen Code. Und was Probleme macht sind echt nur zwei Buttons, auf die der FocusListener anspringt, obwohl darauf eigentlich kein FocusListener funktionieren kann.

Hier der FocusListener:

Java:
	FocusListener focus = new FocusListener() {
			  @Override
			  public void focusLost(FocusEvent e) {
				
				System.out.println("focus Lost in TextPane "+focusedString);
				}

			  @Override
			  public void focusGained(FocusEvent e) {
				focused = (JTextPane) e.getComponent();
				focusedString =	(String) e.getComponent().getName();
				
				System.out.println("focus Gained in TextPane "+focusedString);

			  }
			};
 

Doc

Aktives Mitglied
Die Buttons werden direkt hintereinander erstellt, die können eigentlich keine Schwierigkeiten machen.

Der FocusListener kann doch garnicht auf Buttons zugreifen, oder seh ich da was falsch?

Was ich jetzt festgestellt habe:
Der Button bekommt den gleichen Focus nochmal, den der Focuslistener bereits hat. Also er wiederholt den Focus im Prinzip.
 
Zuletzt bearbeitet:

Doc

Aktives Mitglied
Der erste Button verliert den Focus beim Klicken und bekommt ihn beim Loslassen wieder an der gleichen Position.

Der zweite Button verliert den Focus beim Klicken und bekommt ihn beim Loslassen an einer anderen Position (an der ersten).

Mit "Position" meine ich die Nummer des TextPanes. Ich hab mehrere in einem GridLayout angeordnet.

Und wie gesagt passiert das nur, wenn sich die Buttons selbst mit setEnabled(false) deaktivieren sollen
 
Zuletzt bearbeitet:

Runtime

Top Contributor
Ich habs ausprobiert und der disablete Button bekommt nur dann den Focus, wenn alle anderen Componenten entweder nicht focusable oder disabled sind.
 

Doc

Aktives Mitglied
Also auf den Buttons hab ich unter anderem die Funktion, dass ich einige TextPanes entfocuse :)
Klingt so als ob du das Problem wiederholen konntest.

Aber ein Bug ist es ja trotzdem.

Trotzdem, danke dir für deine Unterstützung!


Meine Idee ist nun, den FocusListener zu Beginn des Buttons zu deaktivieren und am Ende wieder zu starten. Geht das? Und wenn ja, wie?
 

Doc

Aktives Mitglied
Edit: Zu früh gefreut. Der Fehler tritt immer noch auf :-(

Der Button verliert beim Drücken wie es sein soll den Focus, aber beim Loslassen bekommt er wieder denselben.

UPDATE:
Hab nun den setEnabled Befehl ÜBER die Stelle gesetzt an der ich an den focusierbaren Elementen was verstelle und nun scheint es etwas besser zu tun. Ich muss zwar einen Button immernoch unsinnigerweise unfokusierbar machen, und es treten weniger Probleme im Progrmamverlauf auf, allerdings hab ich nicht alle wegbekommen. Der Fehler bleibt also bestehen ;(

Durch den Programmablauf, also die Reihenfolge in der die Buttons gedrückt werden können, sollten jetzt aber keine Probleme mehr entstehen können.
 
Zuletzt bearbeitet:

diel2001

Bekanntes Mitglied
Kann es vielleicht sein, dass der Button das erste Element auf dem JPanel ist und wenn das Panel den Focus bekommt,
der Button auch wieder den Focus bekommt ???
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
G Swing JCheckBox, setEnabled(false) und HTML Text Problem AWT, Swing, JavaFX & SWT 5
H JList.setEnabled(false) - Text soll nicht grau sein AWT, Swing, JavaFX & SWT 2
J Swing JMenuItem auf setEnabled(false) setzen? AWT, Swing, JavaFX & SWT 3
Oliver530 JButton setEnabled(false) ohne Farbverlust AWT, Swing, JavaFX & SWT 3
R Swing jbutton.setEnabled(false) ohne Ausgrauung des Buttons? AWT, Swing, JavaFX & SWT 6
O JPanel.setEnabled(false); auf Kindelemente funzt net? AWT, Swing, JavaFX & SWT 6
U JTable.setEnabled(false) funktioniert nicht ! AWT, Swing, JavaFX & SWT 3
V JComboBox.setEnabled(false) AWT, Swing, JavaFX & SWT 4
S Mehere Componenten setEnabled(false) in JToolBar AWT, Swing, JavaFX & SWT 4
M Farbe bestimmen, wenn JTextField.setEnabled(false) AWT, Swing, JavaFX & SWT 6
D Swing JButton.setenabled(true) funktioniert nicht AWT, Swing, JavaFX & SWT 12
N setEnabled() - optisches Problem AWT, Swing, JavaFX & SWT 8
N Swing Nimbus arbeitet nicht korrekt korrekt bei setEnabled() für JMenuItem AWT, Swing, JavaFX & SWT 2
W setEnabled in Container Objekten (JScrollPane) AWT, Swing, JavaFX & SWT 5
R setEnabled bei eigenem Widget implementieren? AWT, Swing, JavaFX & SWT 3
G JPanel setEnabled modal AWT, Swing, JavaFX & SWT 3
meez JTree, TreeRenderer und setEnabled AWT, Swing, JavaFX & SWT 5
G jbutton mit linebreak. setEnabled geht nicht mehr AWT, Swing, JavaFX & SWT 4
_user_q Objekt.setSelected(false), wenn es nicht mehr fokussiert wird AWT, Swing, JavaFX & SWT 2
_user_q ThreadPool schedule Wert auf false setzen AWT, Swing, JavaFX & SWT 1
L LookAndFeel JInternalFrame aussehen isSelected() true vs false AWT, Swing, JavaFX & SWT 0
M Swing "Frame.setResizable(false);" verschiebt Content? AWT, Swing, JavaFX & SWT 9
F AWT requestFocusInWindow returns false on ubuntu AWT, Swing, JavaFX & SWT 0
P jframe setVisible(false) wieder sichtbar machen? AWT, Swing, JavaFX & SWT 4
H Swing Keine Rückmeldung (freeze) bei setVisible(false) oder dispose() AWT, Swing, JavaFX & SWT 4
K 2D-Grafik interstectsLine gibt immer false zurück AWT, Swing, JavaFX & SWT 18
0 JTextPane copy/paste trotz editable(false) ? AWT, Swing, JavaFX & SWT 10
R Button soll nach dem er gedrückt wurde auf setVisible(false) gestellt werden. AWT, Swing, JavaFX & SWT 3
M JTable, editCellAt liefert false AWT, Swing, JavaFX & SWT 4
C Swing JCheckBox setEditable(false)? AWT, Swing, JavaFX & SWT 9
jemandzehage setResizable(false) ändert Größe des Contentpane AWT, Swing, JavaFX & SWT 4
R Swing JDialog liefert immer false, 2 JListen verknüpfen AWT, Swing, JavaFX & SWT 3
L Swing setVisible(false) bei GridBagLayout - wie Layoutverschiebung verhindern? AWT, Swing, JavaFX & SWT 2
F JCombobox zwischen setEditable true und false switchen AWT, Swing, JavaFX & SWT 2
D CTabFolder.setSimple(false) AWT, Swing, JavaFX & SWT 8
P JPanel: setOpaque(false) funktioniert nicht AWT, Swing, JavaFX & SWT 27
DeeDee0815 JEditorPane + HTML + <img src=file> + JAR = FALSE AWT, Swing, JavaFX & SWT 3
S JTable - clearSelection() + setEditable(false) AWT, Swing, JavaFX & SWT 5
G JFrame.setVisable(false) AWT, Swing, JavaFX & SWT 6
G JTree - isLeaf auf false setzen AWT, Swing, JavaFX & SWT 6
A JInternalFrame setMaximizeable(false) wehrt sich AWT, Swing, JavaFX & SWT 2
P ProgressMonitor - isCanceled gibt immer false zurück AWT, Swing, JavaFX & SWT 2
D JDialog: kein Icon nach setResizeable(false) AWT, Swing, JavaFX & SWT 5
S Ganze Fenster auf setVisible(false) setzen AWT, Swing, JavaFX & SWT 2
A setBorderPainted(false) funktioniert nicht AWT, Swing, JavaFX & SWT 3
Juelin Problem beim Laden Controller AWT, Swing, JavaFX & SWT 1
G Problem mit der Anzeige von jLabel. Unlesbar wenn der Text geändert wird. AWT, Swing, JavaFX & SWT 28
H 2D-Grafik Problem mit Paint AWT, Swing, JavaFX & SWT 1
S Layout - Problem AWT, Swing, JavaFX & SWT 1
Tassos JavaFX/Problem mit der Maussteuerung in Stackpane AWT, Swing, JavaFX & SWT 7
sserio Java Fx - Problem AWT, Swing, JavaFX & SWT 3
A Problem Spiel auf Panel der GUI zu bringen AWT, Swing, JavaFX & SWT 1
A JavaFX Controller Problem AWT, Swing, JavaFX & SWT 1
TheWhiteShadow JavaFX ListView Problem beim Entfernen von Elementen AWT, Swing, JavaFX & SWT 1
E LayoutManager Welcher Layout-Mix löst mein Problem? AWT, Swing, JavaFX & SWT 3
Umb3rus JavaFX Problem mit PropertyValueFactory: can not read from unreadable property AWT, Swing, JavaFX & SWT 1
T Problem mit paintComponent() AWT, Swing, JavaFX & SWT 17
AmsananKING Java Menü-Problem AWT, Swing, JavaFX & SWT 1
K JavaFX Resizing-Problem beim BorderLayout (Center Component) beim Arbeiten mit mehreren FXMLs AWT, Swing, JavaFX & SWT 2
G Instance OF Problem AWT, Swing, JavaFX & SWT 9
FrittenFritze Ein Problem mit der CSSBox, die Größe wird nicht angepasst AWT, Swing, JavaFX & SWT 5
M Problem mit dem Anzeigen von Frames im Vordergrund AWT, Swing, JavaFX & SWT 5
Badebay Problem mit JButton AWT, Swing, JavaFX & SWT 2
newJavaGeek Grid-Layout problem AWT, Swing, JavaFX & SWT 7
J JavaFX Löschen im Tabelview macht Problem AWT, Swing, JavaFX & SWT 15
JavaTalksToMe JavaFx ExekutorService Problem AWT, Swing, JavaFX & SWT 2
Zrebna Problem bei Eventhandling (Value soll nach jedem erneutem Klick gelöscht werden) AWT, Swing, JavaFX & SWT 4
B Problem mit JavaFX AWT, Swing, JavaFX & SWT 5
J css Problem AWT, Swing, JavaFX & SWT 5
B JavaFX habe mein Problem fett markiert AWT, Swing, JavaFX & SWT 2
A Swing Filter-Problem AWT, Swing, JavaFX & SWT 1
temi JavaFX Problem mit IntelliJ und JavaFx 11 unter XUbuntu AWT, Swing, JavaFX & SWT 3
L Java FX Problem mit Ubuntu 18 und JavaFx AWT, Swing, JavaFX & SWT 27
H JTable TableCellEditor-Problem AWT, Swing, JavaFX & SWT 0
kodela Swing Problem mit Warten-Dialog AWT, Swing, JavaFX & SWT 16
B JavaFx Scene Builder Problem AWT, Swing, JavaFX & SWT 2
B [Problem] Java öffnet Word-Datein nicht AWT, Swing, JavaFX & SWT 14
T DataBinding Problem AWT, Swing, JavaFX & SWT 5
Blender3D Problem mit € Symbol Font Gotham Windows 10 Swing AWT, Swing, JavaFX & SWT 11
T Problem mit JTable Sortierung AWT, Swing, JavaFX & SWT 2
J Problem mit Platfrom run later AWT, Swing, JavaFX & SWT 15
J Problem mit Platfrom run later AWT, Swing, JavaFX & SWT 0
D Swing SwingUtils / Thread Problem AWT, Swing, JavaFX & SWT 3
L JavaFX Problem beim Aufrufen einer Methode AWT, Swing, JavaFX & SWT 5
T Swing Problem mit Datum und FormattedTextField AWT, Swing, JavaFX & SWT 2
S AWT Java print dialog Problem AWT, Swing, JavaFX & SWT 0
olfibits JavaFX Problem mit HTMLEditor AWT, Swing, JavaFX & SWT 0
W SWT hover-background-problem with first column in TreeViewer AWT, Swing, JavaFX & SWT 0
M Problem mit Add JScrollPane AWT, Swing, JavaFX & SWT 25
Mario1409 Swing JTextArea scroll Problem AWT, Swing, JavaFX & SWT 0
N Swing Problem mit loop AWT, Swing, JavaFX & SWT 2
S Swing Problem mit Button und ActionListener AWT, Swing, JavaFX & SWT 5
S Swing & Clean und build Problem AWT, Swing, JavaFX & SWT 12
S JLabel setText() Problem AWT, Swing, JavaFX & SWT 6
I 2D-Grafik Problem beim Ändern der Farbe eine 2d Objekts AWT, Swing, JavaFX & SWT 3
G Swing Splitpane Problem AWT, Swing, JavaFX & SWT 1
F Problem mit der FXML Rectangle Shape AWT, Swing, JavaFX & SWT 2
N JavaFX Stranges Problem mit der Autoscroll-Eigenschaft von Textareas AWT, Swing, JavaFX & SWT 0
E Java FX FXML Problem mit html Scriptausführung AWT, Swing, JavaFX & SWT 2
J JavaFX Intersect Problem mit Shapes AWT, Swing, JavaFX & SWT 10

Ähnliche Java Themen

Neue Themen


Oben