0 0

JTextPane 中如何设置背景颜色并得到html代码?0

我在敲一个文本编辑器,用的是JTextPane,然后发现StyledEditorKit下面并没有设置背景色的方法。

后来我用这样的方法来设置背景色
SimpleAttributeSet aSet = new SimpleAttributeSet();
StyleConstants.setBackground(aSet, color);
StyledDocument doc = textPane.getStyledDocument();
doc.setCharacterAttributes(textPane.getSelectionStart(),textPane.getSelectionEnd()- textPane.getSelectionStart(), aSet, false);


这样的是能够显示出来效果,但是并不能通过textPane.getText();的方式得到html代码。

本来我还看到一个方式说是可以得到:

	class bgAction extends StyledEditorKit.StyledTextAction {

		public bgAction(String arg0) {
			super(arg0);
			// TODO Auto-generated constructor stub
		}

		@Override
		public void actionPerformed(ActionEvent arg0) {
			JEditorPane editor = getEditor(arg0);
			try {
				
				String selectedText = editor.getSelectedText();
				
				HTMLDocument document = (HTMLDocument) this.getStyledDocument(editor);
				
				System.out.println(document == TextView.this.document);
				
				document.remove(editor.getSelectionStart(),selectedText.length());
				
				HTMLEditorKit et = (HTMLEditorKit) this.getStyledEditorKit(editor);
				
				et.insertHTML(document, editor.getSelectionStart(), ""+ selectedText + "", 0, 0, HTML.Tag.SPAN);
				
			} catch (Exception ex) {
				ex.printStackTrace();
			}
		}

	}


但是insertHTML方法好像没有用似的,难道我哪里出错了吗?


所以我想在这里问下,能不能有个方式设置JTextPane中的背景色并且得到html代码。

问题补充:为什么没有人回答啊!
2013年7月31日 10:09
目前还没有答案

相关推荐

Global site tag (gtag.js) - Google Analytics