2013-07-20 73 views
1

我正在嘗試構建一個工作中斷跟蹤器,我想要一個按鈕來顯示標籤中的當前時間。我嘗試了多種解決方案,這是我得到了多少。獲取當前時間以在標籤中顯示。 VB.net

Sub AddButtonClick(sender As Object, e As EventArgs)   
     Dim Start as Integer 
     System.DateTime.Now = Start 
     total.Text = Start  
End Sub 

當我這樣做,我得到的錯誤,屬性'現在'是隻讀。

回答

4

嘗試......

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load  
    Timer1.Start() 
End Sub 

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick 
    Label12.Text = TimeOfDay.ToString("h:mm:ss tt") 
End Sub 
+1

這裏有什麼'TimeOfDay'?如果它是'TimeSpan'(大概來自'DateTime.Now'),那麼我不希望這個工作 - 'tt'對'DateTime'有效,但對'TimeSpan'格式不是有效。 (你需要逃避冒號。) –

+0

@JonSkeet請參閱此鏈接 - https://msdn.microsoft.com/en-us/library/8hhbhw4c%28v=vs.90%29.aspx – edCoder

+0

哇,這比使用TimeSpan更糟糕。但是,它會工作。我通常建議不要使用VB特定的屬性。 –

3

嘗試

total.Text = DateTime.Now.ToString() 

Dim theDate As DateTime = System.DateTime.Now 
total.Text = theDate.ToString() 

您聲明StartInteger,而你正試圖把一個DateTime在裏面,這是不可能的。

12

這裏有幾個問題:

  • 你的任務是南轅北轍;你想一個值分配給DateTime.Now代替Start
  • DateTime.NowDateTime類型,而不是Integer的值,所以轉讓不反正工作
  • 沒有必要有Start變量無妨;它做沒有好
  • total.TextString類型的屬性 - 不是DateTimeInteger

(有些只能在執行時出現,除非你有Option Strict,你真的應該。)

你應該使用:

total.Text = DateTime.Now.ToString() 

......可能指定的文化和/或FO rmat說明符,如果您想以特定格式顯示結果。

+0

這正是我一直在尋找。現在只需在幾分鐘內設置一個差異,我就完成了。非常感謝。 – user2602702

+0

@ user2602702從另一個'DateTime'中減去一個'TimeSpan'會產生一個'TotalMinutes'屬性(一個'Double'),它應該告訴你你需要知道什麼...... – Basic

+0

@ user2602702:現在我已經接受了,看起來它不會起作用,對我來說 - 你能澄清這個答案中缺少的東西嗎,所以我可以改進它嗎? –

0

使用Date.Now而不是DateTime.Now

+0

這不提供問題的答案。一旦你有足夠的[聲譽](https://stackoverflow.com/help/whats-reputation),你將可以[對任何帖子發表評論](https://stackoverflow.com/help/privileges/comment);相反,[提供不需要提問者澄清的答案](https://meta.stackexchange.com/questions/214173/why-do-i-need-50-reputation-to-comment-what-c​​an- I-DO-代替)。 - [來自評論](/ review/low-quality-posts/19050606) – Mayur

+0

@Mayur在我看來,這是一個答案(雖然是一個簡短的答案)。只有在問題或「感謝」作爲答案發布時,或者它是僅鏈接答案時才應該刪除答案;簡答題或錯誤答案不應刪除。請參閱[您做錯了:在低質量帖子隊列中請求理智](https://meta.stackoverflow.com/questions/287563/youre-doing-it-wrong-a-plea-for-sanity -in最低質職位隊列)。 – NobodyNada