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

模擬Dbnavigator按鍵問題

答題得分者是:懷舊的人
cyl
中階會員


發表:163
回覆:171
積分:66
註冊:2002-07-11

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-02-11 18:04:49 IP:61.218.xxx.xxx 未訂閱
請問我想要自行用SpeedButton來代替Dbnavigator, 所以當我按下新增Button時,存檔和取消的Button自動ON起來等狀況, 但是我不想使用用笨方法,把button寫死,去enable,請問有沒有比較聰明 的方法依table的state去控制button的enable??
懷舊的人
高階會員


發表:28
回覆:152
積分:141
註冊:2003-01-08

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-02-11 18:50:08 IP:152.104.xxx.xxx 未訂閱
引言: 1. 其實 Dbnavigator 已經很好用了 2. 如果一定要用自己的 Button 時,我建議妳從 TDataSource 的 OnStateChange 事件下手 例如: procedure TForm1.DataSource1StateChange(Sender: TObject); begin SpeedButton1.Enabled := TDataSource(Sender).State in [dsInsert,dsEdit]; SpeedButton2.Enabled := TDataSource(Sender).State in [dsInsert,dsEdit]; SpeedButton3.Enabled := TDataSource(Sender).State in [dsInsert,dsEdit]; SpeedButton4.Enabled := TDataSource(Sender).State in [dsBrowse]; ....... end;
發表人 - 懷舊的人 於 2003/02/11 18:50:55
alice100001
一般會員


發表:21
回覆:49
積分:19
註冊:2002-09-14

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-02-11 19:07:25 IP:203.204.xxx.xxx 未訂閱
我覺的“tactionlist“元件很好用,你可以試試看
cyl
中階會員


發表:163
回覆:171
積分:66
註冊:2002-07-11

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-02-13 09:54:56 IP:61.218.xxx.xxx 未訂閱
引言:
引言: 1. 其實 Dbnavigator 已經很好用了 2. 如果一定要用自己的 Button 時,我建議妳從 TDataSource 的 OnStateChange 事件下手 例如: procedure TForm1.DataSource1StateChange(Sender: TObject); begin SpeedButton1.Enabled := TDataSource(Sender).State in [dsInsert,dsEdit]; SpeedButton2.Enabled := TDataSource(Sender).State in [dsInsert,dsEdit]; SpeedButton3.Enabled := TDataSource(Sender).State in [dsInsert,dsEdit]; SpeedButton4.Enabled := TDataSource(Sender).State in [dsBrowse]; ....... end;
發表人 - 懷舊的人 於 2003/02/11 18:50:55
這各方法我還有一點小小疑問,請問如果button很多的話, 程式碼不就很長,請問可否改寫成更簡潔一點
懷舊的人
高階會員


發表:28
回覆:152
積分:141
註冊:2003-01-08

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-02-13 13:28:54 IP:152.104.xxx.xxx 未訂閱
這各方法我還有一點小小疑問,請問如果button很多的話, 程式碼不就很長,請問可否改寫成更簡潔一點 1. 因為妳每個 TSpeedButton 有不同的作用,例如新增,修改,查詢,確認,取消...等 2. 因為 DataSource 改變時會影響那幾個妳要先知道,然後就可以將同受影響的SpeedButton.Tag 設為不同的值,不過跟據經驗這些 Button 大約 10 個內就過夠了,所以一一控制就可以了 3. 妳可以考慮 用繼承 的方式來設計 4. 多利用 Tag 這屬性 非常好用,由其妳真的用心來設計時就會有感受了 加油 ,祝福妳
系統時間:2024-04-29 17:44:24
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!