2016-11-26 85 views
1

我使用下面的代码来显示从我选择在我的DBGrid,到Memo行中的每列的值。德尔福 - 从DBGrid获取选定行的所有列名称

procedure TForm1.Button1Click(Sender: TObject); 
var 
    i: Integer; 
begin 
    Memo1.Clear; 
    with DBGrid1 do 
    begin 
    for i:=0 to FieldCount-1 do 
     Memo1.Lines.Add(Fields[i].AsString); 
    end; 
end; 

任何人有任何想法如何之前也得到了列名,?

例如第一列被命名为ID,在memo显示的第一个valueID值(比方说15) - 我想它是ID:如果您:(COLUMN_VALUE列名)

回答

3

15需要栏目名称和数值

procedure TForm1.Button1Click(Sender: TObject); 
var 
    i: Integer; 
begin 
    Memo1.Clear; 
    with DBGrid1 do 
    begin 
    for i:=0 to Columns.Count-1 do 
     Memo1.Lines.Add(Columns[i].FieldName+':'+ Columns[i].Field.AsString); 
    end; 
end; 
+0

工程就像一个魅力,谢谢! – Petzy

+0

也许“displaylabel”也会对你有所帮助 –

+0

@ChristineRoss谢谢你的建议,我也会看看:) – Petzy