Riddle Napisano Grudzień 19, 2018 Autor Zgłoś Udostępnij Napisano Grudzień 19, 2018 Mam kontrolke EDIT, która jest tylko do odczytu. Stosuje WM_COLORSTATIC, aby zmienić jej kolory. Wypisuje na niej tekst. W momencie kiedy "przewijam" pionowym scrolem i obraz zamazuje mi się. Co mam zrobić aby ten tesk wyświetlał się normalnie..???? Kiedy NIE korzystam z WM_COLORSTATIC tego problemu nie ma. Próbowałem korzystać z funkcji InvaliRect, WindowUpdate i nic..... Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Omega Napisano Grudzień 19, 2018 Zgłoś Udostępnij Napisano Grudzień 19, 2018 Czyli cos znowu blednie wykonujesz. Ja probowalem i jest dobrze. Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Riddle Napisano Grudzień 19, 2018 Autor Zgłoś Udostępnij Napisano Grudzień 19, 2018 Kontrolka "edit" jest oknem typu child. Rozmiar okna jest zmaksymalizowany. Kiedy okno jest małe to ten problem nie występuje. A w colorstatic wszystko jest napewno dobrze. Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Omega Napisano Grudzień 19, 2018 Zgłoś Udostępnij Napisano Grudzień 19, 2018 A rzuc kodem jak obslugujesz WM_COLORSTATIC Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Riddle Napisano Grudzień 19, 2018 Autor Zgłoś Udostępnij Napisano Grudzień 19, 2018 case WM_CTLCOLORSTATIC: { if (lParam == (LPARAM) GetDlgItem(hdwnd, IDC_EDIT1)) { SetTextColor ((HDC)wParam,RGB(0,0,0)) ; SetBkMode((HDC)wParam,TRANSPARENT); return (BOOL)(LRESULT)CreateSolidBrush(RGB(255,160,0)); } if(lParam != (LPARAM) GetDlgItem(hdwnd, IDC_EDIT1)) { SetTextColor ((HDC)wParam,RGB(0,0,0)) ; SetBkMode((HDC)wParam,TRANSPARENT); return (BOOL)(LRESULT)CreateSolidBrush(RGB(180,132,255)); } } break; Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Aspect Napisano Grudzień 19, 2018 Zgłoś Udostępnij Napisano Grudzień 19, 2018 m-rog napisał: return (BOOL)(LRESULT)CreateSolidBrush(RGB(180,132,255)); Powiedz mi, po co to na BOOL rzutujesz? Przyczyną zamazywania się okienka może być fakt (choć to mało prawdopodobne, ale sprawdź), że nie zwalniasz stworzonego przez siebie brusha. Wielokrotne wywołanie tej procedury (przy każdorazowym odrysowaniu się każdej kontrolki typu static na Twoim oknie) powoduje, że tworzy się bardzo wiele obiektów typu BRUSH, których potem nie kasujesz. Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
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.