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

為何時間計算的結果不是我想的???

尚未結案
angel
一般會員


發表:13
回覆:9
積分:4
註冊:2002-03-12

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-05-09 14:30:16 IP:203.204.xxx.xxx 未訂閱
請教各位前輩: 例如: var s,e,tot:Tdatetime; begin s:=StrToTime('12:00'); e:=StrToTime('12:10'); a:=timetostr(e-s); showmessage(a); end; 結果 a='12:10' 為什麼不是 '00:10' 呢???
Justmade
版主


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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-05-09 14:47:56 IP:218.16.xxx.xxx 未訂閱
TimeToStr() 是將一個值變換成實質時間的顯示方式,'00:10' 的意思是午夜零時10分 ,而不是十分鐘的意思 你 e-s 的結果是相距時間而非實質時間,本來是不應用TimeToStr 來做的。 因於你的系統是十二小時制,所以午夜零時十分就會以 12:10 來表達。 若你要顯示為 '00:10' 你是可以用 FormatDateTime('hh:nn',a) 但其實這仍是錯的因為那 '00:10' 仍是午夜零時十分的意思。不過若你自己精楚你所要表達的你還是可以這樣做...
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-05-09 15:15:34 IP:202.39.xxx.xxx 未訂閱
用 DecodeTime 來取得兩時間差的各單位(時/分/秒/毫秒)值    --- 每個人都是一本書
angel
一般會員


發表:13
回覆:9
積分:4
註冊:2002-03-12

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-05-09 18:46:50 IP:203.204.xxx.xxx 未訂閱
因為我想取得兩時間相減後,再得到為幾個小時, 後來我用 DecodeTime 就可以了 謝謝大家
系統時間:2024-06-01 15:37:33
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!