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 に答える