有以下按钮,
预览,打印,增加,修改,删除,刷新,退出,首笔,上笔,下笔,最后笔等在一个PageControl1 放有两个TabSheet,分别是TabSheet1,TabSheet2,在TabSheet1上有DBGrid1,显示一个表或视图的内容,然后单击增加按钮,就切换到TabSheet2界面上,分别是各个输入的Edit,此时要求除退出按钮都为 灰色。怎样来做呢,谢谢,
预览,打印,增加,修改,删除,刷新,退出,首笔,上笔,下笔,最后笔等在一个PageControl1 放有两个TabSheet,分别是TabSheet1,TabSheet2,在TabSheet1上有DBGrid1,显示一个表或视图的内容,然后单击增加按钮,就切换到TabSheet2界面上,分别是各个输入的Edit,此时要求除退出按钮都为 灰色。怎样来做呢,谢谢,
procedure ButtonDisplay(btn:TWinControl;boo:boolean);
var j:integer;
begin
with btn do
begin
for j:=0 to Controlcount-1 do
begin
if (controls[j] as TControl).tag<>0 then
begin
if (controls[j] as TControl).tag=1 then
begin
if boo then
(controls[j] as TControl).Enabled:=true
else
(controls[j] as TControl).Enabled:=false;
end;
end;
end;
PageControl1.ActivePageIndex设置1(默认0)进入TabSheet2
预览,打印,增加,修改,删除,刷新,退出,首笔,上笔,下笔,最后笔等按钮的Enabled设为False;
增加一“保存”按钮,正常Enabled设为False;进入“增加”或“修改”后Enabled设为true,
按“保存”按钮后,将
PageControl1.ActivePageIndex设置0进入TabSheet1
预览,打印,增加,修改,删除,刷新,退出,首笔,上笔,下笔,最后笔等按钮的Enabled设为True;
procedure TfmSimple.SetButton;
begin
sbExit.Enabled := (dsMaster.DataSet.State in [dsBrowse]);
sbCancel.Enabled := (dsMaster.DataSet.State in [dsInsert, dsEdit]);
sbAppend.Enabled := (dsMaster.DataSet.State in [dsBrowse]);
if qyMaster.State in [dsInsert, dsEdit] then
begin
sbEdit.Enabled := False;
sbDel.Enabled := False;
end
else
begin
sbEdit.Enabled := ((dsMaster.DataSet.State in [dsBrowse]) and
(not dsMaster.DataSet.Eof) or
(not dsMaster.DataSet.Bof));
sbDel.Enabled := ((dsMaster.DataSet.State in [dsBrowse]) and
(not dsMaster.DataSet.Eof) or
(not dsMaster.DataSet.Bof));
end;
sbSave.Enabled := (dsMaster.DataSet.State in [dsInsert, dsEdit]);
sbFirst.Enabled := ((dsMaster.DataSet.State in [dsBrowse]) and
(not dsMaster.DataSet.Bof));
sbPrior.Enabled := ((dsMaster.DataSet.State in [dsBrowse]) and
(not dsMaster.DataSet.Bof));
sbNext.Enabled := ((dsMaster.DataSet.State in [dsBrowse]) and
(not dsMaster.DataSet.Eof));
sbLast.Enabled := ((dsMaster.DataSet.State in [dsBrowse]) and
(not dsMaster.DataSet.Eof));
sbRefresh.Enabled := (dsMaster.DataSet.State in [dsBrowse]); SetMenuItem;
end;A)、这时dsMaster对应的qyMaster并没有打开,也没有数据,我自己按照这样的代码写下来总是出错,而作者的编译好的文件也不能用,不知道错在哪?