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

想請教控制DBNavigator元件問題

答題得分者是:cashxin2002
kendjoe
一般會員


發表:14
回覆:18
積分:6
註冊:2005-02-02

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-09-06 08:36:36 IP:211.23.xxx.xxx 未訂閱
大家好: 小弟在站上找到一篇文章,有關控制DBNavigator元件的技巧,裡面有一段是sbPost.Enabled:=(DataSource1.State in [dsInsert, dsEdit]); ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^這裡不了解是什麼意思?? 因為小弟我剛學會bcb,又不懂delphi的語法,所以請教大家給我一個提示
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-09-06 09:10:54 IP:202.62.xxx.xxx 未訂閱
您好﹗    程式碼似乎漏掉了一個DataSet﹐如下﹕ sbPost.Enabled := DataSource1.DataSet.State In [dsInsert, dsEdit]; sbPost是指DBNavigator元件上的一個儲存按鈕的名稱﹒ sbPost.Enabled是指是否為可用的﹐預設值為True﹐如果屬性值改為False﹐則代表sbPost按鈕為反灰不可的﹒ DataSource1.DataSet.State是指DataSource1上游資料集元件(如Table,ADOTable等等)其State狀態﹐狀態值有dsInsert, dsEdit, dsBrowse等等﹐分別代表新增狀態﹑修改狀態﹑瀏覽狀態等等﹒ 整句程式碼的意思就是﹕ 當DataSource1上游的資料集元件狀態為dsInsert和dsEdit時﹐sbPost按鈕才是可用的﹒ 這樣寫的好處就是﹐可以防止使用者在無效的時機(如瀏覽狀態時)去按下sbPost儲存按鈕而引發錯誤﹒ ================================= 有空來瞅瞅我﹗因為我是您的朋友﹐有您真好﹗ ================================
------
忻晟
kendjoe
一般會員


發表:14
回覆:18
積分:6
註冊:2005-02-02

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-09-06 13:37:24 IP:211.23.xxx.xxx 未訂閱
首先我真的要謝謝大大這麼快就回應我的問題,謝謝版主的用心。 第二、可否再請教版主,這句如果是用bcb語言該如何寫呢?因為bcb中好像沒有in這個指令?
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-09-06 14:41:05 IP:202.62.xxx.xxx 未訂閱
kendjoe兄﹐您好﹗    抱歉﹐BCB小弟不會﹒    ================================= 有空來瞅瞅我﹗因為我是您的朋友﹐有您真好﹗ ================================
------
忻晟
kendjoe
一般會員


發表:14
回覆:18
積分:6
註冊:2005-02-02

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-09-06 15:35:20 IP:211.23.xxx.xxx 未訂閱
^_^ 版主你太客氣了~~ 小弟在delphi區問bcb的問題是有點過分了,還請版主見諒! 不過,若有人會的話煩請你提示一下吧!!
kendjoe
一般會員


發表:14
回覆:18
積分:6
註冊:2005-02-02

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-09-06 16:08:03 IP:211.23.xxx.xxx 未訂閱
哈哈~~真開心~~試了好久,終於試出來了~~ 在這也將我的作法貼上來供大家參考   原>>>
系統時間:2024-06-24 19:59:04
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!