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、アルミン。