This is only D2005 compatible...

Ø       er, D6

 

But I have found a great article on importing xls data direct into the grid, which does me =)

 

Thanx anyway

 


From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of [EMAIL PROTECTED]
Sent: Friday, 11 February 2005 5:38 p.m.
To: [email protected]
Subject: RE: [DUG] Dynamically fill DBGrid from TStringlist

 

Insert the rows into the dataset that is connected to the grid.

 

This is only D2005 compatible...

 

=======  unit ==============

 

unit Unit55;

 

interface

 

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, Grids, DBGrids, DBClient, StdCtrls;

 

type
  TForm55 = class(TForm)
    DataSource1: TDataSource;
    ClientDataSet1: TClientDataSet;
    DBGrid1: TDBGrid;
    Button1: TButton;
    Button2: TButton;
    procedure Button2Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

 

var
  Form55: TForm55;

 

implementation

 

{$R *.dfm}

 

procedure TForm55.Button1Click(Sender: TObject);
var
  lList: TStringList;
  lStr: String;
  lCnt: Integer;
begin
  lList := TStringList.Create;
  try
    lList.Add('Item0');
    lList.Add('Item1');
    lList.Add('Item2');
    lList.Add('Item3');
    lList.Add('Item4');
    lList.Add('Item5');
    ClientDataSet1.FieldDefs.Add('FieldOne', ftInteger, 0, False);
    ClientDataSet1.FieldDefs.Add('FieldTwo', ftString, 10, False);
    ClientDataSet1.CreateDataSet;
    ClientDataSet1.Active := True;
    lCnt := 0;
    for lStr in lList do
    begin
      ClientDataSet1.Append;
      ClientDataSet1.Fields[0].AsInteger := lCnt;
      ClientDataSet1.Fields[1].AsString := lStr;
      ClientDataSet1.Post;
      inc(lCnt);
    end;
  finally
    FreeAndNil(lList);
  end;
end;

 

procedure TForm55.Button2Click(Sender: TObject);
begin
  ClientDataSet1.Active := False;
  close;
end;

 

end.

====== form ==============

 

object Form55: TForm55
  Left = 0
  Top = 0
  Width = 391
  Height = 270
  Caption = 'Form55'
  Color = clBtnFace
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clWindowText
  Font.Height = -11
  Font.Name = 'Tahoma'
  Font.Style = []
  OldCreateOrder = False
  PixelsPerInch = 96
  TextHeight = 13
  object DBGrid1: TDBGrid
    Left = 8
    Top = 40
    Width = 369
    Height = 193
    DataSource = DataSource1
    TabOrder = 0
    TitleFont.Charset = DEFAULT_CHARSET
    TitleFont.Color = clWindowText
    TitleFont.Height = -11
    TitleFont.Name = 'Tahoma'
    TitleFont.Style = []
  end
  object Button1: TButton
    Left = 8
    Top = 8
    Width = 75
    Height = 25
    Caption = 'Execute'
    TabOrder = 1
    >   end
  object Button2: TButton
    Left = 304
    Top = 8
    Width = 75
    Height = 25
    Caption = 'Close'
    TabOrder = 2
    >   end
  object DataSource1: TDataSource
    DataSet = ClientDataSet1
    Left = 184
    Top = 120
  end
  object ClientDataSet1: TClientDataSet
    Aggregates = <>
    Params = <>
    Left = 192
    Top = 128
  end
end

 

 

cheers,

 

JED

 

-----Original Message-----
From: tracey [mailto:[EMAIL PROTECTED]
Sent: 10 February 2005 8:56 AM
To: NZ Borland Developers Group - Delphi List
Subject: [DUG] Dynamically fill DBGrid from TStringlist

Is this possible?  How does one dynamically load rows into a DBGrid from code?

_______________________________________________
Delphi mailing list
[email protected]
http://ns3.123.co.nz/mailman/listinfo/delphi

Reply via email to