4

我希望单击它的按钮永远不会改变背景颜色,默认情况下颜色将变为浅蓝灰色。

所以这是我的代码

JButton b = new JButton();
b.setBackground(SystemColor.control);

我希望按钮在单击时永远不会改变背景颜色。

4

2 回答 2

2

按钮的涂漆取决于 LAF。您可以执行以下操作之一:

  1. 定义您自己的 UI 委托并将其分配给按钮。 缺点:复杂,破坏LAF。
  2. 扩展JButton和实施paintComponent()缺点:您需要自己绘制按钮的标签。
  3. 通过调用完全删除按钮的背景绘画setContentAreaFilled(false),然后在不透明面板中添加具有所需背景颜色的按钮。 优点:按钮不变,LAF没有坏。 缺点:您需要为每个按钮创建一个面板,并对其进行调整以完全适合按钮,这可能非常困难,具体取决于布局。
于 2010-07-06T14:22:17.873 回答
1

您可以修改用于背景和前景的颜色。您如何操作取决于您使用的外观和感觉。

如果您使用 Nimbus,这里有一个颜色列表,这里一篇关于如何更改颜色的文章。这是另一篇可能会有所帮助的文章

于 2010-07-06T13:11:53.367 回答