datetimepicker無法儲存的問題....... |
尚未結案
|
devilfire
一般會員 發表:24 回覆:8 積分:6 註冊:2003-07-27 發送簡訊給我 |
我是用BED的TABLE去聯結資料庫,
但是只能夠存入一比而已,
下面是我的程式碼, procedure TForm1.DataSource1DataChange(Sender: TObject; Field: TField);
begin
datetimepicker1.Date:=table1.fieldbyname('time').AsDatetime;
datetimepicker2.Date:=table1.fieldbyname('time2').AsDatetime;
end; procedure TForm1.ToolButton8Click(Sender: TObject);
begin
Table1.Edit;
{Table1.FieldByName('time').AsDateTime := DateTimePicker1.Date;}
{Table1.FieldByName('time2').AsDateTime := DateTimePicker2.Date;}
table1.Post;
end; 我是把儲存的程式地方寫在TOOLBAR裡面的一個BUTTON,
結果只能更改TIME,
而TIME1卻不變,
但是把上面用大括號括起來的兩行程式對掉的話,
就變成TIME1可以更改,
TIME就不行了,
真的很奇怪.........
有誰知道為什麼ㄇ???????
|
leo2568
中階會員 發表:54 回覆:124 積分:70 註冊:2003-09-21 發送簡訊給我 |
引言:我是把儲存的程式地方寫在TOOLBAR裡面的一個BUTTON, 結果只能更改TIME,而TIME1卻不變,但是把上面用大括號括起來 的兩行程式對掉的話,就變成TIME1可以更改,TIME就不行了,真 的很奇怪.........有誰知道為什麼ㄇ???????試試以下方法看看: procedure TForm1.DateTimePicker1Change(Sender: TObject); begin DBedit1.Text := DateToStr(DateTimePicker1.Date); end; procedure TForm1.DateTimePicker2Change(Sender: TObject); begin DBedit2.Text := DateToStr(DateTimePicker2.Date); end;發表人 - leo2568 於 2003/11/29 23:23:17 |
timhuang
尊榮會員 發表:78 回覆:1815 積分:1608 註冊:2002-07-15 發送簡訊給我 |
Hi, 因為你寫了 onDataChange 的 event 了. 所以對於先做的 edit data 有用, 但後做不會變的原因是因為將資料再次地讀出進入你的 datetimepicker 中了, 所以後做的就看起來不會動作了, 你可以修改一下 onDataChange 就不會有這樣的問題了! 你會寫 onDataChange 的 event 原因若是因為要將 datetimepicker 當做資料感知元件來使用的話, 可以改寫在 dataset 的 AfterScroll event 中會比較理想, 才不會發生你現在看到的[異常]現象. 將 DataChange 的內容拿掉就可以了! 發表人 - timhuang 於 2003/11/29 23:28:35
|
devilfire
一般會員 發表:24 回覆:8 積分:6 註冊:2003-07-27 發送簡訊給我 |
|
leo2568
中階會員 發表:54 回覆:124 積分:70 註冊:2003-09-21 發送簡訊給我 |
引言:我已經把在onDataChange程式刪掉了, 把程式加在dataset 的 AfterScroll event 中, 在執行的時候是可以更改時間, 但是跳到下一筆回去的時候又變回到原來的時間, 有點奇怪???????參考看看.. procedure TForm1.DataSource1DataChange(Sender: TObject; Field: TField); begin發表人 - leo2568 於 2003/11/30 00:23:29 |
hahalin
版主 發表:295 回覆:1698 積分:823 註冊:2002-04-14 發送簡訊給我 |
|
timhuang
尊榮會員 發表:78 回覆:1815 積分:1608 註冊:2002-07-15 發送簡訊給我 |
|
devilfire
一般會員 發表:24 回覆:8 積分:6 註冊:2003-07-27 發送簡訊給我 |
timhuang你好..
這是我修改後的程式碼, procedure Torder.Table1AfterScroll(DataSet: TDataSet);
begin
DateTimePicker1.Date := Table1.FieldByName('交貨日期').AsDateTime;
DateTimePicker2.Date := Table1.FieldByName('填單日期').AsDateTime;
end; procedure Torder.ToolButton8Click(Sender: TObject);
begin
Table1.Edit;
Table1.FieldByName('交貨日期').AsDateTime := DateTimePicker1.Date;
Table1.FieldByName('填單日期').AsDateTime := DateTimePicker2.Date;
table1.Post;
end; 已經把來源寫在AFTER SCROLL中,
而其他不變,
參考一下......
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |