Marco's Web Center

Menu for Development

Site Menu
Object Pascal Handbook
Delphi Handbooks Collection
Mastering Borland Delphi 2005
(Old) White Papers
(Old)Tools
(Old) Conferences

My Other Sites
Italian Site (www.marcocantu.it)
the delphi search

Spirit of delphi

Advertising
Home My Blog Books Object Pascal Marco

Home: Code Repository: Mastering Delphi 5

Project MULTI2

Project Structure


MULTI2.DPR

program Multi2;

uses
  Forms,
  MultiRec in 'MultiRec.pas' {Form1};

{$R *.RES}

begin
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end.

MULTIREC.PAS

unit MultiRec;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Mask, DBCtrls, DBTables, DB, ComCtrls, ExtCtrls, DBCGrids;

type
  TForm1 = class(TForm)
    DBCtrlGrid1: TDBCtrlGrid;
    Table1: TTable;
    DataSource1: TDataSource;
    Table1Name: TStringField;
    Table1Capital: TStringField;
    Table1Continent: TStringField;
    Table1Area: TFloatField;
    Table1Population: TFloatField;
    DBEdit1: TDBEdit;
    DBEdit2: TDBEdit;
    Label1: TLabel;
    Label2: TLabel;
    Panel1: TPanel;
    TrackBar1: TTrackBar;
    LabelCols: TLabel;
    procedure TrackBar1Change(Sender: TObject);
    procedure FormResize(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.TrackBar1Change(Sender: TObject);
begin
  LabelCols.Caption := Format (
    '%d Columns', [TrackBar1.Position]);
  DBCtrlGrid1.ColCount := TrackBar1.Position;
  DBCtrlGrid1.Width := ClientWidth;
end;

procedure TForm1.FormResize(Sender: TObject);
begin
  DBCtrlGrid1.RowCount :=
    (ClientHeight - Panel1.Height) div 100;
  DBCtrlGrid1.Height := ClientHeight - Panel1.Height;
  DBCtrlGrid1.Width := ClientWidth;
end;

end.

MULTIREC.DFM

object Form1: TForm1
  Left = 260
  Top = 193
  Width = 443
  Height = 342
  Caption = 'Multi Record Grid'
  Color = clBtnFace
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clWindowText
  Font.Height = -11
  Font.Name = 'MS Sans Serif'
  Font.Style = []
  OldCreateOrder = True
  OnResize = FormResize
  PixelsPerInch = 96
  TextHeight = 13
  object DBCtrlGrid1: TDBCtrlGrid
    Left = 0
    Top = 41
    Width = 436
    Height = 272
    ColCount = 2
    DataSource = DataSource1
    PanelHeight = 136
    PanelWidth = 210
    TabOrder = 0
    RowCount = 2
    SelectedColor = clTeal
    object Label1: TLabel
      Left = 8
      Top = 9
      Width = 39
      Height = 13
      Caption = 'Country:'
    end
    object Label2: TLabel
      Left = 8
      Top = 52
      Width = 35
      Height = 13
      Caption = 'Capital:'
    end
    object DBEdit1: TDBEdit
      Left = 8
      Top = 25
      Width = 137
      Height = 21
      DataField = 'Name'
      DataSource = DataSource1
      TabOrder = 0
    end
    object DBEdit2: TDBEdit
      Left = 8
      Top = 68
      Width = 137
      Height = 21
      DataField = 'Capital'
      DataSource = DataSource1
      TabOrder = 1
    end
  end
  object Panel1: TPanel
    Left = 0
    Top = 0
    Width = 436
    Height = 41
    Align = alTop
    TabOrder = 1
    object LabelCols: TLabel
      Left = 16
      Top = 13
      Width = 49
      Height = 13
      Caption = '2 Columns'
    end
    object TrackBar1: TTrackBar
      Left = 80
      Top = 8
      Width = 161
      Height = 26
      Max = 8
      Min = 2
      Orientation = trHorizontal
      PageSize = 1
      Frequency = 1
      Position = 2
      SelEnd = 0
      SelStart = 0
      TabOrder = 0
      TabStop = False
      ThumbLength = 20
      TickMarks = tmBottomRight
      TickStyle = tsAuto
      OnChange = TrackBar1Change
    end
  end
  object Table1: TTable
    Active = True
    DatabaseName = 'DBDEMOS'
    TableName = 'COUNTRY.DB'
    Left = 256
    Top = 8
    object Table1Name: TStringField
      FieldName = 'Name'
      Size = 24
    end
    object Table1Capital: TStringField
      FieldName = 'Capital'
      Size = 24
    end
    object Table1Continent: TStringField
      FieldName = 'Continent'
      Size = 24
    end
    object Table1Area: TFloatField
      FieldName = 'Area'
    end
    object Table1Population: TFloatField
      FieldName = 'Population'
    end
  end
  object DataSource1: TDataSource
    DataSet = Table1
    Left = 312
    Top = 8
  end
end