'以VB的观念你去变通吧.Private Sub Command1_Click() yearb = Val(Text1.Text) If (yearb Mod 4 = 0 And yearb Mod 100 <> 0) Or (yearb Mod 400 = 0) Then MsgBox "润年" If Month(Now)=2 then '将monthview月份加上1带入变量 End If Else MsgBox "平年" End If End Sub
cbm666 你好 “ '将monthview月份加上1带入变量”这句不太明白,能说的清楚点吗。
判断你所选的年份是否为润年, 再判断是否为2月份"如果" 没有29号, 则你可以点一个"加1的小图标",***** 这只是一个举例,但MonthView 它并没你所说的这个Bug *************代码将如下:Option Explicit Dim aa$, add1 As Boolean Private Sub MonthView1_DateClick(ByVal DateClicked As Date) aa = MonthView1.Year & "/" & MonthView1.Month & "/" & MonthView1.Day If (MonthView1.Year Mod 4 = 0 And MonthView1.Year Mod 100 <> 0) Or (MonthView1.Year Mod 400 = 0) Then add1 = True '点了某个图标后变为True If MonthView1.Month = 2 And add1 Then aa = MonthView1.Year & "/" & MonthView1.Month & "/" & MonthView1.Day + 1 End If add1 = False MsgBox aa & vbCrLf & Chr(10) & WeekdayName(Weekday(aa)) End Sub
yearb = Val(Text1.Text)
If (yearb Mod 4 = 0 And yearb Mod 100 <> 0) Or (yearb Mod 400 = 0) Then
MsgBox "润年"
If Month(Now)=2 then
'将monthview月份加上1带入变量
End If
Else
MsgBox "平年"
End If
End Sub
“ '将monthview月份加上1带入变量”这句不太明白,能说的清楚点吗。
Dim aa$, add1 As Boolean
Private Sub MonthView1_DateClick(ByVal DateClicked As Date)
aa = MonthView1.Year & "/" & MonthView1.Month & "/" & MonthView1.Day
If (MonthView1.Year Mod 4 = 0 And MonthView1.Year Mod 100 <> 0) Or (MonthView1.Year Mod 400 = 0) Then
add1 = True '点了某个图标后变为True
If MonthView1.Month = 2 And add1 Then aa = MonthView1.Year & "/" & MonthView1.Month & "/" & MonthView1.Day + 1
End If
add1 = False
MsgBox aa & vbCrLf & Chr(10) & WeekdayName(Weekday(aa))
End Sub