我想让一个按钮实现数据库表指针下移的功能,如何让指针移到最后的时候使按钮变灰请哪位大侠给做个小程序来实现这个功能。

解决方案 »

  1.   

    完整的一套:
    procedure TBaseDataFrm.DataSource1DataChange(Sender: TObject;
      Field: TField);
    begin
      RecordSetButton;
    end;procedure TBaseDataFrm.RecordSetButton;
    begin
      if (Query1.State <> dsInsert) and (Query1.State <> dsEdit) then
      with MainForm.DataFrame1 do
      begin
        if Query1.Eof then
        begin
          btnNext.Enabled := False;
          btnLast.Enabled := False;
        end
        else
        begin
          btnNext.Enabled := True;
          btnLast.Enabled := True;
        end;
        if Query1.Bof then
        begin
          btnFirst.Enabled := False;
          btnPriv.Enabled := False;
        end
        else
        begin
          btnFirst.Enabled := True;
          btnPriv.Enabled := True;
        end;
      end;
    end;
      

  2.   

    完整的一套:
    procedure TBaseDataFrm.DataSource1DataChange(Sender: TObject;
      Field: TField);
    begin
      RecordSetButton;
    end;procedure TBaseDataFrm.RecordSetButton;
    begin
      if (Query1.State <> dsInsert) and (Query1.State <> dsEdit) then
      with MainForm.DataFrame1 do
      begin
        if Query1.Eof then
        begin
          btnNext.Enabled := False;
          btnLast.Enabled := False;
        end
        else
        begin
          btnNext.Enabled := True;
          btnLast.Enabled := True;
        end;
        if Query1.Bof then
        begin
          btnFirst.Enabled := False;
          btnPriv.Enabled := False;
        end
        else
        begin
          btnFirst.Enabled := True;
          btnPriv.Enabled := True;
        end;
      end;
    end;
      

  3.   

    楼上说了
    或者自己在Button的OnClick事件里添加代码
    procedure Tyourform.NextBtnClick(Sender: TObject);
    begin
      if not yourquery.eof then begin
        yourquery.Next;
        if not PriorBtn.Enabled then
          PriorBtn.Enabled := true;
      end else begin
        NextBtn.Enabled := false;
      end;
    end;
    procedure Tyourform.PriorBtnClick(Sender: TObject);
    begin
      //跟上面反过来
    end;