1337 Napisano Kwiecień 14, 2019 Autor Zgłoś Napisano Kwiecień 14, 2019 Podczas zdarzenia WM_PAINT mojego okna głównego wyświetlam pewien text funkcją DrawText(). Później w programie chcę coś jeszcze domalować i nie widać tego (DrewText zwraca wartość niezerową). Czyżby była to wina tego że zdarzenie WP_PAINT zamalowywuje tamten text? ... case WM_PAINT: HDC hdc; PAINTSTRUCT ps; RECT rc; hdc = BeginPaint(hWnd, &ps); SetBkMode(hdc, TRANSPARENT); SetRect(&rc, 20, 10, 400, 200); DrawText(hdc, "Blablabla", -1, &rc, DT_LEFT); EndPaint(hOkno, &ps); break; ... DrawText(hdc, "\n blablabla", -1, &rc, DT_LEFT); Cytuj
Jarema Napisano Kwiecień 15, 2019 Zgłoś Napisano Kwiecień 15, 2019 W zdarzeniu WM_PAINT jest odmalowywane całe okno. Więc tak się dzieje, ponieważ w WM_PAINT masz tylko jeden tekst ktory chcesz wyswietlic dlatego wyswietla tylko jeden, a cala reszte zamalowywuje na tlo. Jeśli chcesz w ten sposob pisac to musisz wszytko robic w WM_PAINT, albo z WM_PAINT za każdym razem wysyłać komunikat w którym jest malowany pozostały tekst. Cytuj
Visage Napisano Kwiecień 15, 2019 Zgłoś Napisano Kwiecień 15, 2019 Najprosciej malowac musisz miedzy Begin/EndPaint :) Cytuj
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.