你可以禁用JButton而不会使按钮本身变灰吗? 当您使用setEnbaled(false)时,该按钮将禁用并变为灰色。是否可以禁用按钮但使按钮的外观仍然相同?
答案 0 :(得分:3)
如果设置了标记,您可以忽略ActionListener中的按钮按下;但是,如果没有将其显示为已禁用,则不应禁用该按钮:它只会混淆应用程序的用户。
答案 1 :(得分:1)
我建议设置一个ButtonModel
来覆盖setArmed
和setPressed
。具体如何覆盖它取决于你想要它做什么 - 例如,它是否应该在按下时被按下?仅为ButtonModel
设置JButton
一次。在ButtonModel
上添加或重新调整状态,以表明您希望它在任何特定时刻的行为。
显然,具有非标准行为的GUI可能会使用户感到困惑。