ok mi è bastato usare lo JScrollPane.
così funziona:
codice:
public class WindowImage extends JFrame {
private final File file;
private PanelDetail left;
private JScrollPane right;
private JSplitPane splitPane;
public WindowImage(File file) {
super("Dettaglio immagine");
this.file = file;
createGui();
}
private void createGui() {
setPreferredSize(new Dimension(800, 500));
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
left = new PanelDetail(file);
right = new JScrollPane(new PanelImage(file), JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
splitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, left, right);
splitPane.setOneTouchExpandable(true);
splitPane.setDividerLocation(0.5);
splitPane.setResizeWeight(0.5);
add(splitPane);
pack();
setLocationRelativeTo(null);
getRootPane().registerKeyboardAction(e -> {
dispose();
}, KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0), JComponent.WHEN_IN_FOCUSED_WINDOW);
}
}