【问题标题】:How do I prevent button surround from displaying in Java?如何防止按钮环绕在 Java 中显示?
【发布时间】:2009-08-07 14:54:37
【问题描述】:

很抱歉,标题用词奇怪,但是,“边界”似乎是不恰当的术语。虽然确实可以使用 setBorderPainted(false) 使 JToggleButton 中图标周围的可见线不可见,但对于 JCheckBox 和 JRadioButton 来说,情况并非如此。

我不能使用 JToggleButton,因此需要使用 JCheckBox 或 JRadioButton(或我不知道的 JToggleButton 的一些衍生物),但需要方形或圆形分别在没有时不可见按钮上的图标。此外,使用 setVisible(false) 从布局中消除了按钮,但是,我需要保留空间并且不更改组件布局(使用 GroupLayout)。

有什么建议吗?我将不得不创建一个自定义渲染器吗?与此同时,我会看看这个。

【问题讨论】:

  • 我为此找到了一个便宜又简单的(阅读技巧)。我创建了一个空的透明图标,并在我不想显示任何项目时使用。

标签: java swing button


【解决方案1】:

实现这一点的途径是通过更改 UImanager 中的一些 UI 属性来自定义外观(这种东西允许您对字体和颜色进行简单的调整,大概是用于复选框或单选按钮)——但是自从我上次做那种事情以来已经很多年了,不记得细节了。

用谷歌搜索 this project 来检查当前属性值,因此至少可以帮助指出要查看的 API 的正确部分。

【讨论】:

    【解决方案2】:

    你必须在这里选择:

    1) 如前一条目所述自定义外观。

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

    【讨论】:

      【解决方案3】:

      我为此找到了一个便宜且简单的(阅读技巧)。我创建了一个空的透明图标,并在我不想显示任何项目时使用它。

      【讨论】:

        猜你喜欢
        • 2018-06-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-08-22
        • 2014-03-27
        • 1970-01-01
        • 1970-01-01
        • 2022-01-11
        相关资源
        最近更新 更多