Hallo,
ich habe ein Objekt, welches eine Beschreibung mit HTML Tags enthält (die Beschreibung wird über ein JEditorPane eingegeben). Ich möchte dem Nutzer ermöglichen den Text, durch markieren und Button drücken, zu formatieren, also einfache Dinge wie fett, farbig, etc. Dies geschieht ebenfalls über ein JEditorPane (wegen HTML).
Jetzt habe ich aber ein Problem. Ich weiß nicht wirklich wie ich den selektierten Text mit den entsprechenden Tags versehen soll. Natürlich durch einfügen der Tags in den Text, aber das Problem ist eher, dass ich die Methode getSelectedText() nicht anwenden kann, weil es den Text eventuell öfter in der Beschreibung gibt. In Kombination mit replace() (neuer Text + Tags) hätte das schlechte Nebenwirkungen.
Die Methode getSelectedStart()/getSelectedEnd() bringt mir leider auch nichts, da sich dieser Wert auf den Text an sich bezieht und die HTML Tags dabei nicht beachtet werden. Im String (egal ob es sich um die Beschreibung handelt, oder den Rückgabewert von getText()) werden die HTML Tags mitgezählt, was die Differenz zum JEditorPane ausmacht.
So langsam gehen mir die Ideen aus...
Habt ihr eventuell Vorschläge, wie ich das machen könnte? Ein formatierter Text ist halt schon hilfreich um Informationen hervorzuheben.
ich habe ein Objekt, welches eine Beschreibung mit HTML Tags enthält (die Beschreibung wird über ein JEditorPane eingegeben). Ich möchte dem Nutzer ermöglichen den Text, durch markieren und Button drücken, zu formatieren, also einfache Dinge wie fett, farbig, etc. Dies geschieht ebenfalls über ein JEditorPane (wegen HTML).
Jetzt habe ich aber ein Problem. Ich weiß nicht wirklich wie ich den selektierten Text mit den entsprechenden Tags versehen soll. Natürlich durch einfügen der Tags in den Text, aber das Problem ist eher, dass ich die Methode getSelectedText() nicht anwenden kann, weil es den Text eventuell öfter in der Beschreibung gibt. In Kombination mit replace() (neuer Text + Tags) hätte das schlechte Nebenwirkungen.
Die Methode getSelectedStart()/getSelectedEnd() bringt mir leider auch nichts, da sich dieser Wert auf den Text an sich bezieht und die HTML Tags dabei nicht beachtet werden. Im String (egal ob es sich um die Beschreibung handelt, oder den Rückgabewert von getText()) werden die HTML Tags mitgezählt, was die Differenz zum JEditorPane ausmacht.
So langsam gehen mir die Ideen aus...
Habt ihr eventuell Vorschläge, wie ich das machen könnte? Ein formatierter Text ist halt schon hilfreich um Informationen hervorzuheben.