0
public class Text extends JPanel {

private String text;


    public Text()
    {
    this.setPreferredSize(new Dimension(20,20));
    setFont (new Font(text, Font.PLAIN, 24));
    text = "";
    }

    public void showUnderline()
    {

    Hashtable<TextAttribute, Object> map = new Hashtable
    <TextAttribute, Object>();

    map.put(TextAttribute.UNDERLINE, TextAttribute.UNDERLINE_ON);   
    }

文本对象将在另一个类中创建。在那个类中,我需要用 showUnderline 方法给它加下划线。该方法似乎不完整。
我正在为 java 专有方法拍摄,这意味着没有 HTML。
如何将文本链接到 showUnderline 方法?

4

1 回答 1

4

你是什​​么意思'java独有的方法,意味着没有HTML'?您可能正在寻找 JLabel,您可以在其中放入非常简单的 html。这是谷歌上的第一个结果:

http://www.apl.jhu.edu/~hall/java/Swing-Tutorial/Swing-Tutorial-JLabel.html

它有一个使文本具有不同颜色、字体和粗体或斜体的示例。您可能只需要执行以下操作:

JLabel label = new JLabel("<u>MY TEXT</u>",JLabel.CENTER);

从那里,您可以像放置任何其他 JComponent 一样放置它。

如果你真的不想要 HTML,你可以使用 JTextPane。这是一个例子:

http://www.exampledepot.com/egs/javax.swing.text/style_hilitewords2.html

于 2012-04-08T19:19:56.870 回答