全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1094
推到 Plurk!
推到 Facebook!

請問DBNavigator中當已達到首筆及尾筆的訊息.

尚未結案
t0288542
中階會員


發表:216
回覆:254
積分:94
註冊:2004-10-06

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-08-08 10:20:49 IP:61.221.xxx.xxx 未訂閱
請問各位。 DBNavigator本身就是包含許多控制的物件。 是否當使用者按第一筆或最一筆,如繼續按 上一筆或下一筆是否會自動顯示警示訊息, 如果它沒有提供時,我該在什麼處理中, 作控制訊息呢。 麻煩大家,謝謝。
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-08-08 12:33:52 IP:61.71.xxx.xxx 未訂閱
引言: 請問各位。 DBNavigator本身就是包含許多控制的物件。 是否當使用者按第一筆或最一筆,如繼續按 上一筆或下一筆是否會自動顯示警示訊息, 如果它沒有提供時,我該在什麼處理中, 作控制訊息呢。 麻煩大家,謝謝。
其實它已是很完整的資料感知元件, 當移到首/末筆時, 對應的末筆、上一筆)/首筆、下一筆按鍵會變成不可選, 你無須做任何變更, 除非你還想加文字提示, 但我想那是不必要的了
t0288542
中階會員


發表:216
回覆:254
積分:94
註冊:2004-10-06

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-08-08 12:36:40 IP:61.221.xxx.xxx 未訂閱
謝謝您。 是。它是非常完整功能。 但是,因為需求上的需求。 當按到首筆或尾筆時, 希望有一些訊息。 謝謝
huangeider
高階會員


發表:288
回覆:492
積分:231
註冊:2003-02-26

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-08-08 13:01:46 IP:61.222.xxx.xxx 未訂閱
可以在DATASOURCE中的ONDATACHANGE EVENT中寫上 IF ADOQUERY1.EOF THEN SHOWMESSAGE('未筆') ELSE IF ADOQUERY1.BOF THEN SHOWMESSAGE('第一筆');
t0288542
中階會員


發表:216
回覆:254
積分:94
註冊:2004-10-06

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-08-08 13:21:15 IP:61.221.xxx.xxx 未訂閱
謝謝大家。 Hi huangeider 不好意思,您所提供方式可能會存在一個問題, 當執行表單時就會出現〔首筆〕的訊息。 是否應該指定當執行那支表單的那個DataSocure時才在顯示訊息的動作。 也或者應該當按選DBNavigator時才作控制。 謝謝
pillar62
資深會員


發表:9
回覆:324
積分:271
註冊:2002-04-15

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-08-08 16:00:23 IP:210.202.xxx.xxx 未訂閱
你好 同意你的說法,所以應該可以加在onClick的事件當中判斷!! Pillar Wang
------
Pillar Wang
huangeider
高階會員


發表:288
回覆:492
積分:231
註冊:2003-02-26

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-08-08 17:29:02 IP:61.222.xxx.xxx 未訂閱
private { Private declarations } PROCEDURE STATE(DataSet: TDataSet); public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} PROCEDURE TFORM1.STATE(DataSet: TDataSet); BEGIN IF ADOQUERY1.Bof THEN SHOWMESSAGE('FIRST') ELSE IF ADOQUERY1.Eof THEN SHOWMESSAGE('LAST'); END; procedure TForm1.FormCreate(Sender: TObject); begin ADOQUERY1.AfterScroll:=STATE; end; 發表人 - huangeider 於 2005/08/08 17:31:52
deity
尊榮會員


發表:90
回覆:876
積分:678
註冊:2003-05-09

發送簡訊給我
#8 引用回覆 回覆 發表時間:2005-08-09 10:48:54 IP:218.15.xxx.xxx 未訂閱
插花: t0288542你好: 直接在DBNavigator1的onClick事件下就行: 
 
procedure TForm1.DBNavigator1Click(Sender: TObject; Button: TNavigateBtn);
begin
 if adoTable1.Eof then
   showmessage('last');
 if adoTable1.Bof then
   showmessage('first');
end
============================ 为什么经过多年以后,得失的过程如此冷漠 ============================
huangeider
高階會員


發表:288
回覆:492
積分:231
註冊:2003-02-26

發送簡訊給我
#9 引用回覆 回覆 發表時間:2005-08-09 12:26:35 IP:61.222.xxx.xxx 未訂閱
上面的方法中STATE程序中前面還要加一些條件如 IF ADOQUERY1.STATE=DSINSERT THEN EXIT 若有要考慮的因素也要自行加入
系統時間:2024-07-01 21:49:37
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!