【问题标题】:How to get value text in listbox delphi如何在列表框delphi中获取值文本
【发布时间】:2016-05-01 05:34:40
【问题描述】:

我有这样的代码,我在 Delphi XE 中尝试:

procedure TForm1.FormShow(Sender: TObject);
var
  i : integer;
  li : TListBoxItem;
  tt : TText;
begin
  ListBox1.BeginUpdate;
  for I := 1 to 10 do
  begin
    li := TListBoxItem.Create(ListBox1);
    li.Parent := ListBox1;
    tt := TText.Create(li);
    tt.Parent := li;
    tt.Text := IntToStr(i);
    tt.Name := 'text' + IntToStr(i);
    li.ItemData.Detail := 'Lis' + IntToStr(i);
    ListBox1.AddObject(li);
  end;
  ListBox1.EndUpdate;
end;

如何在delphi listboxitem 中获取值文本?

我尝试了这段代码,但不能:

for i := 0 to ListBox1.Items.Count-1 do
begin
    h := TText(ListBox1.Items.Objects[i]);
    Memo1.Lines.Add(ListBox1.Items.Objects[i].ToString);
end;

谢谢

【问题讨论】:

  • 您不想阅读 Text 属性吗?
  • 我要阅读 ttext 的文本
  • 那么为什么不这样做呢? (ListBox1.Items.Objects[i] as TText).Text
  • (ListBox1.Items.Objects[i] as TText).Text是错误访问暴力。
  • 我找到了解决方案,这个正确的代码:

标签: delphi delphi-xe


【解决方案1】:
//you should try this
for i := 0 to ListBox1.Items.Count-1 do
begin
    h := TText(ListBox1.Items.ListItems[i]);
    Memo1.Lines.Add(ListBox1.Items.ListItems[i].Text);
end;

【讨论】:

  • 虽然这段代码可能会解决问题,但一个好的答案应该解释代码的什么以及它如何提供帮助。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-17
相关资源
最近更新 更多