Методы: примеры, синтаксис
Метод – это процедура, действующая на объект.
Метод SetFocus передает фокус вызвавшему его объекту. Метод Print позволяет напечатать текст на объекте, например:
Private Sub Form1_click()
Form1.Print 4Вы сделали двойной щелчок»
End Sub
С помощью метода Cls проводится очистка экрана:
Private Sub Form1_Click()
Me.Cls
End Sub
Метод Show позволяет показать объект, например:
Unload Me ‘ убрать текущую форму
Form2.Show ‘ Показать форму 2
Метод Move обеспечивает изменение размеров и перемещение объекта. Синтаксис метода object.Move left, top, width, hight.
If Then Else
Необходимость использования инструкции возникает, когда имеются альтернативные пути выполнения программы. В случае ее использования проводится проверка условий и в зависимости от их истинности выполняются определенные действия. Используется простой и полный синтаксис.
Наличие Elseif позволяет анализировать дополнительные условия. Добавлением нескольких инструкций Elseif можно анализировать любое число условий. Else используется для обработки противоположных ситуаций. Если нужно проверить некоторое условие при наличии другого условия, то исп вложенные инструкции.
Для демонстрации:
Dim max as integer
If Val(txt1.Text)>Val(txt2.Text) then max= Val(txt1.Text) else max=Val(txt2.Text)
LblMax.Caption=max
Или
If Val(txt1.Text)>Val(txt2.Text) then
max= Val(txt1.Text)
Else: max=Val(txt2.Text)
End if
LblMax.Caption=max
Логические операторы дают возможность создать составное условие (не-not, и-and, или-or, исключ или- xor, эквивалентность -eqv, включение- imp)
Результат действия оператора Not противоположен значению его единственного операнда; если переменная типа Boolean “kk” имеет значение True, Not kk возвращает False.
And возвращает True только, если оба True.
Or возвращает True, если хотя бы один из операндов есть True.
Eqv проверяет, будут ли 2 операнда различны, возвращает True, если они оба True или оба False.
Xor связан с or. Возвращает False, если оба операнда True.
Оператор IMP позволяет проверить, включает первое условие второе. Первое всегда включает второе, за исключением случая, когда первое есть True, а второе - False
Конкатенация
Конкатенация – это соединение строк : ma &sha даст masha . Символ амперсанд – это символ оператора конкатенации. Имеются 2 оператора конкатенации: & и +
Private Sub Command1_Click()
'TxtConc.Text = Text1.Text & Text2.Text
'TxtConc.Text = Val(Text1.Text) & Val(Text2.Text)
TxtConc.Text = Val(Text1.Text) + Val(Text2.Text)
End Sub
Инструкции, типы
Инструкция Visual Basic – это синтаксически завершенная конструкция, представляющая собой действие, описание или присваивание значения/выражения переменной/константе. Как правило, инструкция занимает отдельную строку (однако допускается использование символа разделителя строки и символа разделителя инструкций). Инструкция может содержать ключевые слова, переменные, константы, операторы и выражения. Существуют инструкции описания, присваивания и исполняемые инструкции.
Инструкции описания используются для описания процедур, переменных, массивов, констант, пример:
Private Sub Command1_Click()
Dim str As String
Const alter as Integer=17
.
End Sub
Здесь инструкция Sub с парной инструкцией End Sub описывает процедуру Сommand1_Click(), инструкция Dim описывает переменную str (тип данных – String), инструкция Const описывает константу alter, ей присваивается значение 17. Допускается описание переменных в одной строке:
Dim x As Integer, y As integer’ обе переменные описаны как Integer
Dim x, y As Integer ‘ переменная x описана как Variant, y – Integer.
Инструкции присваивания присваивают значение или выражение переменной или константе, пример:
Private Sub Kkkk()
.
Name=InputBox(“Name”)
End Sub
Здесь переменной Name присваивается возвращаемое функции InputBox значение. Может использоваться также инструкция let:
Private Sub Kkkk()
.
Let Name=InputBox(“Name”)
.
End Sub
Для присваивания переменой объекта, описанной как объект, применяется инструкция Set Исполняемые инструкции инициируют действие, они могут выполнить метод, функцию, организовать повторение, ветвление блоков программы, они часто содержат операторы.
Пример: Инструкция For Next используется для выполнения наборов действий указанное число раз.
Private sub Kkkk()
For I=1 to 10
Beep
Next I end sub
Инструкция With позволяет указывать объект или создаваемый пользователем тип данных один раз для последовательности инструкций, что позволяет избежать повторений; пример – установка свойств объекта:
With lblNorm
.FontBold= true – признак начертания -жирный
.FontItalic= True – признак начертания – курсив
. FontSize=iSize – выбор размера шрифта в пунктах
End With
Функции Val, Str.
Часто возникает необходимость преобразовать числовой тип в строковый и наоборот. Для этого используют функции Val и Str. Функция Val(строка) возвращает число, содержащееся в строке, функция Str (число) возвращает значение типа Variant(string), явл строковым представлением числа.
Private Sub Command1_click()
Dim oper1 As Single, oper2 As Single, result As Single
oper1 = Val(txtOper1.Text): oper2 = Val(txtOper2.Text)
result = oper1 + oper2
txtadd = Str(result)
End Sub
Процедуры
Существуют процедуры типа Sub, Function, Property6 Event.
Процедура Sub – это процедура, выполняющая действия и не возвращающая значение. Описание процедуры начинается с зарезервированного слова sub и завершается инструкцией End Sub. Процедура Sub может получать аргументы (константы, переменные, выражения), передаваемые ей вызывающей процедурой. Если процедура Sub не имеет аргументов, Если процедура Sub не имеет аргументов, инструкция Sub должна содержать пустые скобки, пример:
Private Sub GetInfo()
….
End Sub
Процедура Function – это процедура, которая возвращает значение. Описание процедуры начинается с зарезервированного слова Function и заканчивается End Function.
Процедура Property – это последовательность инструкций, которые позволяют пользователю создавать собственные свойства и оперировать с ним. Процедура Property Let присваивает значение свойства, Property Get возвращает значение свойству, Property Set задает ссылку на объект.
Процедура Sub начинается инструкцией Sub и заканчивается инструкцией End Sub, между ними размещается код. Различают процедуры обработки событий и процедуры общего назначения. Процедуру обработки событий можно отличить по ее имени, содержащему имя события, например Command1_Click().
Для создания процедуры общего назначения нужно использовать: область окна кода General Declaration – Меню инструменты – Добавить процедуру – в поле выведенного диалогового окна ввести имя процедуры – в поле тип сделать щелчок на Sub – сделать выбор в поле Район – ОК – выводятся инструкции Sub и End Sub.
Закрытыми процедурами называют процедуры, доступные только внутри формы, модуля, класса. Процедуры обработки событий (закрытые процедуры) являются процедурами типа Private (их можно вызвать только внутри формы). Процедуры являются общими (открытыми), если они могут быть вызваны процедурами другой формы/модуля, используется ключевое слово Public.
Вызов процедур Sub из другой процедуры можно выполнить одним из следующий способов:
1. использование имени процедуры: If a>b then Proc1
2. использовании инструкции Call: Call Proc1
3. если при обращении к процедуре требуются аргументы – данные, с которыми работает процедура, то вызов может выглядеть так:
Proc1 44,56
Или
Call Proc1 (44,56)
Условная инструкция Select Case: выбор ветви их набора условий.
Блок Select case позволяет принять решение при наличии нескольких условий.
Синтаксис разрешает использование условий <>, при этом используется ключевое слово is, пример :
Select case people
Case is<100000
Инструкция 1
Case is < 500000
Инструкция 2
End Select
В качестве значения для Case можно указывать не одно значение, а несколько через запятую.
Dim a as single
A=Val(text1.text)
Select case A
Case is<0: label1.caption =”<0”
Case is=0: label2.caption = “0”
Case Else: Label3.caption =”>0”
End select
Логические операторы дают возможность создать составное условие (не-not, и-and, или-or, исключ или- xor, эквивалентность -eqv, включение- imp)
Результат действия оператора Not противоположен значению его единственного операнда; если переменная типа Boolean “kk” имеет значение True, Not kk возвращает False.
And возвращает True только, если оба True.
Or возвращает True, если хотя бы один из операндов есть True.
Eqv проверяет, будут ли 2 операнда различны, возвращает True, если они оба True или оба False.