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

DBCombobox 和 datetimepicker 一問...

尚未結案
nachi
初階會員


發表:40
回覆:116
積分:31
註冊:2003-02-26

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-05-12 23:56:57 IP:218.165.xxx.xxx 未訂閱
表單內使用了TDBCombobox,為何它不能像TDBedit一樣,當資料移動時欄內的資料會隨著資料庫的內容異動?還是也要自己寫? 表單內還有一個datetimepicker,我知道要自己寫,但總都弄不出來... 我在datasource的onchange寫... datetimepicker.date:=adoquery1. 逗點之後,試了好幾個指令都run不出來,請大大指點迷津....
timhuang
尊榮會員


發表:78
回覆:1815
積分:1608
註冊:2002-07-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-05-13 00:25:06 IP:61.221.xxx.xxx 未訂閱
1. TDBComboBox 也是和 TDBEdit 一樣的用法沒錯, 請 check datasource 和 datafield 設定無誤, 另外也請 check style 是不是 csDropDown, 若是 csDropDownList 時, 僅會出現在 Items 中的資料才會出現哦~ 2. 在 datasource 的 onDataChange event 中寫:
procedure TForm1.DataSource1DataChange(Sender: TObject; Field: TField);
begin
  DateTimePicker1.Date := ADOQuery1.FieldByName('FDATE').AsDateTime;
end;
發表人 - timhuang 於 2003/05/13 00:27:41
channel
尊榮會員


發表:67
回覆:707
積分:854
註冊:2002-05-02

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-05-13 00:25:08 IP:218.163.xxx.xxx 未訂閱
引言: 表單內使用了TDBCombobox,為何它不能像TDBedit一樣,當資料移動時欄內的資料會隨著資料庫的內容異動?還是也要自己寫?
檢查您的TDBCombobox有沒有設DataSource,DataField
引言: 表單內還有一個datetimepicker,我知道要自己寫,但總都弄不出來... 我在datasource的onchange寫... datetimepicker.date:=adoquery1. 逗點之後,試了好幾個指令都run不出來,請大大指點迷津....
您寫在ADOQuery1的AfterScroll事件,試試看。
procedure TForm1.ADOQuery1AfterScroll(DataSet: TDataSet);
begin
  DateTimePicker1.Date := ADOQuery1.FieldByName(DateField).AsDateTime;
end;
~小弟淺見,參考看看~
------
~小弟淺見,參考看看~
nachi
初階會員


發表:40
回覆:116
積分:31
註冊:2003-02-26

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-05-13 07:48:28 IP:218.165.xxx.xxx 未訂閱
我本來也是這樣寫,不過奇怪的是當我打完 adoquery2. 的時候,並沒有fieldbyname這選項!可以編譯,但當我一打開此query的表單時就出現錯誤,message如下: Project Project1.exe raised exception class EAccessViolation with message 'Access violation at adress 004B1Cxxxxx in module 'Project1.exe' 我的dbcombobox的style是csdroplist,datafield 和 datasource也確定無誤,只是我的選項是在表單作動時才從資料庫讀入,不知是否有關聯。 dbbox3.Items.add(datamodule3.ADODataSet1.fieldbyname('出版社').AsString); datamodule3.ADODataSet1.Next;
chih
版主


發表:48
回覆:1186
積分:639
註冊:2002-04-02

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-05-13 08:28:30 IP:211.74.xxx.xxx 未訂閱
datetimepicker.date:=adoquery1.發生無法點選應該是你之前的程式碼有問題所以無把點選adoquery的屬性,可以把程式上傳看看嗎??
nachi
初階會員


發表:40
回覆:116
積分:31
註冊:2003-02-26

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-05-13 10:39:57 IP:218.165.xxx.xxx 未訂閱
chih~問題程式已上傳,主題如下...說明在該主題內 【Delphi】combobox 和 datetimepicker 一問...
chih
版主


發表:48
回覆:1186
積分:639
註冊:2002-04-02

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-05-14 08:52:38 IP:211.74.xxx.xxx 未訂閱
你要的是不是 1.如果在非瀏覽狀態,User可以供挑選所有作者欄位資料? 2.作者變動以後,出版社,類別,出版日一起變動
引言: chih~問題程式已上傳,主題如下...說明在該主題內 【Delphi】combobox 和 datetimepicker 一問...
nachi
初階會員


發表:40
回覆:116
積分:31
註冊:2003-02-26

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-05-14 09:24:23 IP:218.165.xxx.xxx 未訂閱
每一筆資料裡的作者、出版社、出版日等欄位,若是已存在,則瀏覽時會隨著資料內容而變動(就像姓名一樣),例第一、二筆的作者分別是王國榮、李維,當指標指在第一筆,作者欄就出則王國榮,指在第二筆則出現李維。 你說的第一點和我想法一樣(編輯狀態)。 第二點則否,沒有個功能,因為說不定作者會換出版社等....原因
Justmade
版主


發表:94
回覆:1934
積分:2030
註冊:2003-03-12

