2012-07-30 99 views
1

我一直在玩麻省理工學院AppInventor並試圖計算兩個日期之間的持續時間。來自文本的MakeInstant不起作用?

我從兩個文本字段獲取日期值。 Clock.MakeInstant表示它只能接受MM/DD/YYYY格式的日期,所以我很小心地這樣做。不過,當我嘗試將它們送入MakeInstant時,它總是彈出相同的消息,說明只能接受MM/DD/YYYY hh:mm:ss或MM/DD/YYYY或hh:mm。在將它們傳遞給MakeInstant以確認它們不會以某種方式損壞並且它們很好 - 每個只是MM/DD/YYYY格式的日期之前,我都會打印輸入的文本值。

Code http://i45.tinypic.com/23ualae.png Error http://i48.tinypic.com/ycnes.png

我不知道還有什麼嘗試。據我所知,我遵循了這封信的指示。關於如何將文本傳遞給Clock.MakeInstant的任何示例?

回答

0
+0

感謝您的快速回復。我想說的是,我正在這樣做,它不起作用。我添加了代碼的圖片,日期條目和最終結果。 – 2012-08-01 04:04:20

+1

如果兩個文本框在使用MakeInstant之前都有正確的格式,那麼您應該添加合理性檢查,也不想測試「... <= 0」嗎?你的「then-do」子句是怎麼樣的?如果我沒有輸入日期點擊按鈕,我得到你的錯誤... – Taifun 2012-08-01 20:14:30

+0

我被卡在第一次轉換,因爲我認爲我做錯了什麼,但你的答案顯示代碼是正確的。之後,我添加了調試輸出,並開始禁用部分代碼,以查看我會得到多少。事實證明,這個初始的持續時間計算是正確的,失敗的部分會在稍後進行,當我對日期字段之一以及之前保存在數據庫中的另一個日期執行相同操作時。第二個日期格式不正確。試圖修復現在,但沒有運氣 - 如果我試圖保存毫秒,並在稍後格式化它不起作用。 – 2012-08-02 05:58:23