Java 如何更改将在JTextPane中键入的下一个字符的样式
我有一个问题,我无法更改将在Java 如何更改将在JTextPane中键入的下一个字符的样式,java,eclipse,jtextpane,Java,Eclipse,Jtextpane,我有一个问题,我无法更改将在JTextPane中键入的下一个字符的样式,因此我不想更改整个JTextPane的样式,而只更改下一个字符的样式。 例如,如果我使用这个: tekst.getStyledDocument().setCharacterAttributes(0, tekst.getStyledDocument().getLength() + 1, at, false); 整个文本都有样式,但我不希望发生这种情况 谁能告诉我该怎么办 我正在尝试将样式从光标位置更改为将来在JTextPan
JTextPane
中键入的下一个字符的样式,因此我不想更改整个JTextPane
的样式,而只更改下一个字符的样式。
例如,如果我使用这个:
tekst.getStyledDocument().setCharacterAttributes(0, tekst.getStyledDocument().getLength() + 1, at, false);
整个文本都有样式,但我不希望发生这种情况
谁能告诉我该怎么办
我正在尝试将样式从光标位置更改为将来在JTextPane中输入的字母
tekst1.addMouseListener(new MouseAdapter() {
@Override
public void mouseReleased(MouseEvent arg0) {
selektovaniTxt = tekst1.getSelectedText();
pozicija = tekst1.getCaretPosition();
System.out.println("Pozicija je: "+pozicija);
//some style
Style st1= tekst1.addStyle("default1", null);
StyleConstants.setFontSize(st1, new Integer(30));
StyleConstants.setFontFamily(st1, "Verdana");
tekst1.getStyledDocument().setCharacterAttributes(pozicija, tekst1.getStyledDocument().getLength()+1, tekst1.getStyle("default1"), true);
if(selektovaniTxt!=null){
//selektovan=true;
//tekst1.replaceSelection("");
}
}
});
你说的风格是指字体吗?文本大小?是的,我的意思是字体、文本大小等。只是澄清一下,当您在jtextpane中键入字符串时,您只希望框中的最后一个字母的样式不同,即末尾的z将不同。管道“|”表示文本光标?如果我有一句话,这个字符串就是normalZ,例如:我的名字是Nedim。设置为一种样式,当我在JComboBox中更改字体时,我希望下一个句子使用该字体,而不是同时更改两个句子。我正在尝试从光标位置为在JTextPane中输入的未来文本设置样式: