我以编程方式填充DinamycAppearance TListview。这里有一个TextButton,有时我想设置Visible:=false。
li := ListView.Items.Add;我尝试过这些解决方案,但这两种解决方案都不正确:
li.Objects.ObjectByName('ButtonSelect').Visible := false;
li.View.FindDrawable('ButtonSelect').Visible := false;我也试图摧毁或释放这个物体,但在那里我有错误。
此外,有时它可以工作,但只是在第二次构建时,但是当我调整表单的大小时,ListView也会忘记可见性设置。
你有解决这个问题的办法吗?
谢谢!
发布于 2022-08-10 12:48:31
当使用动态listview项并希望更改项目中对象的外观时,需要在Listview的OnUpdateObjects事件下这样做。
就像这样:
procedure TForm2.lv1UpdateObjects(const Sender: TObject;
const AItem: TListViewItem);
begin
if SomeCondition then // SomeCondition is an example
AItem.Objects.FindObjectT<TListItemTextButton>('ButtonSelect').Visible := False;
end;https://stackoverflow.com/questions/73304121
复制相似问题