在本課中,您將學習如何在 Windows 窗體上顯示日期。您還將學習如何在使用者選擇日期時執行操作。
當使用顯示日曆的控制元件時,該控制元件使使用者能夠輕鬆選擇日期。使用這些控制元件還可以確保日期的格式正確。可以使用 MonthCalendar 控制元件或 DateTimePicker 控制元件顯示日曆。
工具/原料
電腦一臺
VB2008
瞭解MonthCalendar和DateTimePicker控制元件
MonthCalendar 控制元件可讓您顯示一個或多個月的日曆。如果您使用此控制元件,則使用者可以選擇單個日期或一個日期範圍。
DateTimePicker 控制元件有兩種狀態。預設情況下,DateTimePicker 控制元件以文字框形式出現,並帶有一個下拉箭頭。使用者單擊下拉箭頭時,會出現一個日曆。如果您使用此控制元件,則使用者只可以選擇單個日期。DateTimePicker 控制元件還使您能夠顯示時間而不是日期。
用於從這些控制元件中檢索日期的過程根據所使用的控制元件而不同。使用 MonthCalendar 控制元件的 Start 屬性,並使用 DateTimePicker 控制元件的 Value 屬性。
試一試【檢索日期並在標籤中顯示 】
新建一個專案。
單擊“Windows 窗體應用程式”,然後單擊“確定”。
將“Label”控制元件新增到窗體中,保留預設名稱“Label1”。
移除“Label”控制元件的“Text”屬性中的文字。
將“MonthCalendar”控制元件新增到窗體中,保留預設名稱“MonthCalendar1”。
雙擊“MonthCalendar”控制元件以便在程式碼編輯器中輸入預設事件處理程式。
在 MonthCalendar1_DateChanged 事件處理程式中,新增下列程式碼以向列表新增項。
Me.Label1.Text = CStr(Me.MonthCalendar1.SelectionRange.Start)
返回設計器檢視,並將“DateTimePicker”控制元件新增到窗體中,保留預設名稱“DateTimePicker1”。
雙擊“DateTimePicker”控制元件以便在程式碼編輯器中輸入預設事件處理程式。
在 DateTimePicker_ValueChanged 事件處理程式中,新增下列程式碼以向列表新增項。
Me.Label1.Text = CStr(Me.DateTimePicker1.Value)
執行程式。
當窗體出現時,單擊“MonthCalendar”控制元件中的日期,然後驗證該日期是否會顯示在標籤中。
單擊“DateTimePicker”控制元件的下拉箭頭並選擇日期。
日期和時間將顯示在標籤中。
關閉程式。
檢索多個日期
將 MonthCalendar1_DateChanged 事件處理程式中的程式碼更改為以下程式碼。此程式碼將設定控制元件中可選擇的最大天數(兩週)。如果僅選擇了一天,則在標籤中顯示開始日期;如果在“MonthCalendar”控制元件中選擇了一個範圍,則顯示相應的日期範圍。
Me.MonthCalendar1.MaxSelectionCount = 14
If Me.MonthCalendar1.SelectionRange.Start = _
Me.MonthCalendar1.SelectionRange.End Then
Me.Label1.Text = CStr(Me.MonthCalendar1.SelectionStart)
Else
Me.Label1.Text = Me.MonthCalendar1.SelectionRange.Start & _
" - " & Me.MonthCalendar1.SelectionRange.End
End If
執行程式。
當窗體出現時,在“MonthCalendar”控制元件中選擇日期範圍,然後驗證該日期範圍是否會顯示在標籤中。
關閉程式。
設定日期格式
可以通過使用 FormatDateTime 函式為 MonthCalendar 控制元件和 DateTimePicker 控制元件返回的日期設定格式。可以使用一些常數來指示日期的格式:
將 MonthCalendar1_DateChanged 事件處理程式中的程式碼更改為以下程式碼。此程式碼將返回的日期設定為長日期格式。
Me.MonthCalendar1.MaxSelectionCount = 14
If Me.MonthCalendar1.SelectionRange.Start = _
Me.MonthCalendar1.SelectionRange.End Then
Me.Label1.Text = FormatDateTime( _
Me.MonthCalendar1.SelectionStart, _
DateFormat.LongDate)
Else
Me.Label1.Text = FormatDateTime( _
Me.MonthCalendar1.SelectionRange.Start, _
DateFormat.LongDate) & " - " & FormatDateTime( _
Me.MonthCalendar1.SelectionRange.End, DateFormat.LongDate)
End If
將 DatePicker1_ValueChanged 事件處理程式中的程式碼更改為以下程式碼。此程式碼將返回的日期設定為長日期格式。
Me.Label1.Text = FormatDateTime(Me.DateTimePicker1.Value, _
DateFormat.LongDate)
執行程式。
當窗體出現時,單擊“MonthCalendar”控制元件中的單個日期或日期範圍。驗證該日期或日期範圍是否會在標籤中以長日期格式顯示。
單擊“DateTimePicker”控制元件中的日期,並驗證該日期是否會在標籤中以長日期格式顯示。
關閉程式。
在本課中,您學習瞭如何檢索 MonthCalendar 和 DateTimePicker 控制元件中選擇的日期並在 Windows 窗體上顯示它們。您還學習瞭如何顯示日期範圍以及如何設定檢索到的日期的格式。在下一課中,您將學習如何使用資料控制元件。
注意事項
如有幫助,請點【投票】。
如要細品,可點【收藏】。
如要繼續,可點【關注】。
如要送人,可點【分享】。
如有疑問,可以【留評】。