Witam,
w procedurze obsługującej komunikat WM_PAINT okna próbuje wypełnić prostokąt za pomocą gradientu. Mam zadeklarowaną zmienną Rect typu TGPRect przechowującą współrzędne wypełnianego prostokąta. Gradient tworzony jest za pomocą kodu:
Gradient:=TGPLinearGradientBrush.Create(MakePoint(0, Rect.Y), MakePoint(0, Rect.Y+Rect.Height), kolor1, kolor2);
Następnie w procedurze obsługującej komunikat WM_PAINT wypełniany jest prostokąt za pomocą
Graphics.FillRectangle(Gradient, Rect);
Problem w tym, że pierwsza linia gradientu jest wyświetlana w złym kolorze. Popełniłem gdzieś błąd czy jest błąd gdi+??
Poniżej umieszczam link do obrazka. Gradient powinien przechodzić z szarego do różowego.
http://myweb.tiscali.co.uk/pzerone/gdip.png