-
Bug
-
Resolution: Not an Issue
-
P4
-
1.3.0, 6
-
x86
-
windows_nt, windows_xp
Name: yyT116575 Date: 02/08/2001
java version "1.3.0"
Java(TM) 2 Runtime Environment, Standard Edition (build
Java HotSpot(TM) Client VM (build 1.3.0-C, mixed mode)
When you add a tooltip to a JLabel, you no longer can listen for MouseMotion
events in any Container behind that JLabel. For example, I added a JLabel to
the JFrame and added a MouseMotionListener to the JFrame. The JFrame sees the
MouseMotion events even when you move across the label. The minute you add a
tooltip to the JLabel, the MouseMotion events are not propogated to the JFrame.
The bug report #4234237 incorrectly closed this as not reproducible. Their
code added the listener to the label, not the JFrame or JPanel.
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
public class MyFrame extends JFrame {
public MyFrame() {
JLabel l1 = new JLabel("This is my label");
/* comment out following line, then MouseEvent will be triggered
* but not tooltip shows up.
*/
l1.setToolTipText("tooltip1");
this.addMouseMotionListener(new MouseMotionListener(){
public void mouseDragged(MouseEvent e){
System.out.println("Dragged " + e.getX() + " " + e.getY());
}
public void mouseMoved(MouseEvent e){
System.out.println("Moved " + e.getX() + " " + e.getY());
}
});
getContentPane().add(l1, BorderLayout.SOUTH);
setSize(200,200);
setVisible(true);
}
public static void main(String args[]){
MyFrame m = new MyFrame();
}
}
(Review ID: 116608)
======================================================================
java version "1.3.0"
Java(TM) 2 Runtime Environment, Standard Edition (build
Java HotSpot(TM) Client VM (build 1.3.0-C, mixed mode)
When you add a tooltip to a JLabel, you no longer can listen for MouseMotion
events in any Container behind that JLabel. For example, I added a JLabel to
the JFrame and added a MouseMotionListener to the JFrame. The JFrame sees the
MouseMotion events even when you move across the label. The minute you add a
tooltip to the JLabel, the MouseMotion events are not propogated to the JFrame.
The bug report #4234237 incorrectly closed this as not reproducible. Their
code added the listener to the label, not the JFrame or JPanel.
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
public class MyFrame extends JFrame {
public MyFrame() {
JLabel l1 = new JLabel("This is my label");
/* comment out following line, then MouseEvent will be triggered
* but not tooltip shows up.
*/
l1.setToolTipText("tooltip1");
this.addMouseMotionListener(new MouseMotionListener(){
public void mouseDragged(MouseEvent e){
System.out.println("Dragged " + e.getX() + " " + e.getY());
}
public void mouseMoved(MouseEvent e){
System.out.println("Moved " + e.getX() + " " + e.getY());
}
});
getContentPane().add(l1, BorderLayout.SOUTH);
setSize(200,200);
setVisible(true);
}
public static void main(String args[]){
MyFrame m = new MyFrame();
}
}
(Review ID: 116608)
======================================================================
- duplicates
-
JDK-6534284 setAutoscrolls(true) eats mouse events when it shouldn't
-
- Closed
-
- relates to
-
JDK-4769783 Adding a mouselistener to JScrollPanes viewport causes the pane to lose tooltip
-
- Closed
-
-
JDK-6180941 REGRESSION: JTabbedPane w/SCROLL_TAB_LAYOUT & mouselistener can't be tabbed
-
- Closed
-