怎样判断DBNavigator中按了哪个键? |
答題得分者是:P.D.
|
sl@cableplus.com.cn
高階會員 發表:168 回覆:359 積分:130 註冊:2004-03-26 發送簡訊給我 |
|
herbert2
尊榮會員 發表:58 回覆:640 積分:894 註冊:2004-04-16 發送簡訊給我 |
用 BeforeAction Event 的 Button 參數可判斷.
===================引 用 sl@cableplus.com.cn 文 章=================== 怎样判断DBNavigator中按了哪个键? 譬如怎么知道是按了DELETE键还是FIRST RECORD键? |
sl@cableplus.com.cn
高階會員 發表:168 回覆:359 積分:130 註冊:2004-03-26 發送簡訊給我 |
|
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
我是利用 onclick比較直接, 參考看看
[code delphi] procedure TForm_Machine.mNavigator1Click(Sender: TObject; Button: TNavigateBtn); var BtnName : string ; tempfield: string; tempvar: real; nowREC: TBookMarkStr; begin case Button of nbFirst : BtnName := 'nbFirst'; nbPrior : BtnName := 'nbPrior'; nbNext : BtnName := 'nbNext'; nbLast : BtnName := 'nbLast'; nbInsert : BtnName := 'nbInsert'; nbDelete : BtnName := 'nbDelete'; nbEdit : BtnName := 'nbEdit'; nbPost : BtnName := 'nbPost'; nbCancel : BtnName := 'nbCancel'; nbRefresh: BtnName := 'nbRefresh'; end; if BtnName='nbPost' then begin Table_Volt.Edit; Table_Volt.Post; Application.MessageBox('已完成寫入','系統訊息',MB_Ok); end else if BtnName='nbInsert' then begin Table_VoltMACHINETYPE.Value:= Table_MachineMACHINETYPE.Value; Table_VoltISVOLT.Value:='MATHVOLT'; end else if BtnName='nbRefresh' then begin tempfield:= Table_VoltAIMODE.Value; tempvar := Table_VoltDATAHIGH.Value; if ID_YES=Application.MessageBox(pChar('是否確定更新 ' tempfield ' 的乘值資料?'), '更新', MB_ICONINFORMATION MB_YESNO) then begin nowREC:= Table_Volt.Bookmark; while (Table_VoltAIMODE.Value=tempfield) and (not Table_Volt.Eof) do begin Table_Volt.Edit; Table_VoltDATAHIGH.Value:= tempvar; Table_Volt.Post; Table_Volt.Next; end; Table_Volt.Bookmark:= nowREC; setLength(nowREC,0); Application.MessageBox('已完成更新','系統訊息',MB_Ok); end; end; end; [/code]
編輯記錄
P.D. 重新編輯於 2007-12-22 15:31:57, 註解 無‧
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |