标题说明了一切。假设我有一个右键菜单,其中包含" Strikethrough选择的文字"选项。当我在jtextpane中选择了一些文本时,右键单击 - > " Strikethrough选择了文字" ,并且选定的文本会受到严重影响。
有什么想法吗?
答案 0 :(得分:2)
Swing文本组件使用Actions
来提供文本窗格的各种格式设置功能。</ p>
以下是UnderlineAction
的{{1}}代码。
StyledEditorKit
所以基本上你需要创建自己的&#34; StrikeThroughAction&#34;通过替换&#34;下划线&#34; StyleConstants方法使用&#34;删除线&#34; StyleConstants方法。
创建Action后,您可以通过使用Action创建JMenuItem或JButton来使用Action。单击该组件后,将通过属性添加到所选文本中。
答案 1 :(得分:0)
右键单击操作
objJTextPane.setContentType( "text/html" );
String[] args = objJTextPane.getText().split(objJTextPane.getSelectedText());
objJTextPane.setText("<strike>" + objJTextPane.getSelectedText() + "</strike>"+ args[1].toString());
在拆分字符串时应用你的逻辑。