Frage

Ich mache einen ziemlich einfachen Text-Editor, und ich habe eine Frage zu meinem Schaltflächen. Wenn ich Text markieren und klicken Sie auf meine „bold“ Knopf, wie der Text bolds erwartet, aber meine Auswahl ist nicht mehr sichtbar ist. Ich kann immer noch nicht fett die Auswahl, Kursiv es, oder unterstreichen, aber man kann einfach nicht sehen, was ausgewählt wird. Also, ich frage mich, ob es eine Einstellung, die mir erlauben, den Knopf zu klicken, aber meine Auswahl halten? Ich versuchte, einen JMenuItem anstelle eines JButton, und das schien zu funktionieren, aber dann machte es meine Symbolleiste Aussehen sehr schlecht. Beispielcode unten.

//frame and pane creation up here
JToolBar tool = new JToolBar();
JToggleButton boldButton = new JToggleButton("Bold");
boldButton.addActionListener(new StyledEditorKit.BoldAction());
tool.add(boldButton);

Jede Hilfe sehr geschätzt wird.

War es hilfreich?

Lösung

  

Also, ich frage mich, ob es eine Einstellung, die mir erlauben, den Knopf zu klicken, aber meine Auswahl halten?

boldButton.setFocusable( false );

Andere Tipps

Wie Sie die Auswahl bemerkt haben, gibt es immer noch, aber auf der Symbolleiste auf die Schaltfläche klicken, entfernt den Fokus aus dem Textbereich und Häuten der Auswahl. Sie müssen den Fokus wieder mit requestFocus . Allerdings müssen Sie Ihre eigene Aktion Hörer schreiben den Fokus Code hinzufügen -. Sie BoldAction dies zu tun verlängern könnte

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top