如何在 C++Builder 中从
TListBox
中提取字符串?
列表框是在运行时从数据库填充的,我需要所选项目的字符串值。该框是单选框。我正在使用 C++Builder 12 CE。
我尝试使用
TStrings*
直接提取到 String
和 Items[]
,但不断出现类型不匹配或有关抽象类的错误。
由于
Items
是 TStrings*
,因此您可以使用 *
取消引用它以使用其 operator[]
:
for (int idx = 0; idx < ListBox1->Count; ++idx) {
auto str = (*ListBox1->Items)[idx];
// do something with str
}
或者访问
Items->Strings
:
auto str = ListBox1->Items->Strings[idx];
或与
->
:
auto str = ListBox1->Items->operator[](idx);
使用
TListBox::ItemIndex
获取所选项目的索引:
if (int idx = ListBox1->ItemIndex; idx == -1) {
// no item selected
} else {
auto str = (*ListBox1->Items)[idx];
// ...
}