L
luaijun
Unregistered / Unconfirmed
GUEST, unregistred user!
procedure TFrmUse_def2.SetTableName(ss:string);
var buf:string[100];
cot,cott:integer;
begin
Table2.TableName:=ss;
Table2.Active:=true;
DBGrid1.Columns.Clear;
DBGrid1.Columns.Add.FieldName:='A1';
DBGrid1.Columns.Items[0].Title.Caption:='编 号';
DBGrid1.Columns.Items[0].Title.Alignment:=taCenter;
DBGrid1.Columns.Items[0].ReadOnly:=false;
DBGrid1.Columns.Add.FieldName:='A2';
DBGrid1.Columns.Items[1].Title.Caption:='姓 名';
DBGrid1.Columns.Items[1].Title.Alignment:=taCenter;
DBGrid1.Columns.Items[1].ReadOnly:=false;
cot:=3;
cott:=2;
Table1.First;
while NOT Table1.Eof do
begin
if Table1.FieldByName('s_static').AsString='T' then
begin
buf:=trim(Table1.FieldByName('s_name').AsString);
DBGrid1.Columns.Add.FieldName:='A'+trim(IntToStr(cot));
DBGrid1.Columns.Items[cott].Title.Caption:=buf;
DBGrid1.Columns.Items[cott].Title.Alignment:=taCenter;
cott:=cott+1;
end;
Table1.Next;
cot:=cot+1;
end;
end;
procedure TFrmUse_def2.Button3Click(Sender: TObject);
var ch:TFrmUse_def3;
begin
Close;
ch:=TFrmUse_def3.Create(Application);
ch.SetTableName(Table2.TableName);
end;
上面程序中,Table1为一sql数据库中的一个表
程序运行后,DbGrid1显示Table1中部分字段,输入记录,进入下一条时,产生异常,说A4必须输入内容
可这时A4是没有的
在下一个窗口才会出现A4,下一个窗口TFrmUse_def3的SetTableName和这个一样,只是条件不一样
,因而字段不一样,前两个字段一样,它会有A4出现
请都各位大侠,为什么
var buf:string[100];
cot,cott:integer;
begin
Table2.TableName:=ss;
Table2.Active:=true;
DBGrid1.Columns.Clear;
DBGrid1.Columns.Add.FieldName:='A1';
DBGrid1.Columns.Items[0].Title.Caption:='编 号';
DBGrid1.Columns.Items[0].Title.Alignment:=taCenter;
DBGrid1.Columns.Items[0].ReadOnly:=false;
DBGrid1.Columns.Add.FieldName:='A2';
DBGrid1.Columns.Items[1].Title.Caption:='姓 名';
DBGrid1.Columns.Items[1].Title.Alignment:=taCenter;
DBGrid1.Columns.Items[1].ReadOnly:=false;
cot:=3;
cott:=2;
Table1.First;
while NOT Table1.Eof do
begin
if Table1.FieldByName('s_static').AsString='T' then
begin
buf:=trim(Table1.FieldByName('s_name').AsString);
DBGrid1.Columns.Add.FieldName:='A'+trim(IntToStr(cot));
DBGrid1.Columns.Items[cott].Title.Caption:=buf;
DBGrid1.Columns.Items[cott].Title.Alignment:=taCenter;
cott:=cott+1;
end;
Table1.Next;
cot:=cot+1;
end;
end;
procedure TFrmUse_def2.Button3Click(Sender: TObject);
var ch:TFrmUse_def3;
begin
Close;
ch:=TFrmUse_def3.Create(Application);
ch.SetTableName(Table2.TableName);
end;
上面程序中,Table1为一sql数据库中的一个表
程序运行后,DbGrid1显示Table1中部分字段,输入记录,进入下一条时,产生异常,说A4必须输入内容
可这时A4是没有的
在下一个窗口才会出现A4,下一个窗口TFrmUse_def3的SetTableName和这个一样,只是条件不一样
,因而字段不一样,前两个字段一样,它会有A4出现
请都各位大侠,为什么