ちょっと質問させてください。
初めてTSpeedButtonの画像表示に、TVirtualListBoxとTImageCollectionを使ってみました。
用意したボタン画像はすべてPngで背景は透明です。
通常時には背景が透明で下のパネル色が反映され、まったく問題ないのですが、マウスをボタンの上に置くと背景が白になってしまいます。
何かやり方がまずいのでしょうか?
それともこれが限界なのでしょうか?
Embarcadero® Delphi 12 バージョン 29.0.51961.7529 だと
ImageCollection1.Add('','dtffvb2501i0o.cloudfront.net.favicon-32x32.png');
VirtualImageList1.ImageCollection := ImageCollection1;
VirtualImageList1.Add('',0,True);
SpeedButton1.Images := VirtualImageList1;
SpeedButton1.ImageIndex := 0;
で白くはなりません
AAAAAさん、返信ありがとうございます。
新規フォームでAAAAAさんのコードを実行したところ問題はありませんでした。
なぜ白くなったのかと、色々テストプログラムを試していたところ原因が分かりました。
実は青色(clHighLight)のPanelの上にSpeedButtonを置いていたため、
MouseOverでデフォルトで描画される背景色と影響し合い、白く見えたようです。
初歩的な勘違いでした。