和书中例子一样,为什么不行???/ (10分)

  • 主题发起人 主题发起人 哈利波特
  • 开始时间 开始时间

哈利波特

Unregistered / Unconfirmed
GUEST, unregistred user!
动态创建表
var tbl:tttable;
begin
tbl:=ttable.create;
with tbl do
begin
database:='c:/';
.............和书中的一样,但运行后按button,表没有创建!
不知道是不是错在了某个不注意的地方!
请帮助!

最好能给我一个详细代码!!!!!!!!谢谢谢!
 
应设新组件的parent.没有父亲不行。
tbl.parent := Form1;
 
ttable是非可視化組件,
不存在parent.
好像前面有貼子說到創建表,你
搜索一下。
 
没有我搜索过了
 
你的这段代码不是在创建一张表,而是创建一个Ttable类的实例。
你把其他的代码也写出来,才能看出问题。
 
总之就是想动态创建一个表!请给出代码
 
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,db,
StdCtrls,dbtables,dbgrids;

type
TForm1 = class(TForm)
Open: TButton;
Close: TButton;
procedure OpenClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure CloseClick(Sender: TObject);
private
{ Private declarations }
public
tb:TTable;
ds:TDataSource;
DG:TDbGrid;
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.OpenClick(Sender: TObject);
begin
tb.Active:=true;
end;

procedure TForm1.FormShow(Sender: TObject);
begin
tb:=TTable.Create(form1);
tb.DatabaseName:='DBDEMOS';
tb.TableName:='clients.dbf';
ds:=TDataSource.Create(form1);
ds.DataSet:=tb;
dg:=TDBGrid.Create(form1);
dg.Align:=alTop;
dg.Parent:=form1;
dg.DataSource:=ds;
end;

procedure TForm1.CloseClick(Sender: TObject);
begin
tb.Active:=false;
end;

end.
 
后退
顶部