If you have a PH account, you can customize your PH profile.

View \FORM1.FRM

Calendar routines

Submitted By: Unknown
Rating: (Not rated) (Rate It)


VERSION 2.00
Begin Form frmcalendar
   BorderStyle     =   1  'Fixed Single
   Caption         =   "Calendar"
   ClientHeight    =   2865
   ClientLeft      =   930
   ClientTop       =   1485
   ClientWidth     =   4290
   ControlBox      =   0   'False
   Height          =   3270
   Icon            =   FORM1.FRX:0000
   Left            =   870
   LinkTopic       =   "Form1"
   MaxButton       =   0   'False
   MinButton       =   0   'False
   ScaleHeight     =   2865
   ScaleWidth      =   4290
   Top             =   1140
   Width           =   4410
   Begin ComboBox cboyear
      Height          =   300
      Left            =   2880
      Style           =   2  'Dropdown List
      TabIndex        =   3
      Top             =   360
      Width           =   1215
   End
   Begin ComboBox cbomonth
      Height          =   300
      Left            =   120
      Style           =   2  'Dropdown List
      TabIndex        =   1
      Top             =   360
      Width           =   2415
   End
   Begin CommandButton cmdcancel
      Cancel          =   -1  'True
      Caption         =   "&Cancel"
      Height          =   345
      Left            =   3000
      TabIndex        =   5
      Top             =   2400
      Width           =   1215
   End
   Begin CommandButton cmdok
      Caption         =   "&OK"
      Default         =   -1  'True
      Height          =   345
      Left            =   3000
      TabIndex        =   4
      Top             =   1965
      Width           =   1215
   End
   Begin Label lbldate
      Alignment       =   2  'Center
      ForeColor       =   &H00000080&
      Height          =   615
      Left            =   2880
      TabIndex        =   38
      Top             =   1200
      Width           =   1215
   End
   Begin Label lblday
      Alignment       =   2  'Center
      ForeColor       =   &H00000080&
      Height          =   255
      Left            =   2880
      TabIndex        =   37
      Top             =   1000
      Width           =   1215
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "29"
      Height          =   285
      Index           =   28
      Left            =   240
      TabIndex        =   7
      Top             =   2400
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "30"
      Height          =   285
      Index           =   29
      Left            =   600
      TabIndex        =   8
      Top             =   2400
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "31"
      Height          =   285
      Index           =   30
      Left            =   960
      TabIndex        =   9
      Top             =   2400
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "16"
      Height          =   285
      Index           =   15
      Left            =   600
      TabIndex        =   10
      Top             =   1680
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "17"
      Height          =   285
      Index           =   16
      Left            =   960
      TabIndex        =   11
      Top             =   1680
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "18"
      Height          =   285
      Index           =   17
      Left            =   1320
      TabIndex        =   12
      Top             =   1680
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "19"
      Height          =   285
      Index           =   18
      Left            =   1680
      TabIndex        =   13
      Top             =   1680
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "20"
      Height          =   285
      Index           =   19
      Left            =   2040
      TabIndex        =   36
      Top             =   1680
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "21"
      Height          =   285
      Index           =   20
      Left            =   2400
      TabIndex        =   35
      Top             =   1680
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "15"
      Height          =   285
      Index           =   14
      Left            =   240
      TabIndex        =   34
      Top             =   1680
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "23"
      Height          =   285
      Index           =   22
      Left            =   600
      TabIndex        =   33
      Top             =   2040
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "24"
      Height          =   285
      Index           =   23
      Left            =   960
      TabIndex        =   32
      Top             =   2040
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "25"
      Height          =   285
      Index           =   24
      Left            =   1320
      TabIndex        =   31
      Top             =   2040
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "26"
      Height          =   285
      Index           =   25
      Left            =   1680
      TabIndex        =   30
      Top             =   2040
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "27"
      Height          =   285
      Index           =   26
      Left            =   2040
      TabIndex        =   29
      Top             =   2040
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "28"
      Height          =   285
      Index           =   27
      Left            =   2400
      TabIndex        =   28
      Top             =   2040
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "22"
      Height          =   285
      Index           =   21
      Left            =   240
      TabIndex        =   27
      Top             =   2040
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "9"
      Height          =   285
      Index           =   8
      Left            =   600
      TabIndex        =   26
      Top             =   1320
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "10"
      Height          =   285
      Index           =   9
      Left            =   960
      TabIndex        =   25
      Top             =   1320
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "11"
      Height          =   285
      Index           =   10
      Left            =   1320
      TabIndex        =   24
      Top             =   1320
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "12"
      Height          =   285
      Index           =   11
      Left            =   1680
      TabIndex        =   23
      Top             =   1320
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "13"
      Height          =   285
      Index           =   12
      Left            =   2040
      TabIndex        =   22
      Top             =   1320
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "14"
      Height          =   285
      Index           =   13
      Left            =   2400
      TabIndex        =   21
      Top             =   1320
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "8"
      Height          =   285
      Index           =   7
      Left            =   240
      TabIndex        =   20
      Top             =   1320
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "2"
      Height          =   285
      Index           =   1
      Left            =   600
      TabIndex        =   19
      Top             =   960
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "3"
      Height          =   285
      Index           =   2
      Left            =   960
      TabIndex        =   18
      Top             =   960
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "4"
      Height          =   285
      Index           =   3
      Left            =   1320
      TabIndex        =   17
      Top             =   960
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "5"
      Height          =   285
      Index           =   4
      Left            =   1680
      TabIndex        =   16
      Top             =   960
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "6"
      Height          =   285
      Index           =   5
      Left            =   2040
      TabIndex        =   15
      Top             =   960
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "7"
      Height          =   285
      Index           =   6
      Left            =   2400
      TabIndex        =   14
      Top             =   960
      Width           =   300
   End
   Begin Label lblnumber
      Alignment       =   2  'Center
      Caption         =   "1"
      Height          =   285
      Index           =   0
      Left            =   240
      TabIndex        =   6
      Top             =   960
      Width           =   300
   End
   Begin Shape Shape1
      Height          =   1935
      Left            =   120
      Top             =   840
      Width           =   2655
   End
   Begin Label Label1
      Caption         =   "&Year"
      Height          =   255
      Index           =   1
      Left            =   2880
      TabIndex        =   2
      Top             =   120
      Width           =   495
   End
   Begin Label Label1
      Caption         =   "&Month"
      Height          =   255
      Index           =   0
      Left            =   120
      TabIndex        =   0
      Top             =   120
      Width           =   615
   End
