加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Delphi XE5 Android:如何让每个listview项都有自己的模板?

发布时间:2020-12-15 10:10:55 所属栏目:大数据 来源:网络整理
导读:有没有办法让Delphi的TListView像android中的实际ListView一样? 例如,列表中的每个项目都有自己的“视图”,在该视图中可以是多个其他视图(组件),如多个文本框和复选框,以及……? 解决方法 是的,有办法.我是通过使用这两种方法来实现的. CreateItem方法是将
有没有办法让Delphi的TListView像android中的实际ListView一样?
例如,列表中的每个项目都有自己的“视图”,在该视图中可以是多个其他视图(组件),如多个文本框和复选框,以及……?

解决方法

是的,有办法.我是通过使用这两种方法来实现的. CreateItem方法是将所需组件放在listitem中的位置.
procedure TForm1.CreateItem;
var
edit1:TClearingEdit;
editCalendar1:TCustomCalendarEdit;
begin
  edit1:= TClearingEdit.Create(Self);
  edit1.Parent := fItem;
  edit1.Align := TAlignLayout.alClient;
  edit1.Text := 'Blabla';
  edit1.OnChange := actEdit1OnChange;

  editCalendar1 := TCalendarEdit.Create(Self);
  editCalendar1.Parent := fItem;
  editCalendar1.Align := TAlignLayout.alRight;
  editCalendar1.Width := 90;
  editCalendar1.Date := Date;
  editCalendar1.OnChange := actEditCalOnChange;
end;

procedure TForm1.CreateListItem;
begin
  fItem:= TListBoxItem.Create(your_listbox);
  fItem.Parent := your_listbox; //Here you put the ListBox as a parent
  fItem.Align := TAlignLayout.alTop;
  fItem.Text := '';
  fItem.Height := 50;

  CreateItem;
end;

要将自定义项添加到列表,只需调用CreateListItem方法!接下来我使用OnChange方法接收数据这里是一个例子:

procedure TForm1.actEditCalOnChange(Sender: TObject);
begin
  label1.text := TCalendarEdit(Sender).Text;
end;

procedure TForm1.actEdit1OnChange(Sender: TObject);
begin
  label2.text := TClearingEdit(Sender).Text;
end;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读