2

実行時にTImageListからTTrayIconに画像をロードすることは可能ですか?どのように?これは良い考えですか?または、実行時にトレイアイコンの画像を変更するためのより好ましい方法はありますか?

4

2 に答える 2

2

これはワンライナーです:

ImageList1.GetIcon(0, TrayIcon1.Icon);

インデックス付きの画像リストアイコンをトレイアイコンにコピーします。

于 2016-03-23T14:42:26.817 に答える
1

半透明のpng画像で構成される画像リストを使用してLazarus0.9.30.4でWindowsでテストされた場合、一時的なビットマップを使用することで可能になります。

var
  Bmp: TBitmap;
begin
  Bmp := TBitmap.Create;
  try
    ImageList1.GetBitmap(0, Bmp);
    TrayIcon1.Icon.Assign(Bmp);
    TrayIcon1.Show;
  finally
    Bmp.Free;
  end;

実行時に画像リスト画像からアイコンを割り当てることに何の問題もありません。実行時にアイコンを割り当てるための他の可能な実装については、コンポーネントのwikiページの例も参照してください。

于 2012-10-07T12:31:43.970 に答える