End
'This code has been developed for EVERYONE'S use
' don't re-distribute this without ALL original files!!
'Phil Jones 1994

Option Explicit
Dim selectedate%

Sub cbomonth_click ()
Call setday
Call lblnumber_click(selectedate% - 1)
End Sub

Sub cboyear_Click ()
Static once% ' get rid of first click event
If Not once Then
    once = True
    Exit Sub
End If
Call cbomonth_click

End Sub

Sub checkdate (month1%, year1%)
Dim i%, value%, date1$

For i% = 28 To 32
    date1$ = (Str$(month1%) + "/" + Str$(i%) + "/" + Str$(year1%))
        If IsDate(date1$) Then
            value% = i%
        Else
            Call displaynumbers(value%)
            Exit Sub
        End If
Next i%
End Sub

Sub cmdcancel_Click ()
Unload frmcalendar

End Sub

Sub cmdok_Click ()
Dim month1%, day1%, year1%, date1$
day1% = selectedate%
month1% = cbomonth.ListIndex + 1
year1% = cboyear.ListIndex + 1960
date1$ = (Str$(month1%) + "/" + Str$(day1%) + "/" + Str$(year1%))
date1$ = Format$(date1$, "general date")

MsgBox Format$(date1$, "long date") 'do whatever here to pass the date where
                                    'you need it!

End Sub

Function determinemonth% ()
Dim i%
i% = cbomonth.ListIndex'which month is selected?
determinemonth% = i% + 1
End Function

Function determineyear% ()
Dim i%
i% = cboyear.ListIndex'which year was selected?
If i% = -1 Then Exit Function'problem!!
determineyear% = CInt(Trim(cboyear.List(i%)))
End Function

Sub displaynumbers (number%)
Dim i%
For i% = 28 To 30
    lblnumber(i%).Visible = False
