Seneste forumindlæg
Køb / Salg
 * Uofficiel Black/White liste V3
Login / opret bruger

Forum \ Programmering og webdesign \ Programmering
Denne tråd er over 6 måneder gammel

Er du sikker på, at du har noget relevant at tilføje?

Simpel C# onPaint

Af Supporter Norke | 27-12-2006 17:27 | 1054 visninger | 6 svar, hop til seneste
Jeg er ved at lave et pacman spil, hvor pacmanss position jo hele tiden bliver tegnet. Det gør jeg i en onPaint, hvor jeg bare tegner et simpelt rektangel på hans position. Problemet er, at min onPaint method kun bliver kørt én gang, altså at pacman bliver tegnet ét sted én gang. Den skulle jo gerne hele tiden opdateres, hver gang Pacman bevæger sig. Jeg er helt ny i C#, så lidt hjælp ville være dejligt :)
--
For dig der keder dig: www.tidstyven.dk[...] Undskyld mig, men jeg har nok trådt din støvsuger relativt meget til fars.
#1
Scheea2000
Mega Supporter
27-12-2006 17:58

Rapporter til Admin
Kald Update() når du skal have gentegnet og onPaint vil blive kaldt.
--
"Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction."
#2
Norke
Supporter
27-12-2006 18:16

Rapporter til Admin
Tak, det virker og den kalder onPaint. Nu er problemet bare, at man kan se hver gang den refresher,a ltså det hele fjernes i omkring 10 milisekunder, hvorefter det kommer igen. Altså det står og blinker meget.
--
For dig der keder dig: www.tidstyven.dk[...] Undskyld mig, men jeg har nok trådt din støvsuger relativt meget til fars.
#3
Norke
Supporter
27-12-2006 18:18

Rapporter til Admin
Arh, min fjel, har rettet det nu. Det virkede, tusinde tak :D
--
For dig der keder dig: www.tidstyven.dk[...] Undskyld mig, men jeg har nok trådt din støvsuger relativt meget til fars.
#4
Scheea2000
Mega Supporter
28-12-2006 13:06

Rapporter til Admin
double buffering?
--
"Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction."
#5
Nubi
Maxi Nørd
29-12-2006 18:51

Rapporter til Admin
Du kan evt. bruge Invalidate(); istedet for Update() da den performer bedre, men til gengæld bare smider gentegningen i kø, dvs. hvis du f.eks. har nogle tastetryk i besked køen også, vil de disse køres før gentegning.
--
http://steffenskov.homepage.dk[...]
#6
Norke
Supporter
30-12-2006 22:32

Rapporter til Admin
#4, lige netop det jeg manglede :) #5, bruger jeg også. Fandt ud af at update virkede, men brugte i forvejen Invalidate(); Den blev bare ikke triggered, fordi jeg havde glemt timer1.Start(); :P
--
For dig der keder dig: www.tidstyven.dk[...] Undskyld mig, men jeg har nok trådt din støvsuger relativt meget til fars.

Opret svar til indlægget: Simpel C# onPaint

Grundet øget spam aktivitet fra gæstebrugere, er det desværre ikke længere muligt, at oprette svar som gæst.

Hvis du ønsker at deltage i debatten, skal du oprette en brugerprofil.

Opret bruger | Login
NYHEDSBREV
Afstemning