webForumDet fria alternativet

Sätta färg på enskilda pixlar

C/C++

5 svar · 275 visningar · startad av pettsson

Medlem sedan jan. 20021 122 inlägg
Frågan#1

Hur sätter man färgen på en pixel i ett win API fönster? Måste jag skicka ett WM_PAINT eller finns det något annat sett?

Medlem sedan juni 200010 432 inlägg
#2

Är det att rita ut en pixel i vanlig GDI som du menar så, ja, det fixar du genom WM_PAINT, endera direkt eller genom en egen funktion. Se http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdi/bitmaps_3030.asp

Medlem sedan jan. 20021 122 inlägg
#3

Aha... Den funktionen hittade jag inte när jag tittade där. Finns det kurser i att hitta i msdn? Kanske behövs :)

Medlem sedan juni 200010 432 inlägg
#4

Att programmera i windows utan msdn är som att cykla i skogen med förbundna ögon ;)

Det var nu ett tag sedan jag proggade mot windows och höll mig ajour med APIet. Så minnet om detta är inte på topp, men jag hoppas att det gav en liten knuff ivf :)

Medlem sedan jan. 20021 122 inlägg
#5

Hmm... Måste jag invalidera den pixel jag just ritat? Annars ritas väl inte resultatet upp? Jag försökte mig på en det så här

InvalidateRect(hwnd, Rectangle(hdc, x, y, x, y), true);

Men det går inte att kompilera (kan inte konvertera parameter 2 till en const struct tagRECT *)

Medlem sedan juli 2002581 inlägg
#6

Parametern ska vara en RECT*
RECT r;
r.top = y;
r.left = x;
r.bottom = y + height;
r.right = x + width;

267 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
142 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)