Calendar example:
Make sure to include the above functions to make this work!
The parms for Calendar is year and number of months in width.
Type calendar Field day% Field t% Field d% End Type Function calendar(year$, width% = 3) height% = Int(12 / width%) - 1 today$ = CurrentDate$() currentday% = Int(Left$(today$,2)) currentmonth% = GetMonthNumeric(Mid$(today$,4,3)) currentyear% = Int(Right$(today$,4)) If year$ = "" Then y% = Int(Right$(today$,4)) Else y% = Int(year$) EndIf For w = 1 To 7 dow$ = dow$ + GetDayOfWeekName$(w) Next For month_y = 0 To height c$ = "" For month_x = 1 To width ; number of months displayed in width cal.calendar = New calendar cal\day = 0 cal\t = GetDaysInMonth(month_y*width%+month_x,y%) cal\d = GetDayOfWeekVal(1,month_y*width%+month_x,y%) c$ = c$ + GetMonthAlpha$(month_y*width%+month_x,4) + String$(" ",12) Next Print c$ Print String$(dow$,width) For i = 1 To 6 ; number of lines for each month c$ = "" month_x = 0 For cal.calendar = Each calendar month_x = month_x + 1 month% = (month_x + month_y * width) For w = 1 To 7 If cal\day = 0 Then If cal\d = w Then cal\day = 1 EndIf Else cal\day = cal\day + 1 EndIf If cal\day <= cal\t And cal\day > 0 Then If cal\day = currentday And month = currentmonth And y% = currentyear Then c$ = c$ LSet$(cal\day,2) Else c$ = c$ + RSet$(LSet$(cal\day,2),3) EndIf Else c$ = c$ + " " EndIf Next Next If Trim(c$) > "" Then Print c$ Next Delete Each calendar Next End Function Graphics 1024,768,32,2 calendar(1998, 3) WaitKey() End
Make sure to include the above functions to make this work!
The parms for Calendar is year and number of months in width.