UnfoldingMaps не обновляется в JPanel

1

Для приложения, которое я разрабатываю, я использую библиотеку UnfoldingMaps для отображения карты. Карта помещается внутри JPanel. В той же JPanel показаны другие Jpanels. Поэтому я переключаюсь между картой и другими панелями с помощью кнопок.

Проблема в том, что карта не обновляется. Я могу отобразить его один раз, и когда я отображу другую панель и вернусь к карте, карта не будет отображаться. Единственный вариант, который я получил, это перезапустить приложение.

    private void showVis(String chart) {
    //visual is the JPanel where elements are viewed in
    visual.removeAll();

    if (chart.equals("bar")) {

        bar.setPart("", partial, location);
        bar.createVisualisation(ai);
        if (bar.checkGraph()) {
            System.out.println("Really creating bar");
            ChartPanel panB = bar.getPanel();
            JPopupMenu popB = panB.getPopupMenu();
            panB.setPopupMenu(popB);
            visual.add(panB);
            visual.validate();

        }
         } else if (chart.equals("map")) {
        map = null;
        map = new Maps();
        map.setPart("", partial, location);
        map.createVisualisation(ai);

        if (map.checkGraph()) {
            map.init();
            visual.add(map);

            visual.validate();
        }
    }

строчная диаграмма определяет, какая панель будет показана.

Теги:
swing
processing

1 ответ

4
Лучший ответ

В той же JPanel показаны другие Jpanels. Поэтому я переключаюсь между картой и другими панелями с помощью кнопок.

  • 0
    Я попробовал ваше решение с CardLayout, и это сработало. большое спасибо
  • 0
    пожалуйста

Ещё вопросы

Сообщество Overcoder
Наверх
Меню