delphi中如何从列表框的特定行获取文本

Lin*_*ues 0 delphi freepascal

我想从特定行获取文本。

前任。

列表框内容:

第 0 行 字符串 1

第 1 行 字符串 2

第 3 行 字符串 3

如何从每个示例的第 1 行获取文本?

我尝试这样做:

(listbox1.Items.Objects[1] as TText).Text

但会产生随机访问冲突......

还有别的办法吗?

And*_*and 5

假设它们存在,

  • ListBox.Items[0]是列表框中的第一个字符串。
  • ListBox.Items[1]是列表框中的第二个字符串。
  • ...
  • ListBox.Items[ListBox.Items.Count - 1]是列表框中的最后一个字符串。

代替

ListBox.Items[i]
Run Code Online (Sandbox Code Playgroud)

你也可以使用

ListBox.Items.Strings[i]
Run Code Online (Sandbox Code Playgroud)

但需要输入的内容更多。

(该TStrings.Strings属性显然是一个数组属性,并且因为它被声明为default,所以可以通过使用对象本身的括号来访问它。)


额外材料:Objects您尝试的数组属性偶尔会用于将对象(指针)与列表中的每个项目相关联。(有时它被滥用来存储不是对象的本机大小整数,仍然每个项目一个。)