Toro ha scritto:
Come soluzione ho pensato a creare pannelli più piccoli che messi insieme formano il pannello su cui disegnare, in modo che al movimento del mouse ridisegno solo il pannello interessato. Questa soluzione può essere corretta o ci sono alternative migliori?
No, NON mi pare affatto una buona soluzione. Il concetto di ridurre l'area da RIdisegnare è giusto ma si fa in altro modo.
Innanzitutto bisognerebbe vedere esattamente il codice che hai usato per capire se è valido e se/come si può migliorare.
Tanto per dirne una con un esempio, se hai un rettangolo rosso disegnato e l'utente chiede di ridisegnarlo in blu, tu cosa chiedi per il ridisegno? Fai un repaint() (quello SENZA argomenti)? Questo chiede il ridisegno di "tutto" quanto. Già una ottimizzazione sarebbe richiedere il ridisegno di una area più piccola con il
repaint(int x, int y, int width, int height)
Ma poi si possono studiare altre ottimizzazioni ...