4 svar
77 visningar
Laura2002 434
Postad: 15 nov 2022 16:09

Flytta "Square"

Hejsan, jag vill göra ett program där jag kan flytta runt på en fyrkant. Med andra ord, om jag klickar i fönstret w ska en fyrkant ritas upp. När jag klickar på ett annat ställe i fönstret ska den gamla fyrkanten försvinna och en ny ritas upp. Jag har testat att göra på lite olika sätt men det blir fel. Nedan finns en bild på hur jag gjorde nu senast. Ser någon möjligtvis vad det är som saknas?

Laura2002 434
Postad: 15 nov 2022 16:09

Laguna Online 28464
Postad: 15 nov 2022 16:28

Hur du ska göra beror på hur den där se.lth.cs.pt.window beter sig, men jag tror att det din kod gör bara sätter punkten för var man ska börja rita om man ritar något nytt.

Rita en ny kvadrat kan man göra genom

sq = new Square(x, y, 100);
sq.draw(w);

men sen är frågan hur man får bort den gamla. Square kanske har en metod för det. Annars kan det vara rätt att rensa w innan man ritar den nya kvadraten.

Laura2002 434
Postad: 15 nov 2022 16:53

Hmm ja, vet inte hur jag ska göra riktigt. Square har en metod för att sudda bort en kvadrat men tror mer på att man ska använda något liknande detta

"w.waitForMouseClick();
int x = w.getClickedX();
int y = w.getClickedY();
w.moveTo(x, y);"

Laura2002 434
Postad: 15 nov 2022 16:54

I och med att man ska använda samma kvadrat hela tiden och inte lägga till en ny

Svara Avbryt
Close