我目前的java版本是:
$java -version
java version 1.8.0_40
我是一个非常新的摇摆和尝试编写我的第一个扫雷应用程序。现在,我需要在点击它时禁用按钮并打印多个相邻的地雷(具有相应的文字颜色取决于数字:1-蓝色,2 - 绿色,3 - 红色等)。正如this answer中所建议的那样,我写了以下内容:
JFrame frame = new JFrame("Hello swing");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel panel = new JPanel();
JButton button = new JButton();
button.addActionListener((ActionEvent ev) -> {
button.setSelected(true);
button.setText("<html><font color = red>3</font></html>");
button.setEnabled(false); });
但禁用时仍然会变灰:
但启用按钮看起来就像我想要的那样:
如何解决这个问题?如何通过禁用按钮解决此问题?
答案 0 :(得分:2)
也许你知道一些解决方法
使用图标而不是文字。
然后你可以使用:
JButton button = new JButton( icon3 );
button.setDisabledIcon( icon3 );