java – JRadioButton border / padding / insets / margin …无论你怎么称呼它

在我的
Java应用程序中,我试图创建一个非常简单的表单,在表单的每一行上都有一个标签和一组控件.想象一下这个粗略的ASCII图:

   Result 1: (*) pass  ( ) fail
   Result 2: ( ) pass  (*) fail
Error Count: [10______]
Explanation: [Operator overload___]

令人讨厌的是,JRadioButtons没有与其他控件对齐,因为它们周围有大量的填充,将它们向右推动几个像素并在线之间添加大量空间.我最终得到这样的东西:

   Result 1:   (*) pass  ( ) fail

   Result 2:   ( ) pass  (*) fail

Error Count: [10______]
Explanation: [Operator overload___]

如何让单选按钮停止拥有如此多的空白区域,以便它们可以与其他所有内容完美排列?如果重要,那就是使用GTK L& F;我还没有尝试在Windows下运行该程序.

最佳答案 看起来有两个罪魁祸首:

>包含两个单选按钮的mini-JPanel有一个FlowLayout,默认情况下在每个组件周围添加5个像素的填充.
>执行radioButton.setBorder(null)可以消除按钮周围另一个像素的空间.不过,当它们有焦点时,它还会拧紧围绕它们绘制的虚线.

点赞