Hello I got a problem with panning

I am not sure what I am doing wrong, but my image flickers like crazy and the mouse doesn’t stay on the starting point in the image. It keeps moving but at a very slow rate.

Below is the code that my mouse event calls, the class is extends JSrollPane() if you know of any sample codes to do panning would love to know. Thanks

 

       int viewPortX =  this.getHorizontalScrollBar().getValue();

                   int viewPortY = this.getVerticalScrollBar().getValue();

                    if(startPoint.x > evt.getX())

                    {

 

                     viewPortX = viewPortX + ((startPoint.x - evt.getX()));

                    }

                    else

                    {

                        if(startPoint.x < evt.getX())

                        {

 

                           viewPortX = viewPortX - ((evt.getX() - startPoint.x));

                        }

                    }

 

                    if(startPoint.y > evt.getY())

                    {

                        viewPortY = viewPortY + ((startPoint.y - evt.getY()));

                    }

                    else

                    {

                        if(startPoint.y < evt.getY())

                        {

                           viewPortY = viewPortY - ((evt.getY() - startPoint.y));

                        }

                    }

                   startPoint = evt.getPoint();

 

                   if(this.getHorizontalScrollBar().getMinimum() > viewPortX)

                        viewPortX = this.getHorizontalScrollBar().getMinimum();

 

                   if(this.getHorizontalScrollBar().getMaximum() < viewPortX)

                        viewPortX = this.getHorizontalScrollBar().getMaximum();

 

                   if(this.getVerticalScrollBar().getMinimum() > viewPortY)

                        viewPortY = this.getVerticalScrollBar().getMinimum();

 

                   if(this.getVerticalScrollBar().getMaximum() < viewPortY)

                        viewPortY = this.getVerticalScrollBar().getMaximum();

 

                   this.getHorizontalScrollBar().setValue(viewPortX);

                   this.getVerticalScrollBar().setValue(viewPortY);

 

 

Jorge Acon Chan 

 

e-vis Pty. Ltd

14-16 Yarra Street

South Yarra, VIC 3141

Tel: (03) 9829 1918

Fax:(03) 9829 1999

Web: www.e-vis.com.au

E-mail: [EMAIL PROTECTED]

 

 

=========================================================================== To unsubscribe, send email to [EMAIL PROTECTED] and include in the body of the message "signoff JAVA2D-INTEREST". For general help, send email to [EMAIL PROTECTED] and include in the body of the message "help".

Reply via email to