Операторы VB (T-W)
Описание операторов, встроенных в Visual Basic 5, начинающихся
с букв T-W
Список операторов, описанных в этом разделе:
---T---
Time = time - Изменяет системное время на time.
Пример:
Dim
MyTime
MyTime = #4:35:17 PM# ' Присваиваем время переменной
Time = MyTime ' Изменяем системное время
[Private | Public] Type varname
elementname [([subscripts])] As type
[elementname [([subscripts])] As type]
. . .
End Type
Объявляет новый тип (тип, определённый пользователем), содержащий один
или несколько элементов.
Пример:
Type
EmployeeRecord ' Создаём новый тип
ID As Integer ' Определяем
типы значений, входящие в новый тип
Name As String * 20
Address As String * 30
Phone As Long
HireDate As Date
End Type
Sub
CreateRecord()
Dim MyRecord As
EmployeeRecord ' Объявляем переменную
' Присвоение значения переменной типа EmployeeRecord
' должно произойти в процедуре
MyRecord.ID = 12003 ' Присваиваем значение элементу
переменной
End Sub
---U---
Unload object - Выгружает объект (форму или
компонент). Эта функция является обратной функции Load.
Пример:
Private
Sub
Form_Click ()
Dim Answer, Msg As
String ' Объявляем переменные
Unload Form1 ' Выгружаем форму
Msg = _
"Form1 только что была выгружена. Нажмите Да, чтобы загрузить её
и "
Msg = Msg & "показать. Нажмите Нет чтобы загрузить её и "
Msg = Msg & "оставить невидимой."
Answer = MsgBox(Msg, vbYesNo) ' Выводим окно сообщения
If Answer = vbYes Then
' Проверяем выбор юзера
Show ' если Да, то показываем форму
Else
Load Form1 ' Если Нет, то только загружаем
Msg = "Теперь форма загружена. Нажмите ОК, чтобы показать её."
MsgBox Msg ' Выводим сообщение
Show ' Показываем форму
End If
End Sub
Lock [#]filenumber[, recordrange]
. . .
Unlock [#]filenumber[, recordrange]
Эти операторы управляют доступом к файлу для других процессов, чтобы
те не могли что-либо сделать с компонентом этого файла. В приведённом
ниже примере после оператора Lock доступ к записи закрывается, и другие
процессы (программы) не смогут изменить эту запись. Запись отпирается
оператором Unlock.
Пример:
Type
Record ' Тип, определённый пользователем (находится
в модуле)
ID As Integer
Name As String * 20
End Type
Dim
MyRecord As Record, RecordNumber '
Объявляем переменные
'
Открываем файл-пример для произвольного доступа
Open "TESTFILE" For
Random Shared As #1 Len = Len(MyRecord)
RecordNumber
= 4 ' Устанавливаем позицию записи
Lock #1, RecordNumber '
Запираем эту запись
Get #1, RecordNumber, MyRecord '
Читаем запись
MyRecord.ID = 234 ' Модифицируем её
MyRecord.Name = "John Smith"
Put #1, RecordNumber, MyRecord '
Записываем изменённую запись
Unlock #1, RecordNumber '
Отпираем запись
Close
#1 ' Закрываем файл
---W---
While...Wend - Оператор цикла. Отличие от оператора
Do While...Loop заключается
в том, что здесь не используется слово Do, и вместо слова Loop используется
Wend. В общем выбирайте какой хотите.
Пример:
Dim
Counter
Counter = 0 ' Инициализируем переменные
While Counter < 20 '
Проверяем значение счётчика
Counter = Counter + 1 ' Увеличиваем счётчик
Wend ' Заканчиваем
цикл, если Counter > 19
Debug.Print
Counter ' Печатаем 20 в окно Debug
'
Этот же пример, только с циклом Do While:
Dim
Counter
Counter = 0 ' Инициализируем переменные
Do While Counter < 20 '
Проверяем значение счётчика
Counter = Counter + 1 ' Увеличиваем счётчик
Loop ' Заканчиваем
цикл, если Counter > 19
Debug.Print
Counter ' Печатаем 20 в окно Debug
Width #filenumber, width - Устанавливает длину
строки при выводе в файл, открытый оператором Open.
Пример:
Dim
I
Open "TESTFILE" For
Output As #1 ' Открываем файл для записи
Width #1, 5 ' Устанавливаем длину вывода 5
For I = 0 To
9 ' Циклимся 10 раз
Print #1, Chr(48 + I); '
Выводим по 5 символов в строке
Next I
Close #1 ' Закрываем
файл
With object
[statements]
End With
С помощью этого оператора можно произвести серию обращений к объекту
или переменной типа запись. Таким образом код становится короче и понятнее.
Пример:
With
MyObject
.Height = 100
' Аналогично выражению MyObject.Height = 100.
.Caption = "Hello World"
' Аналогично выражению MyObject.Caption = "Hello
World".
With .Font
.Color = Red ' Аналогично выражению MyObject.Font.Color
= Red.
.Bold = True ' Аналогично
выражению MyObject.Font.Bold = True.
End With
End With
Write #filenumber, [outputlist] - последовательно
записывает данные в файл.
Пример:
Open
"TESTFILE" For Output As #1 '
Открываем файл для записи
Write #1, "Hello World", 234
' Записываем строку, разделённую запятой
Write #1, ' Записываем
пустую линию
Dim
MyBool, MyDate, MyNull, MyError
' Присваиваем Boolean, Date, Null и Error значения
MyBool = False
MyDate = #February 12, 1969#
MyNull = Null
MyError = CVErr(32767)
' Boolean запишется как #TRUE# или #FALSE#. Дата
запишется
' как #1969-01-12#. Null запишется как #NULL#.
' Error капишется как #ERROR код_ошибки#.
Write #1, MyBool ; " это Boolean значение
Write #1, MyDate ; " это Дата"
Write #1, MyNull ; " это Null"
Write #1, MyError ; " а это Error"
Close #1 ' Закрываем
файл
|