home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 1996 August / VPR9608A.BIN / vpr_data / vb32 / vb4wm / vb4-4.cab / alarm.frm next >
Text File  |  1996-01-12  |  3KB  |  102 lines

  1. VERSION 4.00
  2. Begin VB.Form AlarmForm 
  3.    BorderStyle     =   1  '固定(実線)
  4.    Caption         =   "アラーム時計"
  5.    ClientHeight    =   780
  6.    ClientLeft      =   1665
  7.    ClientTop       =   2460
  8.    ClientWidth     =   3135
  9.    Height          =   1185
  10.    Icon            =   "ALARM.frx":0000
  11.    Left            =   1605
  12.    LinkTopic       =   "Form2"
  13.    MaxButton       =   0   'False
  14.    ScaleHeight     =   780
  15.    ScaleWidth      =   3135
  16.    Top             =   2115
  17.    Width           =   3255
  18. BeginProperty Font
  19. name = "標準ゴシック"
  20. size = 9
  21. bold = 0
  22. EndProperty
  23.    Begin VB.Timer Timer1 
  24.       Interval        =   500
  25.       Left            =   2640
  26.       Top             =   120
  27.    End
  28.    Begin VB.Label lblTime 
  29.       AutoSize        =   -1  'True
  30.       BeginProperty Font 
  31. name = "標準ゴシック"
  32.          charset         =   128
  33.          weight          =   400
  34.          size            =   12
  35.          underline       =   0   'False
  36.          italic          =   0   'False
  37.          strikethrough   =   0   'False
  38. Bold = 0
  39.       EndProperty
  40.       Height          =   240
  41.       Left            =   120
  42.       TabIndex        =   0
  43.       Top             =   120
  44.       Width           =   75
  45.    End
  46. End
  47. Attribute VB_Name = "AlarmForm"
  48. Attribute VB_Creatable = False
  49. Attribute VB_Exposed = False
  50. Option Explicit
  51. Dim AlarmTime
  52. Const conMinimized = 1
  53.  
  54.  
  55. Private Sub Form_Click()
  56.     AlarmTime = InputBox("アラームを表示する時刻を入力してください。", "アラーム時刻設定", AlarmTime)
  57.     If AlarmTime = "" Then Exit Sub
  58.     If Not IsDate(AlarmTime) Then
  59.         MsgBox "時刻の指定が正しくありません。"
  60.     Else                                    ' InputBox の戻り値が有効な時間値であれば、
  61.         AlarmTime = CDate(AlarmTime)        ' その値が date/time 値として AlarmTime に保存されます。
  62.     End If
  63. End Sub
  64.  
  65. Private Sub Form_Load()
  66.     AlarmTime = ""
  67. End Sub
  68.  
  69. Private Sub Form_Resize()
  70.     If WindowState = conMinimized Then      ' フォームが最小化された場合に、キャプションに時刻を表示します。
  71.         SetCaptionTime
  72.     Else
  73.         Caption = "アラーム時計"
  74.     End If
  75. End Sub
  76.  
  77. Private Sub SetCaptionTime()
  78.     Caption = Format(Time, "Medium Time")   ' 時刻の表示形式を "Medium Time" にします。
  79. End Sub
  80.  
  81. Private Sub Timer1_Timer()
  82. Static AlarmSounded As Integer
  83.     If lblTime.Caption <> CStr(Time) Then
  84.         ' 表示されている秒と現在の時刻が異なります。
  85.         If Time >= AlarmTime And Not AlarmSounded Then
  86.             Beep
  87.             MsgBox "アラーム時刻 " & Time
  88.             AlarmSounded = True
  89.         ElseIf Time < AlarmTime Then
  90.             AlarmSounded = False
  91.         End If
  92.         If WindowState = conMinimized Then
  93.             ' 最小化されている場合は、分ごとにフォームのキャプションを更新します。
  94.             If Minute(CDate(Caption)) <> Minute(Time) Then SetCaptionTime
  95.         Else
  96.             ' 最小化されていない場合には、秒ごとにラベルのキャプションを更新します。
  97.             lblTime.Caption = Time
  98.         End If
  99.     End If
  100. End Sub
  101.  
  102.