可用ComboBox。TNewObject它存储通过以下方式从数据库添加的对象列表(例如类):
AddItem(Item: string; AObject: TObject)
列表中的第一个元素[0]必须是变量。我试图像这样改变它:
NewObject := TNewObject.Create;
NewObject.ID := 0;
NewObject.Name := '<строится отображаемое имя>';
NewObject.Value := <вычисляется значение>;
MyComboBox.Items[0] := NewObject;
但是,不幸的是,Items[Index: Integer]它只能string取值。
如何ComboBox为元素分配新值?
因为您需要完全清理和重新加载列表的方法Items不太适合我。
ComboBox1.Items这TStrings是默认属性为字符串的那个。要使用对象访问属性,您需要显式指定它,如下所示: