我有两个不同大小的jbuttons。我把更小的jbutton放在更大尺寸的其他jbutton上。我还将MouseListener添加到更大的jbutton,它正在鼠标OnClick上执行一些操作。
问题在于,当鼠标超过较小尺寸的jbutton时,我想将鼠标的控制从较大尺寸的jbutton更改为较小尺寸的jbutton,这是目前尚未发生的。
当我点击较小尺寸的jbutton时,不会执行任何操作。
任何人都可以告诉我如何解决这个问题。
代码段:
CustomButtom button1 = new CustomButton(icon, null, null);
CustomButton button2 = new CustomButton(icon1, iconRollover, iconPressed);
button1.setBounds(new Rectangle(542,14,115,86));
button2.setBounds(new Rectangle(634,79,24,22));
button1.addMouseListener(new MouseListener(){
@Override
public void mouseClicked(){
performing some task
}
//rest of the methods are same.
});
class CustomButton extends JButton()
{
public CustomButton(Icon icon, Icon rollover, Icon pressed)
{
super(icon);
setRolloverEnabled(false);
setRolloverIcon(rollover);
setPressedIcon(pressed);
setContentAreaFilled(false);
}
}
由于 Jyoti
答案 0 :(得分:1)
在您的示例代码中,您永远不会向Button2添加侦听器,因此它永远不会获得鼠标事件。