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

對於使用TDBCtrlGrid的疑惑之問題?

缺席
l90425
初階會員


發表:95
回覆:152
積分:49
註冊:2008-04-03

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-10-09 00:20:06 IP:59.125.xxx.xxx 未訂閱
前提DBCtrlGrid1下面有兩個DBEdit分別為DBEdit1.DBEdit2
為什麼當我修改DBEdit1和DBEdit2完後,按DBNavigator1中nbPost鈕後,為什麼DBEdit1與DBEdit2還能更變呀?(這樣會造成ADOTable1錯誤)

有誰能告訴我嗎?是物件的問題嗎?還是我的問題呢?或是有誰碰過這個問題請問要怎麼解決!
拜託各位大大的幫忙!
謝謝!謝謝!
[code cpp]
void __fastcall TForm1::DBNavigator1Click(TObject *Sender, TNavigateBtn Button)
{
if(Button==nbInsert||Button==nbEdit)
{
DBEdit1->ReadOnly=false;
DBEdit2->ReadOnly=false;

}
else
{
DBEdit1->ReadOnly=true;
DBEdit2->ReadOnly=true;

}
}

[/code]
------
-謝謝大大熱心的回覆!謝謝!
編輯記錄
l90425 重新編輯於 2008-10-09 00:53:31, 註解 無‧
l90425 重新編輯於 2008-10-09 12:36:33, 註解 無‧
herbert2
尊榮會員


發表:58
回覆:640
積分:894
註冊:2004-04-16

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-10-10 10:39:03 IP:211.72.xxx.xxx 訂閱
用 DBCtrlGrid1 做 Edit 動作是很難控制的事,
因他會欄截掉 FormKeyDown() 等 Event.
而且 DBEdit1 和 DBEdit2 同時有多組在該元件上,
您如何確認 User 改的是那一筆 Record ?
小弟是有使用它做 TQuery 之 Edit, 但不使用 TDBNavigator,
完全自行控制何時該 Insert(), 何時該 Edit() 何時該 Post(), 何時該 Cancel(),
程式控制流程是很複雜的, 故只用於一個 User 只准 Edit 三欄的小程式.
要使用 TDBNavigator, 建議用 TDBGrid 顯示資料(但 Edit 時要 Disable
以免被 User 誤點而換 Record 產生 Post() 動作)
用一般 TDBEdit, TDBComboBox 給 User Edit, 較安全穩定.

您若一定要如此使用, 則建議試著改用 TQuery->AfterInsetrt(), AfterEdit(),
AfterPost(), AfterCancel() 做控制, 可能較穩定.
編輯記錄
herbert2 重新編輯於 2008-10-10 10:48:07, 註解 無‧
l90425
初階會員


發表:95
回覆:152
積分:49
註冊:2008-04-03

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-10-14 17:19:27 IP:59.125.xxx.xxx 未訂閱
雖然問題沒有解決,但是還是謝謝大大所提供的寶貴意見,我會加以參考的謝謝
在此向你說聲謝謝!
------
-謝謝大大熱心的回覆!謝謝!
系統時間:2024-04-26 16:37:07
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!