2011-02-16 59 views
1

從我last question跟進,每當我用不同的日期/時間格式的系統上運行它,我仍然得到錯誤。我正在使用日期編輯和時間編輯框來選擇我的日期和時間值。日期編輯格式爲dd-mm-yy,我的時間編輯格式爲hh:mm。當我將它們保存到TDateTime變量dtLastOnline時,我得到'xx-xx-xx不是有效的日期和時間值'錯誤。「XX-XX-XX是不是一個有效的日期和時間值」錯誤

設置我dtLastOnline像dtLastOnline := dedtLastOnline.Date + tpLastOnline.Time;

我如何確保我的應用程序有無論它是從運行相同的日期/時間顯示格式?

我嘗試設置ShortDateFormat,LongDateFormat等,但將無法工作。

謝謝!

+2

您還沒有在錯誤發生時給予我們的代碼行。你提供的代碼是一個簡單的浮點加法。此外,您不希望自己的應用在任何運行時都具有相同的日期/時間格式。您想要使用適合用戶區域設置的格式。我無法理解美國約會,而美國人無法理解英國約會。不要強迫你的語言環境,它不會工作! – 2011-02-16 12:26:22

+0

它同樣在我看來應該像``Trunc()`應用Date值並且從Time值中減去`Trunc(Time)`,以便它們在適當的範圍內。你需要Date的組成部分和Time的小數部分。 – 2011-02-16 12:34:32

回答

3

我想有兩個TDateTimePickers,一組保存數據,和一個舉行時間。那是你在做什麼?

我發現我下面的作品沒有任何錯誤:

var 
    dt: TDateTime; 
    ... 
dt := DateOf(DatePicker.Date) + TimeOf(TimePicker.Time); 
ShowMessage(FormatDateTime('c', dt)); 

輸出是:

enter image description here

相關問題