如果未选中,则从特定的 TComboBox 项目获取文本

Get text from specific TComboBox item if it's not selected

如果未选中,如何从特定的 TComboBox 项目中获取文本。如果我有一个包含三个项目列表的组合框,并且 Item1 是当前选中的项目:

0: 'ItemText1' (Item1)
1: 'ItemText2' (Item2)
2: 'ItemText3' (Item3)

第 1 项中的文本带有 TComboBox.text 相当简单,但是如何在不选择第 2 项的情况下获取它的值?它应该很容易退出,但我尝试了各种组合,但到目前为止我没有运气(Lazarus 组件库目前已关闭,所以我无法在那里查找,我发现的所有示例都使用了所选项目)。

S.th。就像 "ShowMessage(TComboBox.Items[1].Text)" 是我要找的...(输出应该是 "Item2")。

ComboBox 的 Items 属性 是 TStrings 类型,它的行为类似于从零开始的字符串数组,您可以通过提供数字索引来读取它。例如

ShowMessage(ComboBox1.Items[0]);  // shows the first item, ItemText1 in your example

无论在 gui 中选择了哪个项目(如果有),它都有效。

就这么简单。