4

我在 Delphi 10.2 Tokyo 中使用 Firemonkey。

我有一个 HD 表格,TListBox它的 aMultiSelectStyle设置为Extendedor 或Default

我可以选择多个项目,但是我找不到以编程方式确定选择哪些项目的方法。

这段代码

for loop := 0 to Listbox1.Count - 1 do
if Listbox1.Selected[loop] then ; //Do Something

我见过的变体无法编译

[dcc32 错误] MainApplication.pas(60): E2149 类没有默认属性

我已经通过了各种属性和方法,TListBox但我看不到找出哪些项目被选中的方法。

任何人都可以帮我解决这个问题吗?

4

1 回答 1

4

在 FireMonkey 中,该TListBox.Selected属性是指向第一个选定TListBoxItem对象的指针。它不是像VCL 中那样的布尔状态数组。您一定一直在查看 VCL 示例,而不是 FMX 示例。

错误消息是因为您试图将索引应用于没有属性[loop]的特定对象。TListBoxItemdefault

改用这个:

for loop := 0 to ListBox1.Count - 1 do
begin
  if ListBox1.ListItems[loop].IsSelected then
    ...
end;
于 2018-06-21T21:32:43.330 回答