我正在创建一个Java GUI
应用程序,其中JPanel使用HeatMap
Java类显示HeatMap
。当用户右键单击此JPanel时,会显示popup menu
。在此范围内,第一个选项是在单独的窗口中查看缩放的热图。单击此选项后,将打开一个新窗口,提供实际HeatMap
的更大图像。我使用以下代码执行此操作:
JOptionPane.showMessageDialog(new GUIMain(), getPanel(), "Zoomed heat map", JOptionPane.PLAIN_MESSAGE);
getPanel()
是一种返回包含热图的面板的方法。
private JPanel getPanel() {
JPanel zoomedImagePanel = new JPanel();
zoomedImagePanel.add(getHeatMap());
zoomedImagePanel.repaint();
zoomedImagePanel.revalidate();
return zoomedImagePanel;
}
使用上面的代码,我在新窗口中得到一个非常小的HeatMap
,主HeatMap
中的JPanel
完全消失。
使用JOptionPane以错误的方式显示缩放图像?另外,不确定为什么父窗口中主HeatMap
的{{1}}会消失。