Java中的Word wrap单选按钮文本?
我有一些单选按钮,它们的文本可能很长。有没有一种简单的方法来包装它们Java中的Word wrap单选按钮文本?,java,swing,radio-button,Java,Swing,Radio Button,我有一些单选按钮,它们的文本可能很长。有没有一种简单的方法来包装它们 是的,将它们包装在标记中并插入标记会起作用,但是有没有更自动的方法来实现这一点?我真的不想用我自己的排字机。把它们包装在标签中,确保它们有足够的垂直空间应该可以工作。没有必要自己打破界限。我认为没有任何完美的解决方案。除了使用标记之外,还可以使用JTextArea并使其看起来像标签。然后将lineWrap和wrapStyleWord设置为true 然后,您将失去单击标签以选择/取消选择单选按钮的功能,因此您必须添加鼠标侦听器。
是的,将它们包装在
标记中并插入
标记会起作用,但是有没有更自动的方法来实现这一点?我真的不想用我自己的排字机。把它们包装在
标签中,确保它们有足够的垂直空间应该可以工作。没有必要自己打破界限。我认为没有任何完美的解决方案。除了使用
标记之外,还可以使用JTextArea
并使其看起来像标签。然后将lineWrap
和wrapStyleWord
设置为true
然后,您将失去单击标签以选择/取消选择单选按钮的功能,因此您必须添加鼠标侦听器。最快和最脏的方法就是在单选按钮标签文本的开头添加前缀。这将使换行开始发生,但如果文本中包含<个字符,则现在需要小心。这还保持了单击标签文本的功能,即单击单选按钮 下面是一个既便宜又令人愉快的例子:
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 );
}
}
公共类测试扩展JFrame{
公共静态void main(字符串[]args){
新测试();
}
私人测试(){
容器c=getContentPane();
c、 setLayout(新的BorderLayout());
c、 添加(新的JRadioButton(“我有一个很长的文本描述,它将以很长的行换行,因为我在标签字符串的开头粘贴了一个html标记。”);
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
设置大小(200200);
setVisible(真);
}
}
能否提供代码示例?我几乎在每一个布局上都尝试过,但这对任何一个都不起作用。效果很好,这是一个简短的解决方案。这是脏的,如果你在最后放一根绳子就行了。那会更好;)既然你问得这么好!:)