代码之家  ›  专栏  ›  技术社区  ›  Awaken

JTextArea或JTextPane中文本居中-水平文本对齐

  •  29
  • Awaken  · 技术社区  · 14 年前

    有没有办法像使用jtextfield一样为jtexarea创建水平居中的文本?

    setHorizontalAlignment(JTextField.CENTER);
    

    有没有一种方法可以用多行文本区域完成相同的事情?我找不到jtextarea的方法,还有其他选择吗?JTextPane?如果是这样,怎么办?

    1 回复  |  直到 10 年前
        1
  •  58
  •   camickr    10 年前

    您需要使用JTextPane并使用属性。以下内容应使所有文本居中:

    StyledDocument doc = textPane.getStyledDocument();
    SimpleAttributeSet center = new SimpleAttributeSet();
    StyleConstants.setAlignment(center, StyleConstants.ALIGN_CENTER);
    doc.setParagraphAttributes(0, doc.getLength(), center, false);
    

    编辑:

    据我所知,垂直居中不受支持。下面是一些您可能会发现有用的代码: Vertical Alignment of JTextPane