Ping Pong
PingPongComponent.java Interfaccia pubblica della componente public class PingPongComponent extends JComponent { // crea una component da includere in f public PingPongComponent(Frame f) {... } // disegna la component public void paintComponent(Graphics g) {... } // anima la component facendo rimbalzare la pallina public void animate() {... } }
PingPongComponent.java Rappresentazione della componente Continua…
PingPongComponent.java Continua… Costruttore e painting
PingPongComponent.java Continua… Animazione
PingPongComponent.java Continua…
PingPongComponent.java
File PingPongViewer.java Verifichiamo …
repaint() La chiamata a repaint() forza lesecuzione del metodo paintComponent() Effettuata dopo aver aggiornato la posizione x forza il refresh dellimmagine allinterno della componente, così da dare leffetto dellanimazione altrimenti la componente è aggiornata solo da azioni sul frame Provare per credere … public void actionPerformed(ActionEvent event) { x = x + dir * BALZO; dir = -dir; repaint(); // repaint il component esterno }