Content Supported by Sourcelens Consulting
VERSION 5.00
Begin VB.Form frmSetTime
BorderStyle = 3 'Fixed Dialog
Caption = "Form1"
ClientHeight = 2760
ClientLeft = 780
ClientTop = 1590
ClientWidth = 5175
LinkTopic = "Form1"
MaxButton = 0 'False
MinButton = 0 'False
ScaleHeight = 2760
ScaleWidth = 5175
ShowInTaskbar = 0 'False
Begin VB.CommandButton cmdCancel
Cancel = -1 'True
Caption = "Cancel"
Height = 495
Left = 3360
MaskColor = &H00000000&
TabIndex = 7
Top = 1200
Width = 1215
End
Begin VB.CommandButton cmdOK
Caption = "OK"
Default = -1 'True
Height = 495
Left = 3360
MaskColor = &H00000000&
TabIndex = 6
Top = 480
Width = 1215
End
Begin VB.TextBox txtChannel
Height = 375
Left = 1200
TabIndex = 5
Text = "3"
ToolTipText = "Enter the channel to record"
Top = 1920
Width = 615
End
Begin VB.TextBox txtEnd
Height = 375
Left = 1200
TabIndex = 4
Text = "12:30 AM"
ToolTipText = "Enter the time to stop recording"
Top = 1200
Width = 1215
End
Begin VB.TextBox txtStart
Height = 375
Left = 1200
TabIndex = 3
Text = "12:00 AM"
ToolTipText = "Enter the time to start recording"
Top = 480
Width = 1215
End
Begin VB.Label lblCaption
Alignment = 1 'Right Justify
Caption = "Channel"
Height = 255
Index = 2
Left = 0
TabIndex = 2
Top = 2040
Width = 1095
End
Begin VB.Label lblCaption
Alignment = 1 'Right Justify
Caption = "End Time"
Height = 255
Index = 1
Left = 0
TabIndex = 1
Top = 1320
Width = 1095
End
Begin VB.Label lblCaption
Alignment = 1 'Right Justify
Caption = "Start Time"
Height = 255
Index = 0
Left = 0
TabIndex = 0
Top = 600
Width = 1095
End
End
Attribute VB_Name = "frmSetTime"
Attribute VB_Base = "0{FF906415-E9E1-11CF-84BA-00AA00C007F0}"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_TemplateDerived = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
'**********************************************
' Purpose: Form for getting user input to set
' the time and channel for recording.
' Part of the VCR sample application
'**********************************************
Option Explicit
Private Sub cmdCancel_Click()
' unload the form, release the reference
Unload Me
Set frmSetTime = Nothing
End Sub
Private Sub cmdOK_Click()
Dim intOK As Integer 'Return value
Dim intChannel As Integer 'Channel number
Dim strMsg As String 'Message text
' Call the function to validate the entry
intOK = ValidateTime(txtStart.Text, txtStart)
' If it wasn't valid, bail out here
If intOK = False Then Exit Sub
' Call the function to validate the entry
intOK = ValidateTime(txtEnd.Text, txtEnd)
' If it wasn't valid, bail out here
If intOK = False Then Exit Sub
' Read the value of the channel display
intChannel = Val(txtChannel)
' If out of range, warn the user
If intChannel < 2 Or intChannel > 13 Then
strMsg = "Channel must be between 2 and 13!"
MsgBox strMsg, vbOKOnly, "Invalid Channel"
txtChannel.SetFocus
Exit Sub
End If
' Set the properties of the Recorder class
Recorder.StartRecording = CVar(txtStart.Text)
Recorder.StopRecording = CVar(txtEnd.Text)
Recorder.Channel = intChannel
' unload the form, release the reference
Unload Me
Set frmSetTime = Nothing
End Sub
Private Sub Form_Load()
' If the property of the class contains a
' value, assign it to the TextBox
If Recorder.StartRecording <> Empty Then
txtStart.Text = Recorder.StartRecording
End If
If Recorder.StopRecording <> Empty Then
txtEnd.Text = Recorder.StopRecording
End If
txtChannel = Recorder.Channel
End Sub
'**********************************************
' Purpose: Validates the time string entered by
' the user. If correct, it formats the
' string, if not, it displays a message.
' Inputs: Time: The string passed from a
' text box.
' Field: The name of the text box control.
' Returns: True for a valid time, False if the
' string isn't a valid time.
'**********************************************
Function ValidateTime(Time As String, Field As Control) As Boolean
Dim strMsg As String ' Message text
' The IsDate function verifies a valid time
If IsDate(Time) Then
' Format the string and return True
Field.Text = Format$(Time, "h:mm AM/PM")
ValidateTime = True
Else
' Notify the user of the error
strMsg = "Please enter a valid time! "
strMsg = strMsg & "(Hour:Minute AM/PM)"
MsgBox strMsg, vbOKOnly, "Invalid Time"
' Return focus to the textbox
Field.SetFocus
' Return a value of False
ValidateTime = False
End If
End Function
Private Sub txtChannel_GotFocus()
' Select the existing text
txtChannel.SelStart = 0
txtChannel.SelLength = Len(txtChannel.Text)
End Sub
Private Sub txtChannel_KeyPress(KeyAscii As Integer)
' Use the IsNumeric function to make sure
' only numbers can be entered
If Not IsNumeric(Chr(KeyAscii)) Then
' Not a number, so set it to null
KeyAscii = 0
End If
End Sub
Private Sub txtEnd_GotFocus()
' Select the existing text
txtEnd.SelStart = 0
txtEnd.SelLength = Len(txtEnd.Text)
End Sub
Private Sub txtEnd_LostFocus()
Dim intOK As Integer ' Return value
' Call the function to validate the entry
intOK = ValidateTime(txtEnd.Text, txtEnd)
End Sub
Private Sub txtStart_GotFocus()
' Select the existing text
txtStart.SelStart = 0
txtStart.SelLength = Len(txtStart.Text)
End Sub
Private Sub txtStart_LostFocus()
Dim intOK As Integer 'Return value
' Call the function to validate the entry
intOK = ValidateTime(txtStart.Text, txtStart)
End Sub