如何在 Firemonkey TListBox 中找到项目的索引?
How to find an Item's index in a Firemonkey TListBox?
我的目标是更新 TListBox
的 ItemIndex
,以某种方式在以编程方式将项目添加到列表时,在 TListBox
上勾勒出相应的行。
我试过:
with MyLstBox do begin
ItemIndex := -1;
for ind := 0 to Pred (Items.Count) do
if InsertedString = Items [ind]) then begin
ItemIndex := Ind;
Break;
end;
end;
此代码勾勒出刚刚插入的项目的轮廓,但也保留了之前插入的项目的轮廓。
MultiSelect
设置为False
,原则上只勾选一项。
Items
属性 是一个 TStrings
对象。您可以使用 TStrings.IndexOf()
方法代替手动循环:
MyLstBox.ItemIndex := MyLstBox.Items.IndexOf(InsertedString);
当您向列表框添加新项目时,TStrings.Add()
方法returns新项目的索引:
MyLstBox.ItemIndex := MyLstBox.Items.Add(InsertedString);
我的目标是更新 TListBox
的 ItemIndex
,以某种方式在以编程方式将项目添加到列表时,在 TListBox
上勾勒出相应的行。
我试过:
with MyLstBox do begin
ItemIndex := -1;
for ind := 0 to Pred (Items.Count) do
if InsertedString = Items [ind]) then begin
ItemIndex := Ind;
Break;
end;
end;
此代码勾勒出刚刚插入的项目的轮廓,但也保留了之前插入的项目的轮廓。
MultiSelect
设置为False
,原则上只勾选一项。
Items
属性 是一个 TStrings
对象。您可以使用 TStrings.IndexOf()
方法代替手动循环:
MyLstBox.ItemIndex := MyLstBox.Items.IndexOf(InsertedString);
当您向列表框添加新项目时,TStrings.Add()
方法returns新项目的索引:
MyLstBox.ItemIndex := MyLstBox.Items.Add(InsertedString);