我有一些单选按钮的文字可能很长。有没有简单的方法来包装它们?Java中的单词换行单选按钮文本?
是的,包装在<html>
标签和插入<br>
标签会工作,但有没有更自动的方式来实现这一点?我真的不想推出自己的排字机。
我有一些单选按钮的文字可能很长。有没有简单的方法来包装它们?Java中的单词换行单选按钮文本?
是的,包装在<html>
标签和插入<br>
标签会工作,但有没有更自动的方式来实现这一点?我真的不想推出自己的排字机。
将它们包装在<html>
标签中,并确保它们能够获得足够的垂直空间。无需自行断线。
我不认为有任何完美的解决方案。除了使用<br>
标签之外,您可以使用JTextArea
并使其看起来像一个标签。然后将lineWrap
和wrapStyleWord
设置为true
。
然后,您失去了单击标签以选择/取消选择您的单选按钮的功能,因此您将不得不添加鼠标侦听器。
最快最肮脏的方法是简单地在单选按钮的标签文本开始前加上<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);
}
}
工作得很好,是一个简短的解决方案。它很脏,如果你把
你能提供一个代码示例?我几乎在每个布局中都尝试过这种方法,但这并不适用于其中的任何一种布局。 – 2009-06-04 15:48:27