Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Базові компоненти.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
112.36 Кб
Скачать

VbOkOnly, "Таймер")

Exit Sub End If

Timerl.Enabled = True ' запуск таймера приховування полів

введення інтервалу і підписів

Labeh. Visible = False

Texti.Visible = False

Label2. Visible = False

Text2.Visible = False

Label3. Visible = True

Commandi.Caption = "Стоп"

Call ShowTime End If End Sub

іціалізація форми

Private Sub Form_Initialize()

ЬаЬеїз. Visible = False ' індикатор не відображається на формі Labels jWignment = 2 ' вирівнювання по центру для індикатора

Label3.F0nt.Size = 20 'розмір шрифту для індикатора Timer і.Interval =1000 ' період сигналів таймера ~іс Timer і.Enabled = False ' таймер зупинений

End Sub

июдить, скільки часу залишилося Sub ShowTimeO плини і секунди виводимо двома цифрами

ІліЬеїз.Caption = Format$(min, "00")+

Format$(sec, "00”)

End Sub

1 Пал під таймера

Private Sub Timen_Timer() tfsee< > o Then sec = sec - 1 Else sec = 59 min = min - 1 End If

Call ShowTime ' виведення часу, що залишився If (min = o) And (sec = o) Then даний інтервал витік

Timer і.Enabled = False ’ зупинка таймера

дниюрення звуку:

CallPlaySound(CStr(CurDir) + "\ringer.wav”, о

SND_FILENAME Or SND_ASYNC)

' CallPlaySoundC'SystemStart", о_ SND_ALIASOrSND__ASYNC) - приклад відтворення системного звуку Запуск Windows (звук, відповідний цій події в Звуковій схемі’ Windows)

Commandi.Caption - "Пуск"

ЬаЬеїз.Visible = False приховування індикатора поля введення

інтервалу і підпису полів потрібно зробити видимими

Labeh.Visible = True

Texti. Visible = True

Labels.Visible = True

Texts.Visible = True

Texti.Text = "o"

Textz.Text = "o”

End If End Sub

Завдання l6. Програма "Таймер". Для введення інтервалу часу використовується компонент UpDown. Форма і вікно програми приведені на рис.1.13.

Інгарвзл

/нтереал

Секунди

%

Стоп

Пуск.

03**5»

Рис.1.13 Форма та вікно програми «Таймер»

Якщо проект створювався як Standart, то можливо, що на панелі ТооІВох компоненту UpDown не буде. Для того, щоб він з'явився, необхідно в меню Project вибрати команду Components і підключити бібліотеку Microsoft Windows Common Controls-26.0 Щоб забезпечити синхронізацію компонентів UpDown і Text, потрібно властивості Buddy Control компоненту UpDown привласнити ім’я відповідного компоненту Text (для UpDownl- Texti, для UpDowns - Text2), а в Buddy Property вибрати закладку Text. Властивості Мах і Min компоненту UpDown визначають максимальне і мінімальне можливі значення.

Dim min As Integer ' кількість хвилин Dim sec As Integer ' кількість секунд

клацання на кнопці "Пуск/стоп"

Private Sub Commandi_Click()

If Timerl.Enabled Then таймер працює, потрібно зупинити

Timer l.Enabled = False ' зупинка таймера Commandi. Caption = "Пуск"

Labelj. Visible = False ’ приховування індикатора поля введення

інтервалу і підпису полів потрібно зробити видимими Labeh. Visible = True Texti.Visible = True Labels. Visible = True Texts.Visible = True UpDowni.Visible = True UpDowns. Visible = True виведення кількості хвилин, що залишилися, і секунд Texti.Text = Format$(min)

Texts.Text = Format$(sec)

Else

таймер стоїть, потрібно запустити min = Val(Texti. Text) sec = Val(Texts.Text)

If (sec = o)And (min = o) Then

Call MsgBox(''IIoтрібно задати інтервал.", _ vbOKOnly, "Таймер")

Exit Sub End If

Timer l.Enabled ~ True ' запуск таймера приховування полів введення інтервалу і підписів Labeh .Visible ~ False Texti.Visible = False Labels.Visible = False Texts.Visible = False Label3.Visible = True UpDowni. Visible = False UpDowns. Visible = False Command l.Caption = "Стоп"

Call ShowTime End If End Sub

ініціалізація форми

Private Sub Form_Initialize()

Labels.Visible = False ' індикатор не відображається на формі Label3JUignment - s ' вирівнювання по центру ч для індикатора Label3.F0nt.Size = so 'розмір шрифту для індикатора Тітеп-Interval =1000 ' період сигналів таймера -іс Timen.Enabled = False ’ таймер зупинений

UpDoivni.Max = бо 'максимальне значення для поля "Хвилини" UpDoums.Max =59 'максимальне значення для поля "Секунди" UpDoums.Wrap = True ' якщо в полі "Секунди" знаходиться значення

59, то після натиснення кнопки Up (вгору) в полі з'явиться о, при натисненні Down (вниз) - 59-

UpDowni.Wrap = True ' теж саме для поля "Хеш/ішш"

End Sub

процедура виводить залишок часу Sub ShowTimeQ виведення хвилин і секунд здійснюється двома цифрами Label3.Caption = Format$(min, "оо") + " +

Format$(sec, "оо")

End Sub

обробка сигналу таймера

Private Sub Timerі_ Timer ()

If sec <> o Then sec = sec - і Else sec =59 min = min -1 End If

Call ShowTime ' виведення часу, що залишився

If (min = o) And (sec = o) Then

заданий інтервал витік

Timerl.Enabled = False ' зупинка таймера

Call MsgBox ("Заданий інтервал витік. ”, _ vbOKOnly, 'Таймер ") "Заданий інтервал витік." - текст повідомлення, vbOKOnly - вікно повідомлення міститиме тільки кнопку "ОК" '"Таймер" - заголовок повідомлення.

Commandi.Caption = "Пуск"

Label з. Visible = False ' утаєння індикатора поля введення

інтервалу і підпису полів потрібно зробити видимим

Labeli.Visible = True

Texti.Visible = True

Labels. Visible = True

Texts.Visible = True

Texti.Text = "o"

Texts.Text = "o"

UpDowni.Visible = True UpDowns. Visible = True End If End Sub

Private Sub Texti_KeyPress(KeyAscii As Integer)

заборона введення даних з клавіатури KeyAscii End Sub

Private Sub Text2_KeyPress(KeyAsrii As Integer)

заборона введення даних з клавіатури KeyAscii End Sub

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]