Java 展开地图不';JPanel中的t刷新
对于我正在开发的应用程序,我使用UnfolingMaps库来显示地图。地图放在一个JPanel中。在同一个JPanel中显示了其他JPanel。 因此,我通过按钮在地图和其他面板之间切换 问题是地图不会刷新。我可以显示它一次,当我显示另一个面板,然后返回地图时,地图不会显示。我当时唯一的选择就是重新启动应用程序Java 展开地图不';JPanel中的t刷新,java,swing,processing,Java,Swing,Processing,对于我正在开发的应用程序,我使用UnfolingMaps库来显示地图。地图放在一个JPanel中。在同一个JPanel中显示了其他JPanel。 因此,我通过按钮在地图和其他面板之间切换 问题是地图不会刷新。我可以显示它一次,当我显示另一个面板,然后返回地图时,地图不会显示。我当时唯一的选择就是重新启动应用程序 private void showVis(String chart) { //visual is the JPanel where elements are viewed
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();
}
}
字符串图表决定将显示哪个面板
在同一个JPanel中显示了其他JPanel。所以我在
使用按钮帮助地图和其他面板
- 它应该是
parentPanel.revalidate()然后是
parentPanel.repaint()代码>
- 更好的方法是使用指定用于此目的的,而不是删除一个新的
,然后将其添加到已经可见的Swing GUI中JComponent
- 它应该是
parentPanel.revalidate()然后是
parentPanel.repaint()代码>
- 更好的方法是使用指定用于此目的的,而不是删除一个新的
,然后将其添加到已经可见的Swing GUI中JComponent