Graphics32 TColorPickerGTK コンポーネントを使用していますが、残念ながら VCL スタイルをサポートしていません。私が最初に考えたのは、PaintColorPicker() メソッドで FBuffer をクリアすることでした。
FBuffer.Clear( Color32( StyleServices.GetStyleColor( scWindow ) ) );
テクスチャのないスタイルには最適ですが、光沢のあるスタイルやジェットのようなスタイルではあまりチョップしません。
ひらめきと私は途中で、Create() メソッドを使用してコントロールの下にビットマップをコピーし、PaintColorPicker () メソッドでペイントし直しました。
ABitmap := TBitmap32.Create();
ABitmap.SetSize( Width, Height );
ARect1 := Rect( 0, 0, Width, Height );
ABitmap.Canvas.CopyRect( ARect1, {No canvas object}, ARect1 );
CopyRect が機能するように、フォームの基になるキャンバスにアクセスするにはどうすればよいですか?