java jscrollpane - PullRequest
       7

java jscrollpane

0 голосов
/ 13 марта 2012

У меня проблема с отображением компонентов JScrollPane. Позвольте мне сначала объяснить контекст. У меня есть одна большая разделенная панель:

        center = new JSplitPane(JSplitPane.VERTICAL_SPLIT, p, p1);
        center.setDividerLocation(0.9);
        center.setDividerSize(3);
        center.setResizeWeight(1);
        center.setContinuousLayout(true);

Панель p показана правильно, здесь нет проблем. Но панель p1 отображаться не будет, я вижу пустую нижнюю часть панели splitPane, но это все.

        JPanel p = new JPanel();
        p.add(canvas);
        JPanel p1 = new JPanel();
        p1.add(canvasPropPane);

canvasPropPane - это полоса прокрутки, которую я инициализирую так:

        VolumeSizeAndPosition volum = new VolumeSizeAndPosition();
        canvasPropPane = new JScrollPane(volum);

volume был протестирован на независимой раме и был показан правильный путь. Я попытался показать на canvasPropPane простую кнопку canvasPropPane.add(wildButton);, и у нее странное поведение: она закрашивает кнопку только после того, как я наведу указатель мыши на ее местоположение; при перерисовке (после изменения размера полосы прокрутки) она исчезает.

1 Ответ

1 голос
/ 13 ноября 2013

Я решил подобные проблемы, вызвав invalidate () для всех вложенных объектов Swing.Так что для вашего конкретного вопроса могут помочь p.invalidate () и p1.invalidate ().Я считаю, что это странное поведение является ошибкой в ​​Swing.

...