Search code examples
javascrollblockjeditorpane

MouseWheelListener block scroll


    JEditorPane.addMouseWheelListener(new MouseWheelListener() {
        public void mouseWheelMoved(MouseWheelEvent e) {
        }
    });

When I add these lines - in the JEditorPane scroll stops working. How can it be cured?


Solution

  • You should post more of your code to get better help. However, this simple demo worked fine for me (i.e. scrolling still works after adding the MouseWheelListener to the JScrollPane).

    import java.awt.event.MouseWheelEvent;
    import java.awt.event.MouseWheelListener;
    
    import javax.swing.JEditorPane;
    import javax.swing.JFrame;
    import javax.swing.JScrollPane;
    
    public class Frame
    {
        public static void main( String[] args )
        {
            JFrame frame = new JFrame( );
            JEditorPane pane = new JEditorPane( );
    
            String t = "";
            for ( int i = 0 ; i < 10000 ; i++ ) t += "t";
    
            pane.setText( t );
    
            JScrollPane scroll = new JScrollPane( pane );
    
            scroll.addMouseWheelListener( new MouseWheelListener( )
            {
                @Override
                public void mouseWheelMoved( MouseWheelEvent e )
                {
                    System.out.println( "Scroll" );
                }
            });
    
            frame.add( scroll );
            frame.setSize( 400, 400 );
            frame.setVisible( true );
        }
    }