Next i%
For i% = 28 To number% - 1
    lblnumber(i%).Visible = True
Next i%

End Sub

Sub fillcbomonth ()
cbomonth.AddItem "January"
cbomonth.AddItem "February"
cbomonth.AddItem "March"
cbomonth.AddItem "April"
cbomonth.AddItem "May"
cbomonth.AddItem "June"
cbomonth.AddItem "July"
cbomonth.AddItem "August"
cbomonth.AddItem "September"
cbomonth.AddItem "October"
cbomonth.AddItem "November"
cbomonth.AddItem "December"


End Sub

Sub fillcboyear ()
Dim i%
For i% = 1960 To 2060'put whatever years tyou want here,
    cboyear.AddItem Str$(i%)'but don't forget to also change the code in setdate
Next i%

End Sub

Sub Form_Load ()

selectedate% = CInt(Format$(Now, "dd"))

'fill month combo box
Call fillcbomonth

'fill year combo box
Call fillcboyear

'put current date and year im combo box
Call setdate

'set current name for day
Dim r%, caption1$
r% = Weekday(Format$(Now, "general date"))
If r% = 1 Then
    caption1$ = "Sunday"
ElseIf r% = 2 Then
    caption1 = "Monday"
ElseIf r% = 3 Then
    caption1 = "Tuesday"
ElseIf r% = 4 Then
    caption1 = "Wednesday"
ElseIf r% = 5 Then
    caption1 = "Thursday"
ElseIf r% = 6 Then
    caption1 = "Friday"
Else
    caption1 = "Saturday"
End If
lblday.Caption = caption1$

End Sub

Sub lblnumber_click (Index As Integer)
Dim i%
On Error GoTo err1
For i% = 0 To 30
    lblnumber(i%).BorderStyle = 0
Next i%
If lblnumber(Index).BorderStyle = 1 Then
    lblnumber(Index).BorderStyle = 0
Else
    lblnumber(Index).BorderStyle = 1
End If
selectedate% = Index + 1
Dim month1%, day1%, year1%, date1$
day1% = selectedate%
month1% = cbomonth.ListIndex + 1
year1% = cboyear.ListIndex + 1960
date1$ = (Str$(month1%) + "/" + Str$(day1%) + "/" + Str$(year1%))
'date1$ = Format$(date1$, "general date")
Dim r%
Dim caption1$
r% = Weekday(date1$)
If r% = 1 Then
    caption1$ = "Sunday"
ElseIf r% = 2 Then
    caption1 = "Monday"
ElseIf r% = 3 Then
    caption1 = "Tuesday"
ElseIf r% = 4 Then
    caption1 = "Wednesday"
ElseIf r% = 5 Then
    caption1 = "Thursday"
ElseIf r% = 6 Then
    caption1 = "Friday"
Else
    caption1 = "Saturday"
End If
lblday.Caption = caption1$
lbldate.Caption = Format$(date1$, "long date")

err1:
    If Err = 0 Then Exit Sub
    If Err = 13 Then
        selectedate% = selectedate% - 1
    Exit Sub
    End If
    End Sub

Sub setdate ()
'since the list starts at 1960, this is 0, so we're going
' to get the date, and subtract 1960 from it, and use this
'as our starting listindex
'put whatever value you need to for the first year
'year
Dim r%, i%
r% = CInt(Format$(Now, "yyyy"))
i% = r% - 1960
cboyear.ListIndex = i%

'month
r% = CInt(Format$(Now, "mm"))
cbomonth.ListIndex = (r% - 1)

'day
r% = CInt(Format$(Now, "dd"))
lblnumber(r% - 1).BorderStyle = 1
selectedate% = r%

End Sub

Sub setday ()
Dim month1%, year1%
month1% = determinemonth()
year1% = determineyear()
Call checkdate(month1%, year1%)

End Sub

corner
© 1996-2008. All rights reserved. Reproduction in whole or in part, in any form or medium without express written permission is prohibited.
Violators of this policy may be subject to legal action. Please read our Terms Of Use and Privacy Statement for more information.
Publisher: Lars Hagelin.
bootstrapLabs Logo A bootstrapLabs project.