Java Swing - 如何保留在JEditorPane中的空HTML行上的格式
我們想知道如何保留在JEditorPane中的空HTML行上的格式。
import javax.swing.JEditorPane;
import javax.swing.JFrame;
import javax.swing.text.AttributeSet;
import javax.swing.text.StyleConstants;
import javax.swing.text.html.HTMLEditorKit;
public class Main {
JEditorPane jep = new JEditorPane();
public Main() {
String html = "<html><head></head><body>"
+ "<p style = \"font-weight:bold; color: blue\">Line 1</p><br />"
+ "<p style = \"font-weight:bold; color: red\"></p><br />"
+ "<p style = \"font-weight:bold; color: green\">Line 3</p>"
+ "</body></html>";
jep.setContentType("text/html");
jep.setText(html);
JFrame frame = new JFrame();
frame.getContentPane().add(jep);
frame.pack();
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
System.out.println("Line 3 is " + isInputAttributeBold());
jep.getCaret().setDot(8);
System.out.println("Line 2 is " + isInputAttributeBold());
}
private boolean isInputAttributeBold() {
AttributeSet attSet = ((HTMLEditorKit) jep.getEditorKit())
.getInputAttributes();
return StyleConstants.isBold(attSet);
}
public static void main(String[] args) {
new Main();
}
}