如何防止按钮环绕显示在Java中?

时间:2009-08-07 14:54:38

标签: java swing button

对于标题中奇怪的单词选择感到抱歉,然而,“边界”似乎是不恰当的用语。虽然使用setBorderPainted(false)可以使JToggleButton中的图标周围的可见线变为不可见,但JCheckBox和JRadioButton的情况也是如此。

我无法使用JToggleButton,因此需要使用JCheckBox或JRadioButton(或者我不知道的JToggleButton的某些衍生物),但是当没有时,需要分别使用方形或圆形不可见按钮上的图标。此外,使用setVisible(false)会从布局中删除按钮,但是,我需要保留空间而不要更改组件布局(使用GroupLayout)。

有什么建议吗?我是否必须创建自定义渲染器?我会在同一时间看着它。

3 个答案:

答案 0 :(得分:1)

通过改变UImanager中的一些UI属性(可以让你使用字体和颜色进行简单的调整,可能是用于复选框的图像或radiobuttons) - 但是自从我上次做这类事以来已经很多年了,不记得细节了。

一个小小的谷歌搜索出现this project来检查当前的属性值,所以至少可以帮助指出正在查看的API的正确部分。

答案 1 :(得分:0)

你必须在这里做出选择:

1)按照上一条目中的说明自定义外观。

2)通过继承现有的自定义控件并覆盖组件绘制来创建自己的自定义控件。

答案 2 :(得分:0)

我为此找到了一个便宜又容易(阅读黑客)。我创建了一个空的透明图标,并在我不想显示任何项目时使用它。