Visual Basic 6. Руководство разработчика



         

Модули VB: краткий обзор


Обычно легче понять новую концепцию, если ассоциировать ее с другой, уже освоенной. Начнем с обзора модулей Visual Basic, а затем посмотрим, как те же концепции могут быть применены к модулям классов. Разработаем небольшое приложение, подсчитывающее время (оно может стать частью другого приложения, которому необходимо вычислять время выполнения своих операций). Приложение должно иметь возможность запускать и останавливать таймер по своему желанию. Когда в приложении выполняется вспомогательный программный код, необходимо иметь возможность приостановить таймер, а затем продолжить отсчет времени. После завершения операции, продолжительность которой определяется, должна быть предусмотрена возможность считывания прошедшего времени. Поместим все необходимые переменные и функции в модуль. При этом его можно будет повторно использовать в других проектах. (Вообще, такая практика является хорошим тоном в программировании — изолировать механизм определения промежутков времени от остального кода и сделать его доступным приложению через вызов нескольких процедур). Приложение, которое будет разработано в этом разделе, называется TimerMod, и его можно найти в папке этой главы на компакт-диске.

Создайте новый проект и добавьте в него модуль. Затем введите в этот модуль следующие строки.

Программа 15.1. Код модуля TimerMod

Public TotalInterval As Double

Dim T1 As Double

Sub StartCounting()

Tl = Time

End Sub

Sub  StopCounting ()

     Totallnterval = Totallnterval + Time – Tl

End  Sub

Sub ResetTimer()

Totallnterval = 0

End Sub

Процедура

StartCounting()

запускает таймер, а процедура StopCounting() — оста­навливает. Каждый раз после остановки таймера переменная Totallnterval

обновляется. Для получения затраченного времени приложение должно прочесть значение этой переменной. И, наконец, процедура ResetTlmer() переустанавливает таймер. Такой механизм отсчета времени не позволяет прочитать затраченное время во время работы таймера. Необходимо сначала вызвать метод StopCounting для обновления переменной Totallnterval,




Содержание  Назад  Вперед