德尔福10.1柏林。 ListView.ItemAppearance = DynamicAppearance。我想在运行时更改ListViewItem中的Image。
我的代码:
procedure TForm1.Button2Click(Sender: TObject);
var
k:integer;
begin
LsvAl.BeginUpdate;
for k := 0 to LsvAl.ItemCount-1 do
begin
if (k mod 2)=0 then
begin
TListItemImage(LsvAl.Items[k].Objects.FindDrawable('Imp1')).Bitmap.Assign(Image2.Bitmap); //
TListItemText(LsvAl.Items[k].Objects.FindDrawable('TxtNum')).TextColor:=$FFFF2346;
end
else
begin
TListItemImage(LsvAl.Items[k].Objects.FindDrawable('Imp1')).Bitmap.Assign(Image1.Bitmap);
TListItemText(LsvAl.Items[k].Objects.FindDrawable('TxtNum')).TextColor:=$FF009DFE;
end
end;
LsvAl.EndUpdate;
结束;
结果:所有图片都是红色(Image1也是)。
我究竟做错了什么?
哪里是一个插件 - 在分配位图后,您可以通过Item.Owns Bitmap:= True创建Item所有者;