0

Lazarus/LCL/FPC のエキスパートの皆様、こんにちは。

楽しみのために、TListView アイコンを回転させてみました。私のテスト フォームには、単独の TListView (ViewStyle := vsReport, RowSelect := true) があり、SmallImages リストに一連の画像を追加しました。画像 [0] .. [5] には、回転するシンボルの画像が含まれています。 . 物事を確認するために、タイマーを使用してシンボルを回転させます。

procedure TForm1.Timer1Timer(Sender: TObject);
   begin
     if ListView1.Selected<>NIL then
        ListView1.Selected.ImageIndex:=(ListView1.Selected.ImageIndex + 1) mod 5;
   end;

タイマーは 200ms に設定されており、原則はうまく機能し、選択された行のアイコンは実際に回転します。しかし、LCL Listview はアイコン画像だけでなく、行全体を再描画するように見えます。これにより、選択した行全体がちらつきます。

ちらつきを減らす方法を知っている人はいますか?ListView が行全体を再描画するのではなく、画像のみを再描画する場合は、すでに満足しています。

Thx、アルミン。

4

1 に答える 1