MouseMotionLi

Mattepuffo's logo
Disegnare su JPanel

Disegnare su JPanel

Torniamo a parlare un pò di Java (che purtroppo ho dovuto un pò tralasciare per poco tempo).

Oggi vediamo come poter disegnare un rettangolo con il mouse su un JPanel.

Inoltre dovrà implementare MouseListener e MouseMotionListener e i metodi derivati:

  • mousePressed
  • mouseDragged
  • mouseReleased
  • mouseClicked
  • mouseEntered
  • mouseExited
  • mouseMoved

Gli ultimi 4 metodi però rimarrano vuoti perchè non ci serviranno.

Vediamo come strutturare il tutto:

public class FrameDraw extends JFrame {

    private JScrollPane scroll;
    private int width = (int) Toolkit.getDefaultToolkit().getScreenSize().getWidth(); // DIMENSIONE JPANEL
    private int height = (int) Toolkit.getDefaultToolkit().getScreenSize().getHeight(); // DIMENSIONE JPANEL

    public FrameDraw() {
        super("Draw panel");
        setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
        setLayout(new BorderLayout());
        ImagePanel panel = new ImagePanel();
        scroll = new JScrollPane(panel);
        add(scroll, BorderLayout.CENTER);
    }

// CLASSE PRIVATA JPANEL.

}

Questo è il JFrame principale; ImagePanel sarà il JPanel che andremo ad inserire come classe privata.