2009-10-12 5 views

답변

3

TdbGrid의 데이터는 TDataSet decent에만 저장할 수 있습니다. 그래서 나는 TDataset의 정보를 TListView로 가져 오는 방법을 묻는다.

기본적으로 다음 코드를 사용하여 수행 할 수 있습니다.

procedure TForm13.DisplayData(Dataset: TDataSet; ListView: TListView); 
var 
LI : TListItem; 
CO : TListColumn; 
I : Integer; 
begin 
    // Setup the Columns 
    ListView.ViewStyle := vsReport; 
    ListView.Columns.Clear; 
    for I := 1 to DataSet.Fields.Count do 
    begin 
    CO := ListView.Columns.Add; 
    CO.Caption := Dataset.Fields.FieldByNumber(I).DisplayLabel; 
    Co.AutoSize := true; 
    end; 

    // Populate The Data 
    Dataset.First; 
    while not DataSet.EOF do 
    begin 
    LI := ListView.Items.Add; 
    LI.Caption := Dataset.Fields.FieldByNumber(1).AsString; 
    for I := 2 to DataSet.Fields.Count do 
    begin 
     LI.SubItems.Add(Dataset.Fields.FieldByNumber(I).AsString); 
    end; 
    DataSet.Next; 
    end; 
end; 
관련 문제