線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1444
推到 Plurk!
推到 Facebook!

請問要如何使用SpeedButton來代替DBNavigator1上的按鈕呢?

尚未結案
saam
初階會員


發表:61
回覆:75
積分:27
註冊:2003-03-03

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-04-14 16:28:52 IP:211.75.xxx.xxx 未訂閱
請教各位先進: 如果我想另外做出幾個SpeedButton來代替DBNavigator1上的按鈕(上一筆'下一 筆...等),我要如何寫呢?
chih
版主


發表:48
回覆:1186
積分:639
註冊:2002-04-02

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-04-14 16:35:56 IP:211.74.xxx.xxx 未訂閱
第一筆:Query1.First; 最末筆:Query1.Last; 下一筆:Query1.Next; 上一筆:Query1.Prior; TRY TRY SEE
Jasonwong
版主


發表:49
回覆:931
積分:581
註冊:2006-10-27

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-04-14 17:06:33 IP:211.23.xxx.xxx 未訂閱
也可以用 ActionList 哦~~ 點一點拉一拉~~程式一行都不用寫哦~~ -- 聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心 傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
------
聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心
傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
channel
尊榮會員


發表:67
回覆:707
積分:854
註冊:2002-05-02

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-04-14 17:08:58 IP:211.21.xxx.xxx 未訂閱
引言: 請教各位先進: 如果我想另外做出幾個SpeedButton來代替DBNavigator1上的按鈕(上一筆'下一 筆...等),我要如何寫呢?
先在Private宣告 procedure ButtonDisplay1; procedure ButtonDisplay2; 以下是程式碼:
//當增、刪、修時:增、刪、修按鈕Enabled,存檔、取消按鈕Disabled
procedure TForm1.ButtonDisplay1;
begin
  if Table1.State in [dsInsert,dsEdit] then
  begin
    btAppend.Enabled := False;
    btDelete.Enabled := False;
    btEdit.Enabled := False;
    btPost.Enabled := True;
    btCancel.Enabled := True;
  end
  else
  begin
    btAppend.Enabled := True;
    btDelete.Enabled := True;
    btEdit.Enabled := True;
    btPost.Enabled := False;
    btCancel.Enabled := False;
  end;
end;    //當資料在首筆時:首筆、第一筆按鈕Disabled
//當資料在末筆時:下一筆、末筆按鈕Disabled
procedure TForm1.ButtonDisplay2;
begin
  if Table1.Bof then
  begin
    btFirst.Enabled := False;
    btPrior.Enabled := False;
    btNext.Enabled := True;
    btLast.Enabled := True;
  end
  else if Table1.Eof then
  begin
    btFirst.Enabled := True;
    btPrior.Enabled := True;
    btNext.Enabled := False;
    btLast.Enabled := False;
  end
  else
  begin
    btFirst.Enabled := True;
    btPrior.Enabled := True;
    btNext.Enabled := True;
    btLast.Enabled := True;
  end;
end;    procedure TForm1.DataSource1StateChange(Sender: TObject);
begin
  ButtonDisplay1;
end;    procedure TForm1.DataSource1DataChange(Sender: TObject; Field: TField);
begin
  ButtonDisplay2;
end;    //首筆
procedure TForm1.btFirstClick(Sender: TObject);
begin
  Table1.First;
end;    //上一筆
procedure TForm1.btPriorClick(Sender: TObject);
begin
  if not Table1.Bof then
    Table1.Prior;
end;    //下一筆
procedure TForm1.btNextClick(Sender: TObject);
begin
  if not Table1.Eof then
    Table1.Next;
end;    //末筆
procedure TForm1.btLastClick(Sender: TObject);
begin
  Table1.Last;
end;    //新增
procedure TForm1.btAppendClick(Sender: TObject);
begin
  Table1.Append;
end;    //刪除
procedure TForm1.btDeleteClick(Sender: TObject);
begin
  if MessageDlg('您確定要刪除此筆資料嗎?', mtConfirmation, [mbYes, mbNo], 0) = mrYes then
    Table1.Delete;
end;    //修改
procedure TForm1.btEditClick(Sender: TObject);
begin
  Table1.Edit;
end;    //存檔
procedure TForm1.btPostClick(Sender: TObject);
begin
  Table1.Post;
end;    //取消(存檔)
procedure TForm1.btCancelClick(Sender: TObject);
begin
  Table1.Cancel;
end;
~小弟淺見,參考看看~
------
~小弟淺見,參考看看~
saam
初階會員


發表:61
回覆:75
積分:27
註冊:2003-03-03

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-04-15 09:10:19 IP:211.75.xxx.xxx 未訂閱
非常感謝各位先進的指導: 我先試託看,謝謝!
系統時間:2024-07-06 4:28:41
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!