java - 为两个不同的 JButton 设置不同的禁用颜色? (UIManager.getDefaults 更改两个按钮)

标签 java swing colors jbutton

我试图让一个按钮有一个禁用的红色文本和另一个禁用的蓝色文本,但是当使用下面的代码时,它所做的只是让它们都变成红色。

有解决这个问题的简单方法吗?

UIManager.getDefaults().put("Button.disabledText",Color.BLUE);
button1.setEnabled(false);
UIManager.getDefaults().put("Button.disabledText",Color.RED);
button2.setEnabled(false);

最佳答案

外观由用户选择的外观中指定的 ButtonUI 决定。如果您正在创建自己的 L&F,您可以覆盖 getDisabledTextColor() .这个相关example可能会建议如何进行。虽然这在技术上是可行的,但我不确定用户会如何理解这种差异。

虽然这与您的需求无关,但 JTextComponent 的后代提供了 setDisabledTextColor()为此目的。

关于java - 为两个不同的 JButton 设置不同的禁用颜色? (UIManager.getDefaults 更改两个按钮),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7974547/

相关文章:

java - 按钮在右侧对齐不正确,并且右侧组件的尺寸太大

Java JTable 数据加载

r - R 中的基本 2D 颜色平滑

d3.js - 使用 d3 比例时是否可以设置色彩空间插值?

java - 订阅 Observable 不会执行任何操作

java - 创建同一个类的实例时,出现类的 noClassDefFoundError 错误。为什么会这样?

java - 没有网络服务器的 Spring Cloud Starter Eureka

java - 传递在一个 JFrame 的文本字段中输入的值作为另一个 JFrame 的输入参数

javascript - 防止 Edge 和 Chrome 更改自动成形上的颜色

java - 使用 spring 版本 2.5.7 的 Spring Boot 无法使用 jdk 1.8 重新打包