發送簡訊給我
#9 引用回覆 回覆 發表時間:2003-05-14 09:33:18 IP:218.16.xxx.xxx 未訂閱
引言: 又多了一篇,版主麻煩刪除一下,Thanks..
Chih 兄, 按小弟的經驗,post 失敗的機會很少,按一次即使慢些也沒所謂罷。 而且站長加了自動 Copy 的功能,即使萬一 post 失敗了再 post 時 paste 就可以了。 nachi 兄, 我沒細看你的程式,我自己使用 DataModule 時偏向於每個 Form 使用自己的 DataSources 指向 DataModule 的 Table / Query (留意 : 若 DataModule 比 Form 遲 Create 要在程式碼重新設定 DataSources.DataSet) 這樣你便可在該 Form 直接使用 timhuang 兄提供的方法 procedure TForm1.DataSource1DataChange(Sender: TObject; Field: TField); begin if Assigned(DataSources1.DataSet) then DateTimePicker1.Date := DataSources1.DataSet.FieldByName('FDATE').AsDateTime; end; 只稍作參考,Chih 兄在幫你看所以一定能解決的。
nachi
初階會員


發表:40
回覆:116
積分:31
註冊:2003-02-26

發送簡訊給我
#10 引用回覆 回覆 發表時間:2003-05-14 09:51:18 IP:218.165.xxx.xxx 未訂閱
justmade兄~你的意思是說把datasource分別放在個別的表單上嗎?而datamodule只放dataset、table、query...? 下午我用你說的方法試看看~因為上課時間要到囉^^ chih兄從我學習以來一直都很熱心幫忙,還有你和站上的許多人;真是受用良多,讓我事半功倍,在這裡說聲謝謝啦^^
Justmade
版主


發表:94
回覆:1934
積分:2030
註冊:2003-03-12

發送簡訊給我
#11 引用回覆 回覆 發表時間:2003-05-14 10:09:15 IP:218.16.xxx.xxx 未訂閱
引言: justmade兄~你的意思是說把datasource分別放在個別的表單上嗎?而datamodule只放dataset、table、query...?
不完全是這樣 DataModule 裡一樣會有 datasources 來處理 Master-Detail 的關係 Form 裡的 DataSources 則主要處理本 Form 的資料連接及適用於本 Form 的特殊事件。這樣會比較靈活一點。 這只是毎人習慣不是必然較好的方法,所以只作參考。
chih
版主


發表:48
回覆:1186
積分:639
註冊:2002-04-02

發送簡訊給我
#12 引用回覆 回覆 發表時間:2003-05-14 11:13:03 IP:211.74.xxx.xxx 未訂閱
看一下這篇吧.. http://delphi.ktop.com.tw/topic.php?TOPIC_ID=30427
chih
版主


發表:48
回覆:1186
積分:639
註冊:2002-04-02

發送簡訊給我
#13 引用回覆 回覆 發表時間:2003-05-14 11:15:03 IP:211.74.xxx.xxx 未訂閱
hi..JustMade.. 不好意思,有時不知道為何他就是會多一篇出來,我post時也都祇按依下而已
引言:
引言: 又多了一篇,版主麻煩刪除一下,Thanks..
Chih 兄, 按小弟的經驗,post 失敗的機會很少,按一次即使慢些也沒所謂罷。 而且站長加了自動 Copy 的功能,即使萬一 post 失敗了再 post 時 paste 就可以了。
Justmade
版主


發表:94
回覆:1934
積分:2030
註冊:2003-03-12

發送簡訊給我
#14 引用回覆 回覆 發表時間:2003-05-14 11:28:37 IP:218.16.xxx.xxx 未訂閱
引言: 有時不知道為何他就是會多一篇出來,我post時也都祇按依下而已
你是加入本題目進電郵通知然後在電郵通知直接按回覆嗎? 那個好像有點 bug 的 或是你的 Browser 會自動 refresh 變成重送資料一次? 怪怪的 沒關係啦間中多一篇也不是甚麼問題。
nachi
初階會員


發表:40
回覆:116
積分:31
註冊:2003-02-26

發送簡訊給我
#15 引用回覆 回覆 發表時間:2003-05-14 18:49:33 IP:218.165.xxx.xxx 未訂閱
chih~ 謝謝你的幫忙,的確是我想要做的功能^^ 你用的語法有些都是書上沒有的,看來又讓我挖到不少寶了^^ 我會仔細研究的... 還有justmade、timhuang、channel..... 也謝謝你們^o^
ttring
一般會員


發表:11
回覆:23
積分:16
註冊:2008-11-19

發送簡訊給我
#16 引用回覆 回覆 發表時間:2009-01-05 09:34:29 IP:60.248.xxx.xxx 訂閱
大大們,  最近我也有相關的問題, 
但......chih 大大的這篇, 似乎附件無法下載了 =.=
是否能夠重post??

我是有很多dbbox, 查詢時要連動, (查詢時 為整筆資料), 當然還有一個時間的欄位
但非查詢時, 有些要連動 (如代碼1 及描述1 和代碼2 及描述2)

十分感謝各位大大的幫忙


===================引 用 chih 文 章===================
看一下這篇吧.. http://delphi.ktop.com.tw/topic.php?TOPIC_ID=30427
Ktop_Robot
站務副站長


發表:0
回覆:3511
積分:0
註冊:2007-04-17

發送簡訊給我
#17 引用回覆 回覆 發表時間:2009-01-19 16:17:32 IP:000.000.xxx.xxx 未訂閱
提問者您好:


以上回應是否已得到滿意的答覆?


若已得到滿意的答覆,請在一週內結案,否則請在一週內回覆還有什麼未盡事宜,不然,
將由版主(尚無版主之區域將由副站長或站長)自由心證,選擇較合適之解答予以結案處理,
被選上之答題者同樣會有加分獎勵同時發問者將受到扣 1 分的處分。不便之處,請見諒。


有問有答有結案,才能有良性的互動,良好的討論環境需要大家共同維護,感謝您的配合。

------
我是機器人,我不接受簡訊.
系統時間:2024-05-07 9:08:36
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!