如何在FMX ListView中显示Glyph按钮

如何在FMX ListView中显示Glyph按钮,listview,delphi,firemonkey,Listview,Delphi,Firemonkey,在Delphi 10.4.2上。这是一个非常简单的问题。 一个新的多设备项目,将Listview添加到表单中。切换到设计模式,使用DynamicBearance。 添加2个文本项和1个字形按钮(复选框),连接一个数据源 在设计时,尽管glyphotton.visible为true,但未显示复选框。在运行时,编码ListView1ItemClick,即使使用单行代码 AItem.Objects.GlyphButton.Visible:=true 单击项目时,会产生错误,如图所示。 知道如何在用户

在Delphi 10.4.2上。这是一个非常简单的问题。 一个新的多设备项目,将Listview添加到表单中。切换到设计模式,使用DynamicBearance。 添加2个文本项和1个字形按钮(复选框),连接一个数据源

在设计时,尽管glyphotton.visible为true,但未显示复选框。在运行时,编码ListView1ItemClick,即使使用单行代码

AItem.Objects.GlyphButton.Visible:=true

单击项目时,会产生错误,如图所示。

知道如何在用户单击某个项目时显示复选框吗。这应该是一个非常简单的功能,为什么连谷歌都不能回答这个问题呢


启用ToogleEditMode后,将ListViewItemAppearance更改为Custom,示例代码位于github上

您可以显示和隐藏复选框:

procedure TForm1.ListView1ItemClick(const Sender: TObject; const AItem: TListViewItem);
begin
  AItem.Objects.GlyphButton.Visible:= not AItem.Objects.GlyphButton.Visible;
end;

所有信息都在docwiki上:

谢谢你的回复,我尝试了你的方法,但没有效果。请你检查一下githut上的代码,看看哪里出错了。基本上,我想在ListViewCheckList的示例中实现这种效果,但具有动态性,因为我需要在一个项目中包含多个项目文本。ToogleEditMode不处于活动状态,右键单击ListView并将其激活是的,它可以工作,但复选框处于前导状态。试图将其更改为跟踪,但不起作用。如果可以在不使用Editmode的情况下切换DesignMode,则可以看到Glyph按钮的位置。运行时布局与设计时不同?有什么想法吗?谢谢你问的不是这个问题,编辑它,让它更清晰。我更新了与我的项目类似的代码。它有4个ItemText,1个DynamicBearance中的glyphbutton。当用户单击某个项目时,如何使该按钮工作?您的ToggleEditMode解决方案仅适用于1个ItemText和1个glyphbutton。我不能根据自己的需要定制。谢谢