Delphi 如何在stringgrid中填充数据
我不知道如何处理stringrids,我想用数据填充它,我已经成功地用listview完成了它 这是我填写listview的代码Delphi 如何在stringgrid中填充数据,delphi,delphi-xe2,firemonkey,tstringgrid,Delphi,Delphi Xe2,Firemonkey,Tstringgrid,我不知道如何处理stringrids,我想用数据填充它,我已经成功地用listview完成了它 这是我填写listview的代码 var LJSONArray : TJSONArray; LItem: TListViewItem; I: Integer; begin LJSONArray := TJSONArray.Create; try BackendStorage1.Storage.QueryObjects('ShoppingList', [], LJSONArray); L
var
LJSONArray : TJSONArray;
LItem: TListViewItem;
I: Integer;
begin
LJSONArray := TJSONArray.Create;
try
BackendStorage1.Storage.QueryObjects('ShoppingList', [], LJSONArray);
ListView1.ClearItems;
for I := 0 to LJSONArray.Count-1 do
begin
LItem := ListView1.Items.Add;
LItem.Text := (LJSonArray.Items[I].GetValue<string>('item'));
end;
finally
LJSONArray.Free;
end;
end;
var
LJSONArray:TJSONArray;
LItem:TListViewItem;
I:整数;
开始
LJSONArray:=TJSONArray.Create;
尝试
BackendStorage1.Storage.QueryObjects('ShoppingList',[],LJSONArray);
ListView1.ClearItems;
对于I:=0到LJSONArray.Count-1 do
开始
LItem:=ListView1.Items.Add;
LItem.Text:=(LJSonArray.Items[I].GetValue('item');
结束;
最后
LJSONArray.Free;
结束;
结束;
要将项目添加到TStringGrid
,您必须先设置其属性,然后使用其属性来填充项目,例如:
var
LJSONArray : TJSONArray;
I: Integer;
begin
LJSONArray := TJSONArray.Create;
try
BackendStorage1.Storage.QueryObjects('ShoppingList', [], LJSONArray);
StringGrid1.RowCount := LJSONArray.Count;
for I := 0 to LJSONArray.Count-1 do
begin
StringGrid1.Cells[0, I] := LJSonArray.Items[I].GetValue<string>('item');
end;
finally
LJSONArray.Free;
end;
end;
var
LJSONArray:TJSONArray;
I:整数;
开始
LJSONArray:=TJSONArray.Create;
尝试
BackendStorage1.Storage.QueryObjects('ShoppingList',[],LJSONArray);
StringGrid1.RowCount:=LJSONArray.Count;
对于I:=0到LJSONArray.Count-1 do
开始
StringGrid1.Cells[0,I]:=LJSonArray.Items[I].GetValue('item');
结束;
最后
LJSONArray.Free;
结束;
结束;
请确保事先已将网格的属性设置为至少1,例如在设计时。错误修复显示未声明的标识符@雷米Lebeau@markkk:VCL的
TStringGrid
具有已发布的FixedRows
属性。您是否使用FireMonkey而不是VCL?FireMonkey的TStringGrid
没有FixedRows
属性,但是它有RowCount
和Cells
属性,所以如果确实在使用FireMonkey,只需删除FixedRows
引用即可。下一次,请更清楚地了解您实际使用的框架。是的,我使用firemonkey,请编辑您的答案,非常感谢,我将更具体地介绍nxt time@RemyLebeau@markkk:如果您使用的是FireMonkey,则应编辑您的问题以添加该标记,以便人们知道您不是在询问VCL TStringGrid。我们不必猜测您使用的是哪一列。@markkk:您在网格中定义了任何列吗?您是否已经查看了TStringGrid
的可用属性,或者阅读了它的文档?