Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[WinAPI] Problem z funkcją SetPixel (Windows Vista)

Ostatnio zmodyfikowano 2012-10-08 12:39
Autor Wiadomość
danpan
Temat założony przez niniejszego użytkownika
[WinAPI] Problem z funkcją SetPixel (Windows Vista)
» 2012-10-08 06:44:48
Witam
Problem polega na tym ze w programie skompilowanym na moim komputerze z systemem Vista funkcja SetPixel nie rysuje na całym obszarze okna, natomiast testowałem na komputerze w pracy (system XP) i wszystko działa prawidłowo. Może ktoś miał taki problem i wie jak go rozwiązać. Nie wiem czy to chodzi o kartę graficzną, system czy jeszcze może o coś innego.

P-66376
xevuel
» 2012-10-08 07:27:04
funkcja SetPixel nie rysuje na całym obszarze okna
Nie wiem, co masz konkretnie na myśli, ale ta funkcja jest zbyt wolna, aby używać jej do malowania całego okna.

Może ktoś miał taki problem i wie jak go rozwiązać.
Być może, ale przede wszystkim potrzebny jest nam kod programu.
P-66378
Mrovqa
» 2012-10-08 07:57:28
Ja bym radził pobrać w jakiś sposób bufor - na wskaźniku by to szybko poszło. Miałem kiedyś ten problem, ale to był malutki obraz i musiałem go zedytować tylko przy odpalaniu aplikacji, więc SetPixel mi wystarczył ;)
P-66379
DejaVu
» 2012-10-08 08:10:04
Frazy, które należy wpisać w wyszukiwarkę google:
http://cboard.cprogramming.com/cplusplus-programming/119702-gdi-problems-setpixel.html
http://social.msdn.microsoft.com/Forums/en-US /windowsuidevelopment/thread/4ac40f47-6b44-46c4-869d-38a594d9a4f3

Ponoć jak ma się theme Areo Basic (czy coś podobnego) to się pierdzieli :P (choć im więcej wątków czytam tym bardziej głosy są podzielone :P)

/edit:

By the way, I found this to be a work-around for
C/C++
dc.SetPixel( x, y, color );
Solution:
C/C++
dc.SelectObject( colorPen );
dc.MoveTo( x, y );
dc.LineTo( x + 1, y );

PS. Google nie gryzie ;)
P-66380
danpan
Temat założony przez niniejszego użytkownika
» 2012-10-08 12:39:23
dc.SelectObject( colorPen );
dc.MoveTo( x, y );
dc.LineTo( x + 1, y );

Rozwiązałem to właśnie w taki sposób, ale zastanawiałem się dlaczego w ogóle ten problem wystąpił myślałem, że ktoś już was miał już styczność z tym przypadkiem.

Dziękuję za linki i pomoc to dokładnie ten sam problem.
P-66390
« 1 »
  Strona 1 z 1