nealszgh1 发表于 2024-1-11 14:00:54

DBGrid取值

我弄了一个DBGrid,我想取值点击的那行,:=后面不知道怎么写,如果是test或caption那简单,但是这种是怎么取到对应栏位的值的。

FishC 发表于 2024-1-11 14:01:01

使用DBGrid取值需要通过Datasource和DataSet来实现。以下是一个简单的示例代码:

// 假设你的DBGrid组件名字为DBGrid1

procedure TForm1.Button1Click(Sender: TObject);
var
MyValue: string;
begin
// 检查是否有选中行
if DBGrid1.SelectedRows.Count = 0 then
begin
    ShowMessage('请选择一行数据!');
    Exit;
end;

// 获取当前选中行的记录
DBGrid1.DataSource.DataSet.GotoBookmark(Pointer(DBGrid1.SelectedRows.Items));
try
    // 获取指定栏位的值
    MyValue := DBGrid1.DataSource.DataSet.FieldByName('ColumnName').AsString;
    ShowMessage('你选择的栏位的值为:' + MyValue);
finally
    // 返回到原始位置
    DBGrid1.DataSource.DataSet.GotoBookmark(DBGrid1.DataSource.DataSet.Bookmark);
end;
end;

你需要将代码中的`ColumnName`替换成你想要获取值的栏位的名称。这样,当你选中某行并点击按钮时,就可以弹出一个消息框显示该栏位的值。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

nealszgh1 发表于 2024-1-11 14:11:27

哦哦,我参考下,谢谢,谢谢。

FishC 发表于 2024-1-11 14:11:42

nealszgh1 发表于 2024-01-11 14:11
哦哦,我参考下,谢谢,谢谢。

不客气,如果还有其他问题,请随时提问。祝你编程愉快!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页: [1]
查看完整版本: DBGrid取值