Я использую компонент Graphics32 TColorPickerGTK, к сожалению, он не поддерживает стили VCL.Моей первой мыслью было очистить FBuffer в методе PaintColorPicker () как таковом,
FBuffer.Clear( Color32( StyleServices.GetStyleColor( scWindow ) ) );
отлично работает для не текстурированных стилей, но для таких стилей, как Glossy или Jet, не так уж и много.
Крещение и я уже в пути, скопируйте растровое изображение под элементом управления с помощью метода Create () и просто закрасьте его обратно в метод PaintColorPicker ().
ABitmap := TBitmap32.Create();
ABitmap.SetSize( Width, Height );
ARect1 := Rect( 0, 0, Width, Height );
ABitmap.Canvas.CopyRect( ARect1, {No canvas object}, ARect1 );
Как получить доступ кбазовый холст формы, так что CopyRect работает?