JScrollPane Не двигая его застрял в одной позиции - PullRequest
0 голосов
/ 26 декабря 2018

Я рисую некоторые прямоугольники для создания диаграмм классов на панели, и эта панель находится в JScrollPane. Я обновляю параметры предпочитаемого размера панели в соответствии с размером моего прямоугольника, но когда рисование завершается, JScrollPane не перемещается со своего места, и я не могупосетите мои диаграммы enter image description here

Это код

        JPanel drawingPane = new DrawingPane();
        drawingPane.setBackground(Color.white);
scroller = new JScrollPane(drawingPane);
    scroller.setPreferredSize(new Dimension(200,200));

add (скроллер, BorderLayout.CENTER);

ЧТО ЯЯ делаю в краске

 Rectangle rect = new Rectangle(x, y, maxWidth+20, maxHeight+70);

        drawingPane.scrollRectToVisible(rect);
        drawingPane.setPreferredSize(new Dimension(x,y));
        drawingPane.revalidate();   
       g.drawRect(x, y, maxWidth+20, maxHeight+70);

1 Ответ

0 голосов
/ 26 декабря 2018

только что удалили drawingPane.scrollRectToVisible(rect); и все прошло нормально

...