program Project2;
uses
Forms,
Unit1 in 'Unit1.pas' {Form1},
Unit2 in 'Unit2.pas' {DataModule2: TDataModule};
{$R *.res}
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
----------------------------------------
unit Unit2;
interface
uses
SysUtils, Classes, DB, DBTables, ADODB;
type
TDataModule2 = class(TDataModule)
Table1: TTable;
DataSource1: TDataSource;
ADOConnection1: TADOConnection;
ADOTable1: TADOTable;
procedure DataModuleCreate(Sender: TObject);
private
{ Private declarations }
public
procedure opentable1(i: integer);
end;
var
DataModule2: TDataModule2;
implementation
{$R *.dfm}
procedure TDataModule2.DataModuleCreate(Sender: TObject);
begin
//Table1.Active:=true;
//opentable1(1);
//ADOTable1.Active:=true;
end;
procedure TDataModule2.opentable1(i: integer);
begin
Self.Table1.Active:=true;
end;
end.
------------------------------------
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, StdCtrls;
type
TForm1 = class(TForm)
DBGrid1: TDBGrid;
Button1: TButton;
Button2: TButton;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses
unit2; //包含了模块定义的那个文件
var
DataModule3: TDataModule2 ;
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
DataModule3:=TDataModule2.Create(self);
DBGrid1.DataSource:= DataModule3.DataSource1;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
DataModule3.ADOTable1.Active:=true;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
DataModule3.ADOTable1.Active:=false;
end;