05. november 2005 - 15:16
Der er
7 kommentarer og 1 løsning
Animation i JFrame
for(int i = 0; i < biler.size(); i++ ){ JLabel kbil = new JLabel(""); kbil.setIcon( new ImageIcon("bil.jpg") ); Bil bil = (Bil) biler.get(i); kbil.setBounds(bil.p.x, bil.p.y, 60,40); p.add(kbil); } repaint(); Hvordan fjerner vi tidligere tegnede biler når vi kalder ovenstående, vi har prøvet med removeAll -- virker ikke hjælp!!!!
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
05. november 2005 - 15:39
#1
Fylder jeres kode meget? Ellers vil det hjælpe lidt, hvis vi kunne se hvordan gui'en er bygget op.
05. november 2005 - 15:46
#2
import javax.swing.*; import java.util.ArrayList; import java.util.Random; public class View extends JFrame { Model model; ArrayList biler = new ArrayList(); JPanel p; public View(Model model) { this.model = model; p = new JPanel(); p.setLayout(null); add(p); } void draw(){ //remove(bil); //Bil b = new Bil(); for(int i = 0; i < biler.size(); i++ ){ Bil bil = (Bil) biler.get(i); JLabel kbil = new JLabel(""); String billede = "bil"+ bil.retning + ".jpg"; kbil.setIcon( new ImageIcon(billede) ); //System.out.println("TEST"); kbil.setBounds(bil.p.x, bil.p.y, bil.d.b, bil.d.h); p.add(kbil); } //validate(); repaint(); doLayout(); } void tjek(){ if(model.et.h.tilstand == 1 ) System.out.println("hallo"); } void rykAlle(){ for(int i = 0; i < biler.size(); i++ ){ Bil b = (Bil) biler.get(i); b.ryk(); } } void addCar(){ //System.out.println("TEST"); Random rng = new Random(); biler.add(new Bil(rng.nextInt(10) + 1)); } }
05. november 2005 - 16:07
#3
Hvad hvis I skipper add metoden i draw, og i stedet har den i addCar? På den måde vil der i hvert fald kun blive tilføjet én af hver bil...
05. november 2005 - 17:32
#4
vi har løst den med p.removeAll()...... eller tak for hjælpen addCar kaldes af en streng i en anden klasse
05. november 2005 - 17:52
#5
"vi har prøvet med removeAll -- virker ikke hjælp!!!!" :)
05. november 2005 - 23:25
#6
ja ok, vi havde prøvet me removeAll() på vores JFrame obejkt men det virkede ikke....
06. november 2005 - 18:36
#7
Husk at få lukket spørgsmålet...
07. november 2005 - 15:26
#8
e
Kurser inden for grundlæggende programmering