gpt4 book ai didi

Delphi 到达 DBGrid 的行

转载 作者:行者123 更新时间:2023-12-02 06:16:48 30 4
gpt4 key购买 nike

所以我有一个 TDBGrid,我的目的是搜索 DBGrid 的 Fieldname 并将其与我的编辑的 Text 属性进行比较,如果它们相等,则

我想将找到匹配项的整列写入列表框。

通过带有 fieldcount 的 for 循环,我可以比较 FieldName,但由于没有可以使用的 rows 或 rowcount 属性,我不知道如何获取整个列的索引。

for i:=0 to DBGrid1.FieldCount-1 do
begin
if DBGrid1.Fields[i].FieldName=Edit1.Text then
for j:=1 to DBGrid1.RowCount-1 do
ListBox1.Items.Add(DBGrid1.Rows.Fields[i].Index.AsString);
end;

这是我想要做的虚构代码...

P.S.:我仍在使用 Delphi 7,(教育原因)

最佳答案

您无法直接从 DbGrid 获取行值。相反,您必须浏览用于提供 DbGrid 的数据集。

此示例假设您使用的是 TClientDataSet

for i := 0 to DBGrid1.FieldCount - 1 do
begin
if DBGrid1.Fields[i].FieldName = Edit1.Text then
begin
ClientDataSet1.DisableControls;
try
ClientDataSet1.First();
while (not ClientDataSet1.Eof) do
begin
ListBox1.Items.Add(ClientDataSet1.FieldByName(Edit1.Text).AsString);
ClientDataSet1.Next();
end;
finally
ClientDataSet1.EnableControls;
end;
end;
end;

关于Delphi 到达 DBGrid 的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14042306/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com