ダブルクリックで日付を決定する
MonthCalendarコントロールにはDoubleClickイベントが存在しない為、
MouseDownイベントで強引にDoubleClickを判定させなければいけない。
例)フォームにMonthCalendarコントロールとTextBoxが貼ってあり日付をダブルクリックするとTextBoxに日付が格納される。
Public Class Form1
Private LastClickTime As Long
Private DoubleClickFlg As Boolean
Private LastClickDate As String
Private Sub MonthCalendar1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles MonthCalendar1.MouseDown
If e.Button = MouseButtons.Left Then
If Not DoubleClickFlg AndAlso _
Now.Ticks - LastClickTime <= _
SystemInformation.DoubleClickTime * 5000 AndAlso _
(LastClickDate = Me.MonthCalendar1.SelectionStart.ToString("yyMMdd")) _
Then
OnDoubleClick(EventArgs.Empty)
DoubleClickFlg = True
Me.TextBox1.Text = Me.MonthCalendar1.SelectionStart.ToString("yyMMdd")
Else
DoubleClickFlg = False
End If
LastClickDate = Me.MonthCalendar1.SelectionStart.ToString("yyMMdd")
LastClickTime = Now.Ticks
End If
End Sub
.
最終更新:2008年09月18日 19:28