我的GUI有一个从db文件筛选出的条目列表。对于每个条目,我都有一个selectjbutton,它显示每个条目的更多细节。
我试图实现的是让selectjbutton在按下时更改颜色,并在选择其他条目的按钮时恢复为原始颜色。
我目前拥有的代码将很好地更改所选颜色的按钮,但在选择其他条目的“详细信息”按钮时仍保持相同的颜色:
//within for loop for each object in database
JButton selectedButton = new JButton("Details");
selectButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
entry.vehicleSelected();
if(e.getSource() instanceof JButton )
((JButton)e.getSource()).setBackground(Color.RED);
((JButton)e.getSource()).setOpaque(true);
((JButton)e.getSource()).setContentAreaFilled(false);
}});
如何更改代码以获得此效果?
您可以在保存上次按下按钮的位置引入一个字段JButton button重置
,并使用它
public void actionPerformed(ActionEvent e) {
entry.vehicleSelected();
if(e.getSource() instanceof JButton )
((JButton)e.getSource()).setBackground(Color.RED);
((JButton)e.getSource()).setOpaque(true);
((JButton)e.getSource()).setContentAreaFilled(false);
if (buttonToReset!=null) {
buttonToReset.setBackground(UIManager.getColor("Button.background"));
}
buttonToReset = ((JButton)e.getSource());
}});
问题内容: 我正在编写一个简单的扫雷游戏,现在可以运行,但是我正在处理一些漂亮的细节,例如使每个数字使用不同的颜色。 尝试在上设置文本颜色时,我总是遇到错误。我可以很容易地更改文本和背景,但是不能专门更改文本颜色。 导致一切混乱的部分是: 由于某种原因,我的错误是: 每当我尝试编译时都会发生这种情况,但是当我将其更改为说而不是正常工作时,就会发生这种情况。 问题答案: 对于JButton未定义。要
我有一个带有ActionListener的JRadioButton,但我不知道如何在点击另一个面板时触发JButton的图标更改。下面列出了两者的代码。选择正确的单选按钮后,图像需要从左键切换到右键。 }
问题内容: 在浏览器中选择文本时,大多数情况下选中的文本后面的背景会变为蓝色。如何将这种颜色更改为另一种颜色? 问题答案: 您正在寻找伪元素。 另外,作为旁注。如果你计划在所有使用文本的影子在你的网站,我建议将你的造型。正如你可以看到在这个小提琴,它的眼睛真的很辛苦。
我意识到这听起来很像已经发布在那里的许多问题,但是请继续阅读;这有一个看似相似的问题,但并没有与已经提供的许多解决方案一起工作。 我目前正在操作系统X和视窗系统上用Eclipse写Java。使用操作系统X,我有一个JButton,从. setEnable(true)到. setEnable(false)。当这种情况发生时,当它被禁用时,我通过. setbackground(某种颜色)改变它的背景颜
问题内容: 我有一个我想将背景颜色更改为白色的。使用“金属外观”时,我可以通过以下方式实现所需的效果setBackground: 具有白色背景的金属外观风格的JButton 不幸的是,使用Windows LAF时,“背景色”的概念有所不同。背景颜色是按钮周围绘制的颜色: Windows外观风格的JButton,带有白色背景 我想使用Windows LAF,但允许将此按钮的颜色JButton更改为白
问题内容: 我有一个选择元素,其中包含多个项目。我想更改其第一项的颜色,但似乎仅在单击选择下拉菜单时才会显示颜色。我想要的是在加载页面时更改颜色(例如灰色),以便用户可以看到第一个选项的颜色是不同的。 CSS: HTML: 问题答案: 那这个呢: