MouseAdapter Bug ??????
I have a JPanel with two JButtons. Each button and the JPanel itself
have the same class type of extended MouseAdapter added. Code for the
Adapter as follows:
public class CursorContextListener extends MouseAdapter{
public void mouseEntered(MouseEvent e){
Component component = e.getComponent();
if(component instanceof JButton){
component.setCursor(new Cursor(Cursor.HAND_CURSOR));
}
else{
component.setCursor(new Cursor(Cursor.DEFAULT_CURSOR));
}
}
}
When the JFrame is instantiated, Button1.setVisible(true) and
Button2.setVisible(false) are called.
If the user clicks Button1, following occurrs:
Button2.setVisible(true)
Button1.setText("new text")
When user clicks Button2, following occurrs
Button2.setVisible(false)
Button1.setText("original text")
Here's the problem:
In the initial state the cursor behaves as designed - ie. it changes to
a hand when moved to any button. But after Button1 is clicked, the
cursor never changes to hand for Button1 and intermittently changes to
hand for Button2.
Pseudo code for button listeners:
Button1.addActionListener(new ActionListener(){
public void actionPerformed(){
if(text == "original text"){
Button2.setVisible(true)
Button1.setText("new text")
}
else
...do something
}
})
Button2.addActionListener(new ActionListener(){
public void actionPerformed(){
Button2.setVisible(false)
Button1.setText("original text")
}
})
Can anyone tell me if I'm doing something wrong or is this a java bug.
Using java 1.5
Thanks in advance
Guy