看板 Flash 關於我們 聯絡資訊
謝謝您的回覆。 我照著打後,還是沒有0跑出來耶。 不過沒有錯誤碼。 var myDate:Date = new Date (); var myYear:Number = myDate.getFullYear() ; var hourNumber:Number = myDate.getHours(); var myHours:String; var myMinutes:Number = myDate.getMinutes (); var mySeconds:Number = myDate.getSeconds (); var myM:String; var myS:String; if ( hourNumber < 10) { myHours = "0" + hourNumber.toString();} if (myMinutes < 10){myM = "0" + myMinutes.toString();} if (mySeconds < 10) {myS = "0" + mySeconds.toString();} time_txt.text = myYear + "─" + hourNumber + ":" + myMinutes + ":" + mySeconds ; 最後一行換成 myM + myS,就是變成小於10的時候,會有數字跑出來。 @__@ ※ 引述《dsmwang (科科)》之銘言: : ※ 引述《ragtime (rag)》之銘言: : : 請問各位高手 : : 我照著書上的語法寫時鐘, : : 可是在設定時間小於10, : : 則時間前面加一個0的時候, : : 輸出就出現錯誤 : : 「1067: String 類型值以隱含方式強制轉型成不相關的類型 Number。」 : : 我這邊的語法是: : : if (myHours < 10) { myHours = "0" + myHours; } : : time_txt.text = myYear + "─" + myHours + ":" + myMinutes + ":" + mySeconds ; : : 當我改成 : : if (myHours < 10) { myHours = Number ("0") + myHours; } : : 錯誤的訊息就不會出現,但是時間小於10的時候,前面依然沒有加0, : : 想請問板上各位高手,這個情況要如何解決呢? : : 感激不盡!! : 你現在是 : var myHours:Number = myDate.getHours (); : 就是說,你那一行定義了myHours是Number, : 然後把myDate.getHours指定給myHours : 那你現在希望要有0在前面 : 你可以先定義另外一個變數是Number...如: : var hourNumber:Number = myDate.getHours(); : 然後在定義一個字串 : var myHours:String; : 然後把程式碼碼改成 : if ( hourNumber < 10) { myHours = "0" + hourNumber.toString() } : 你原本Number("0")應該是把字串"0"改成Number的意思吧, : (猜的) : 那你看看你的式子, myHours = Number ("0") + myHours : myHours = 0 + myHours : (數字) : 這放在任何地方看都是非常正確且無意義的句子, : 這也是為何你那樣改沒用的原因。 : 新手回文,請多指教。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.169.129.13
dsmwang:time_txt.text = ... + myHours + ....... 04/19 23:20