/** * Create plot info panel * * @return panel */ private JPanel createMapPanel() { JPanel panel = new JPanel(new BorderLayout(), true); // create an raised, etched, titled border Border etchedBorder = BorderFactory.createEtchedBorder(EtchedBorder.LOWERED); TitledBorder titledBorder = BorderFactory.createTitledBorder(etchedBorder, "Map"); titledBorder.setTitleJustification(TitledBorder.LEFT); panel.setBorder(titledBorder); // load image java.net.URL imgURL = getClass().getResource("/resources/map.png"); map = new ScrollablePicture(new ImageIcon(imgURL), 10); // map = new ScrollablePicture(new ImageIcon("resources/map.png"), 10); mapScrollPane = new JScrollPane(map); mapScrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS); mapScrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS); map.addMouseListener( new MouseListener() { /** * Get the coordinates of a mouse click event * * @param e MouseEvent */ @Override public void mouseClicked(MouseEvent e) { if (cemeteryPlotterFrame.cemeteryPlotterPlot.isEditable()) cemeteryPlotterFrame.cemeteryPlotterPlot.setMapLocationField(e.getPoint()); } @Override public void mousePressed(MouseEvent e) {} @Override public void mouseReleased(MouseEvent e) {} @Override public void mouseEntered(MouseEvent e) { if (cemeteryPlotterFrame.cemeteryPlotterPlot.isEditable()) mapScrollPane.setCursor(new Cursor(Cursor.CROSSHAIR_CURSOR)); } @Override public void mouseExited(MouseEvent e) {} }); // add map scroll pane to main panel panel.add(mapScrollPane, BorderLayout.CENTER); return panel; }