问题
Is there a way to indent a block of text in a JTextPane
?
import javax.swing.*;
import java.awt.*;
import javax.swing.text.StyledDocument;
public class SimpleTextPane {
public static void main(String... args){
JFrame frame = new JFrame();
JTextPane textPane = new JTextPane();
textPane.setPreferredSize(new Dimension(400, 400));
StyledDocument doc = textPane.getStyledDocument();
try {
doc.insertString(doc.getLength(), "Now he has departed from this strange world a little ahead of me. That means nothing. People like us, who believe in physics, know that the distinction between past, present, and future is only a stubbornly persistent illusion", doc.getStyle(""));
doc.insertString(doc.getLength(), "\n\n" + "I WOULD LIKE TO BE INDENTED Yes, we have to divide up our time like that, between our politics and our equations. But to me our equations are far more important, for politics are only a matter of present concern. A mathematical equation stands forever.", doc.getStyle(""));
} catch (Exception e) {
}
frame.getContentPane().add(new JScrollPane(textPane));
frame.setLocationRelativeTo(null);
frame.pack();
frame.setVisible(true);
}
}
回答1:
EDIT:
Use setLeftIndent()
Check this example and this one
来源:https://stackoverflow.com/questions/7052061/jtextpane-indentation