我有一些单选按钮,其文本可能很长。有没有简单的方法来换行它们?
是的,将它们包装在<html>
标签中并插入<br>
标签会起作用,但是有没有更自动的方法来实现这一点?我真的不想推出自己的排字机。
我有一些单选按钮,其文本可能很长。有没有简单的方法来换行它们?
是的,将它们包装在<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 <html> tag at the start of its label string.</html>") );
setDefaultCloseOperation( WindowConstants.EXIT_ON_CLOSE );
setSize( 200,200 );
setVisible( true );
}
}
我不认为有任何完美的解决方案。除了使用<br>
标签之外,您还可以使用 aJTextArea
并使其看起来像一个标签。然后设置lineWrap
和wrapStyleWord
。true
然后,您将失去单击标签以选择/取消选择单选按钮的功能,因此您必须添加鼠标侦听器。
将它们包装在<html>
标签中并确保它们获得足够的垂直空间应该可以工作。无需自己打破界限。