W jaki sposób zmienić kolor tła programu w trakcie jego wykonywania, w odpowiedzi na kliknięcie np. przycisku? Kod koloru uzyskuję za pomocą RGB().
Chodzi mi tylko o funkcję która zmieni kolor tła, z obsługą komunikatu sobie poradzę...
Kolor tła programu?
Chodzi Ci o okno, tak?
tak.
COLORREF SetBkColor(HDC hdc, COLORREF crColor);
A jak uzyskać HDC z uchwytu HWND?
Funkcja
HDC BeginPaint(HWND hWnd, LPPAINTSTRUCT lpPaint);
jak widać zwraca uchwyt kontekstu urządzenia. Poszukaj informacji na temat prostych operacji przy pomocy GDI i raz, dwa sam dojdziesz do wszystkiego.
merek832 napisał(a)
A jak uzyskać HDC z uchwytu HWND?
HDC GetDC(
HWND hWnd // handle to window
);
Poszukaj na msdn online opisu tej funkcji
Pewnie można prościej, ale skoro nie napisałeś w czym to piszesz, co to za aplikacja to nikt Ci dokładnej odpowiedzi nie udzieli.
Pewnie można prościej, ale skoro nie napisałeś w czym to piszesz, co to za aplikacja to nikt Ci dokładnej odpowiedzi nie udzieli.
Po wybraniu z palety kolorów jakiegoś koloru tło programu ma zmienić sie na wybrane przez użytkownika. Nie wiem dlaczego, ale SetBkColor() nie działa.
merek832 napisał(a)
Nie wiem dlaczego, ale SetBkColor() nie działa.
Przeczytaj dokumentację to się dowiesz.