Ehm... non ho capito in che modo i componenti Swing rallentino durante i movimenti (forse perchè ancora non avete visto i thread? Senza thread non ci sono animazioni... nemmeno con AWT), in ogni caso ti avviso che mescolare componenti Swing e AWT non è cosa da farsi: Swing e AWT lavorano su layer differenti e vengono "disegnati" in modo diverso. Se mescolati, i comportamenti (a livello visivo) non sono predicibili, comportando anomalie nell'esecuzione (ti troveresti con componenti che vanno a finire sotto altri, ecc). Quindi, no... non lo fare. Se usi Canvas, non usare Swing e viceversa.Originariamente inviato da mirko.bertani
Quindi dici che l'unico modo con il canvas è lavorare sulle coordinate memorizzate?
Non esistono metodi appositi?
Comunque ho scelto di usare canvas invece di swing perchè per il resto del programma mi viene più comodo, in quanto i componenti vari come jlabel ecc.. rallenterebbero il tutto durante i movimenti delle immagini..
Grazie della risposta!
Usando Swing, per di più, hai molte meno complicazioni: ti basta una JLabel per visualizzare l'immagine ed intercettarne eventuali clic (senza dover star lì "impazzire" con le coordinate).
PS: al posto del canvas puoi tranquillamente usare un JPanel in Swing... solo che per i componenti Swing non si ridefinisce il metodo paint(), ma paintComponent().
Ciao.![]()



Rispondi quotando