Project ADTDEMO
Project Structure
ADTDEMO.DPR
program AdtDemo;
uses
Forms,
AdtForm in 'AdtForm.pas' {Form1};
{$R *.RES}
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
ADTFORM.PAS
unit AdtForm;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Db, DBClient, Grids, DBGrids;
type
TForm1 = class(TForm)
ClientDataSet1: TClientDataSet;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
ClientDataSet1ID: TIntegerField;
ClientDataSet1Name: TADTField;
ClientDataSet1NameLastName: TStringField;
ClientDataSet1NameFirstName: TStringField;
procedure ClientDataSet1NameGetText(Sender: TField; var Text: String;
DisplayText: Boolean);
procedure DBGrid1TitleClick(Column: TColumn);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.ClientDataSet1NameGetText(Sender: TField;
var Text: String; DisplayText: Boolean);
begin
Text := ClientDataSet1NameFirstName.AsString + ' ' +
ClientDataSet1NameLastName.AsString;
end;
procedure TForm1.DBGrid1TitleClick(Column: TColumn);
begin
if Column.Field.FullName = 'Name' then
ClientDataSet1.IndexFieldNames := 'Name.LastName'
else
ClientDataSet1.IndexFieldNames := Column.Field.FullName;
end;
end.
ADTFORM.DFM
object Form1: TForm1
Left = 340
Top = 134
Width = 398
Height = 212
Caption = 'AdtDemo'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = False
PixelsPerInch = 96
TextHeight = 13
object DBGrid1: TDBGrid
Left = 0
Top = 0
Width = 390
Height = 185
Align = alClient
DataSource = DataSource1
Options = [dgEditing, dgTitles, dgIndicator, dgColLines, dgRowLines, dgTabs, dgConfirmDelete, dgCancelOnExit]
TabOrder = 0
TitleFont.Charset = DEFAULT_CHARSET
TitleFont.Color = clWindowText
TitleFont.Height = -11
TitleFont.Name = 'MS Sans Serif'
TitleFont.Style = []
OnTitleClick = DBGrid1TitleClick
Columns = <
item
Expanded = False
FieldName = 'ID'
Visible = True
end
item
FieldName = 'Name'
Visible = True
end
item
Expanded = False
FieldName = 'Name.LastName'
Visible = True
end
item
Expanded = False
FieldName = 'Name.FirstName'
Width = 167
Visible = True
end>
end
object ClientDataSet1: TClientDataSet
Active = True
Aggregates = <>
FileName = 'data.cds'
FieldDefs = <
item
Name = 'ID'
DataType = ftInteger
end
item
Name = 'Name'
ChildDefs = <
item
Name = 'LastName'
DataType = ftString
Size = 20
end
item
Name = 'FirstName'
DataType = ftString
Size = 20
end>
DataType = ftADT
Size = 2
end>
IndexDefs = <
item
Name = 'Index'
Fields = 'Name.LastName'
end>
Params = <>
StoreDefs = True
Left = 32
Top = 24
Data = {
500100009619E0BD020000001800000004000600000003000000E00002494404
00010000000000044E616D6502000C0100000000084C6173744E616D65010049
00000001000557494454480200020014000946697273744E616D650100490000
00010005574944544802000200140002000A4348414E47455F4C4F4704008200
1200000001000000000000000400000002000000000000000400000003000000
0000000004000000040000000000000004000000050000000100000008000000
0600000005000000080000000D44454641554C545F4F52444552020082000100
000003000508010000000543616E74F9054D6172636F04080200000005536D69
7468044A6F686E040803000000084D63446F6E616C64045061756C0408030000
0007426F726C616E64054672616E6B0D08010000000543616E74F9064D617263
6F640C08010000000543616E74F9054D6172636F}
object ClientDataSet1ID: TIntegerField
FieldName = 'ID'
end
object ClientDataSet1Name: TADTField
FieldName = 'Name'
OnGetText = ClientDataSet1NameGetText
object ClientDataSet1NameLastName: TStringField
FieldName = 'LastName'
end
object ClientDataSet1NameFirstName: TStringField
FieldName = 'FirstName'
end
end
end
object DataSource1: TDataSource
DataSet = ClientDataSet1
Left = 32
Top = 80
end
end
|