簡體   English   中英

Java中的自動換行單選按鈕文本?

[英]Word-wrap radio button text in Java?

我有一些單選按鈕,其文字可能很長。 是否有一種簡單的方法來自我封裝?

是的,將它們包裝在<html>標簽中並插入<br>標簽會起作用,但是有更自動的方法來實現這一點嗎? 我真的不想推出自己的排字機。

最快捷最簡單的方法就是在單選按鈕標簽文本的開頭添加<html>。 這將使換行開始發生,但如果文本中有<字符,您現在需要小心該文本。 這還保持了單擊標簽文本的功能,即單擊單選按鈕。

這是一個廉價而開朗的例子:

public class Test extends JFrame {
    public static void main(String[] args) {
        new Test();
    }

    private Test() {
        Container  c = getContentPane();
        c.setLayout( new BorderLayout() );
        c.add( new JRadioButton( "<html>I've got a very long text description that's going to wrap over very long lines because I stuck an &lt;html&gt; tag at the start of its label string.</html>") );
        setDefaultCloseOperation( WindowConstants.EXIT_ON_CLOSE );
        setSize( 200,200 );
        setVisible( true );
    }
}

我認為沒有任何完美的解決方案。 除了使用<br>標簽之外,您還可以使用JTextArea並使其看起來像標簽。 然后將lineWrapwrapStyleWord設置為true

然后,您將失去單擊標簽以選擇/取消選擇單選按鈕的功能,因此您必須添加鼠標偵聽器。

將它們包裝在<html>標簽中並確保它們獲得足夠的垂直空間應該有效。 不需要自己打破線條。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM