【发布时间】:2014-02-19 08:09:27
【问题描述】:
我无法更改 JLabel 颜色。我正在使用三个JLabel 变量。我将鼠标事件放在这个JLabel 变量上。当我在JLabels 上输入鼠标时,我运行并且两者都改变了颜色。我的想法是,当我在JLabel 变量上输入鼠标时,一个JLabel 改变了颜色。
请解决这个问题。
entry.addMouseListener(this);
entry.setOpaque(true);
profile.addMouseListener(this);
profile.setOpaque(true);
public void mouseClicked(MouseEvent mc)
{
}
public void mouseEntered(MouseEvent me)
{
entry.setBackground(color);
profile.setBackground(color);
}
public void mouseExited(MouseEvent me)
{
entry.setBackground(Color.white);
profile.setBackground(Color.white);
}
public void mousePressed(MouseEvent mp)
{
}
public void mouseReleased(MouseEvent mr)
{
}
【问题讨论】:
-
您的问题是什么?我不明白。顺便说一句,setForeground(color) 你想要什么?更改标签字体颜色。
-
您是否在问为什么当您将鼠标移到其中 一个 标签上时,为什么 两个 标签会改变颜色?在这种情况下,请尝试
me.getSource().setBackground(...)。 -
@tobias_k: 最好是
getComponent()而不是getSource(),否则你需要一个类型转换。但我认为你成功了。
标签: java swingutilities awr