- •1 Знакомство с Visual Basic
- •1.1 Первое знакомство
- •1.1.1 Запуск VB
- •1.1.2 Выход из VB
- •1.1.3 Практическое задание
- •1.2 Файлы проекта
- •1.3 Шаги создания проекта на VB
- •1.3.1 Планирование действий, выполняемых приложением
- •1.3.2 Планирование пользовательского интерфейса
- •1.3.3 Установка свойств
- •1.3.4 Написание текста программы
- •1.3.5 Отладка приложения
- •1.4 Первый проект
- •1.4.1 Основные сведения об исполнении приложений в операционной системе Windows
- •1.4.2 Разработка проекта
- •1.4.3 Условие задачи
- •1.4.4 Элементы управления
- •1.4.4.1 Вставка надписей
- •1.2.1 Разработка программы
- •1.3 Усовершенствование проекта
- •1.4 Компиляция проекта
- •1.5 Отображение окон в среде VB
- •1.6 Вопросы для контроля
- •2 Переменные и константы
- •2.1 Основные типы данных VB
- •2.2 Структура проекта
- •2.3 Объявление переменных и констант
- •2.4 Преобразование и совместимость типов
- •2.5 Разработка проекта
- •2.6 Вопросы для контроля
- •3 Ввод и вывод значений переменных
- •3.1 Ввод данных с помощью функции InputBox
- •3.2 Вывод данных с помощью инструкции Print
- •3.3 Вывод данных с помощью функции MsgBox
- •3.4 Вопросы для контроля
- •4 Выражения в VB
- •4.1 Арифметические операции
- •4.1.1 Сложение
- •4.1.2 Вычитание
- •4.1.3 Умножение
- •4.1.4 Деление
- •4.1.5 Возведение в степень
- •4.1.6 Целочисленное деление
- •4.1.7 Остаток от деления
- •4.1.8 Унарный минус
- •4.2 Логические операции
- •4.2.1 Логическое И
- •4.2.2 Логическое ИЛИ
- •4.2.3 Логическое НЕ
- •4.2.4 Операции отношения
- •4.3 Символьные операции
- •4.4 Синтаксис выражений
- •4.5 Явное преобразование типов данных
- •4.6 Задание для самостоятельной работы
- •4.7 Вопросы для контроля
- •5 Конструкции VB, реализующие базовые алгоритмические структуры
- •5.1 Базовые структуры алгоритмов
- •5.1.1 Следование (композиция)
- •5.1.2 Ветвление
- •5.1.3 Цикл
- •5.2 Конструкция If..Then
- •5.3 Конструкция Select … Case
- •5.4 Конструкция Do…Loop
- •5.5 Цикл со счетчиком. Конструкция For…Next
- •5.6 Задание для самостоятельной работы
- •6 Массивы в VB
- •7 Алгоритмы сортировки
- •7.1 Алгоритм сортировки выборкой
- •7.2 Алгоритм сортировки вставкой
- •7.3 Алгоритм пузырьковой сортировки
- •7.4 Алгоритм быстрой сортировки
- •7.5 Алгоритм сортировки слиянием
- •7.6 Алгоритм сортировки подсчетом
- •8 Обработка строк в VB
- •9 Чтение и сохранение данных в файлы, выполнение операций с файлами в VB
- •10 Приложение: Коды ошибок VB
- •11 Описание событий VB
- •12 Приложение: Таблица кодов ASCII
- •13 Приложение: Виртуальные коды клавиш
- •14 Приложение: Функции VB (алфавитный перечень)
- •14.1.2 Array
- •14.3.1 Функции конвертирования типов
- •14.3.1.1 CBool
- •14.3.1.2 CByte
- •14.3.1.3 CCur
- •14.3.1.4 CDate
- •14.3.1.5 CDbl
- •14.3.1.6 CInt
- •14.3.1.7 CLng
- •14.3.1.8 CSng
- •14.3.1.9 CStr
- •14.3.1.10 CVar
- •14.3.4 Command
- •14.3.5 CreateObject
- •14.3.6 CurDir
- •14.3.7 CVErr
- •14.4.1 Date
- •14.4.2 DateAdd
- •14.4.3 DateDiff
- •14.4.4 DatePart
- •14.4.5 DateSerial
- •14.4.6 DateValue
- •14.4.9 DoEvents
- •14.5.1 Environ
- •14.5.3 Error
- •14.6.1 FileAttr
- •14.6.2 FileDateTime
- •14.6.3 FileLen
- •14.6.5 Format
- •14.6.6 FreeFile
- •14.7.1 GetAllSettings
- •14.7.2 GetAttr
- •14.7.3 object.GetAutoServerSettings
- •14.7.4 GetObject
- •14.7.5 GetSetting
- •14.8.2 Hour
- •14.9.2 Input
- •14.9.3 InputBox
- •14.9.4 InStr
- •14.9.6 IsMissing
- •14.9.7 IsNull
- •14.9.8 IsNumeric
- •14.9.9 IsObject
- •14.11.1 LBound
- •14.11.2 LCase
- •14.11.3 Left
- •14.11.5 LoadPicture
- •14.11.9 LTrim
- •14.12.2 Minute
- •14.12.3 Month
- •14.12.4 MsgBox
- •14.14.2 QBColor
- •14.15.1 SaveSetting
- •14.15.2 Seek
- •14.15.4 Shell
- •14.15.9 StrComp
- •14.15.10 StrConv
- •14.15.11 String
- •14.15.12 Switch
- •14.16.3 Time
- •14.16.4 Timer
- •14.16.5 TimeSerial
- •14.16.6 TimeValue
- •14.16.7 Trim
- •14.16.8 TypeName
- •14.17.1 UBound
- •14.17.2 UCase
- •14.18.2 VarType
- •14.19.1 Weekday
- •14.20.1 Year
- •15 Приложение: Функции VB (по назначению)
- •15.1 Арифметические
- •15.2 Строковые (символьные)
- •15.3 Логические
- •15.4 Дата и время
- •15.5 Преобразование и конвертирование значений
- •15.5.2 Функции конвертирования типов
- •15.5.2.1 CBool
- •15.5.2.2 CByte
- •15.5.2.3 CCur
- •15.5.2.4 CDate
- •15.5.2.5 CDbl
- •15.5.2.6 CInt
- •15.5.2.7 CLng
- •15.5.2.8 CSng
- •15.5.2.9 CStr
- •15.5.2.10 CVar
- •15.6 Массивы
- •15.7 Работа с файлами и ОС
- •15.7.17 SaveSetting
- •16 Приложение: Дополнительные материалы по вычислению некоторых выражений
- •17 Приложение: Операторы VB
- •17.1.1 AppActivate
- •17.2.1 Beep
- •17.3.1 Call
- •17.3.2 ChDir
- •17.3.3 ChDrive
- •17.3.4 Close
- •17.3.5 Const
- •17.4.1 Date
- •17.5 Def<Type>
- •17.5.1 DeleteSetting
- •17.5.3 Do... Loop
- •17.6.1 End [<Конструкция>]
- •17.6.2 Enum
- •17.6.3 Erase
- •17.6.4 Error
- •17.6.5 Event
- •17.6.6 Exit <Кострукция>
- •17.7.1 FileCopy
- •17.7.2 For Each...Next
- •17.7.3 For...Next
- •17.7.4 Function
- •17.8.2 GoSub
- •17.8.3 GoTo
- •17.9.2 Implements
- •17.9.3 Input
- •17.10.1 Kill
- •17.11.2 Like
- •17.11.3 Line Input
- •17.11.4 Load
- •17.11.5 Lock
- •17.11.6 LSet
- •17.12.2 MkDir
- •17.13.1 Name
- •17.14.1 On Error
- •17.14.2 Open
- •17.14.3 Option Base
- •17.14.4 Option Compare
- •17.14.5 Option Explicit
- •17.14.6 Option Private
- •17.15.1 Print
- •17.15.2 Private
- •17.15.3 Property Get
- •17.15.5 Property Set
- •17.15.6 Public
- •17.16.1 RaiseEvent
- •17.16.2 Randomize
- •17.16.3 ReDim
- •17.16.5 Reset
- •17.16.6 Resume
- •17.16.7 RmDir
- •17.16.8 RSet
- •17.17.1 SavePicture
- •17.17.2 SaveSetting
- •17.17.3 Seek
- •17.17.4 Select Case
- •17.17.5 SendKeys
- •17.17.7 SetAttr
- •17.17.8 Static
- •17.17.9 Stop
- •17.18.1 Time
- •17.18.2 Type
- •17.19.1 Unload
- •17.20.2 Width
- •17.20.3 With
- •17.20.4 Write
ЗлюУнплъ.ЗлюОдпдлдммни.
Опзлдп:
Public Number As Integer ' Глобальная переменная типа Integer
Public NameArray(1 To 5) As String ' Глобальный массив
' Несколько объявлений, 2 типа Variant и 1 Integer. Все глобальные.
Public MyVar, YourVar, ThisVar As Integer
17.15.7Put
Put [#]filenumber, [recnumber], varname - ЖЯозръбЯдс гЯммъд б уЯик р мнлдпнл filenumber зж одпдлдммни varname. recnumber - жЯгЯяс онжзхзэ мЯцЯкЯ жЯозрз.
Опзлдп:
Type Record ' Определѐнный пользователем тип
ID As Integer
Name As String * 20
End Type
Dim MyRecord As Record, RecordNumber ' Объявляем переменные
' Открываем файл для произвольного доступа
Open "TESTFILE" For Random As #1 Len = Len(MyRecord)
For RecordNumber = 1 To 5 ' Циклимся 5 раз
MyRecord.ID = RecordNumber ' Устанавливаем компоненту ID
MyRecord.Name = "My Name" & RecordNumber ' Создаѐм строку
Put #1, RecordNumber, MyRecord ' Записываем запись в файл
Next RecordNumber
Close #1 ' Закрываем файл
17.16R
17.16.1RaiseEvent
RaiseEvent eventname [(argumentlist)] - ЖЯотрйЯдс рнаъсзд, нопдгдкяммнд б
йнлонмдмсд, унплд зкз гнйтлдмсд.
Опзлдп:
'В этом примере при нажатии на UserControl будет
'генерироваться нажатие клавиши с кодом 101
Event Click()
Event KeyPress(KeyAscii As Integer)
Private Sub UserControl_Click()
RaiseEvent KeyPress(101) ' Вместо щелчка будет происходить KeyPress End Sub
Private Sub UserControl_KeyPress(KeyAscii As Integer)
RaiseEvent KeyPress(KeyAscii) ' Обычный KeyPress
End Sub
' Теперь поместите этот код в форму, на которой расположен UserControl
Private Sub UserControl1_KeyPress(KeyAscii As Integer)
MsgBox "Hello World " & KeyAscii
End Sub
' Запустите проект и щѐлкните по UserControl'у.
17.16.2Randomize
Randomize [number] - ЗмзхзЯкзжзптдс вдмдпЯснп рктцЯимъф цзрдк. Дркз ьснс нодпЯснп мд онлдрсзсы одпдг утмйхзди Rnd, сн опз йЯегнл жЯотрйд опзкнедмзю атгтс вдмдпзпнбЯсырю нгмз з сд ед рктцЯимъд цзркЯ.
Опзлдп:
Dim MyValue
Randomize ' Инициализирует генератор случайных чисел
MyValue = Int((6 * Rnd) + 1) ' Генерируем случайное число от 1 до 6
17.16.3ReDim
ReDim [Preserve] varname(subscripts) [As type] [, varname(subscripts) [As type]]
. . .
Зжлдмюдс пЯжлдп гзмЯлзцдрйнвн лЯррзбЯ. ЖЯлдцЯмзд: Гкю ьснвн нодпЯснпЯ
Option Base трсЯмнбкдм б дгзмзхт!
Опзлдп:
Dim MyArray() As Integer ' Объявляем динамический массив
Redim MyArray(5) ' Выделяем место для ПЯТИ элементов
For I = 1 To 5 ' Циклимся 5 раз
MyArray(I) = I ' Присваиваем значения компонентам массива
Next I
' Следующий оператор изменяет размер массива и очищает его
Redim MyArray(10) ' Теперь размер массива = 10
For I = 1 To 10 ' Циклимся 10 раз
MyArray(I) = I ' Присваиваем значения компонентам массива
Next I
' А этот оператор изменяет размер, но не очищает его
Redim Preserve MyArray(15) ' Теперь размер = 15
17.16.4Rem
Rem comment - рсЯпъи нодпЯснп гкю рнжгЯмзю йнллдмсЯпздб б сдйрсд
опнвпЯллъ. Ктцчд зронкыжнбЯсы мнбъи ЯмЯкнв - ' (Яонрспну).
Опзлдп:
Dim MyStr1, MyStr2
MyStr1 = "Hello": Rem Здесь ваш комментарий
MyStr2 = "Goodbye" ' Это тоже комментарий, только без двоеточия
17.16.5Reset
Reset - жЯйпъбЯдс брд уЯикъ, нсйпъсъд нодпЯснпнл Open.
Опзлдп:
Dim FileNumber
For FileNumber = 1 To 5 ' Цикл выполнится 5 раз
'Откроем файл для записи с номером FileNumber и к имени прибавим номер
Open "TEST" & FileNumber For Output As #FileNumber
Write #FileNumber, "Hello World" ' Записываем данные в файл
Next FileNumber
' Закрываем все открытые файлы и записываем их содержимое на диск
Reset
17.16.6Resume
Resume [0]
Resume Next
Resume line
Бнжнамнбкюдс бъонкмдмзд опнвпЯллъ онркд напЯансйз нчзайз.
Опзлдп:
Sub ResumeStatementDemo()
On Error GoTo ErrorHandler ' Включаем обработчик ошибок
Open "TESTFILE" For Output As #1 ' Открываем файл
Kill "TESTFILE" ' Пытаемся удалить открытый файл
Exit Sub ' Выходим из процедуры, чтобы обойти обработчик ошибки
ErrorHandler: ' Начало обработчика
Select Case Err.Number ' Проверяем номер ошибки
Case 55 ' Ошибка "Файл уже открыт"
Close #1 ' Закрываем открытый файл
Case Else
' Здесь обрабатываем другие ситуации...
End Select
Resume ' Продолжаем выполнение программы с той же строки, ' в которой произошла ошибка
End Sub
17.16.7RmDir
RmDir path - тгЯкюдс гзпдйснпзэ р гзрйЯ.
Опзлдп:
RmDir "C:\Temp" ' Удаляет директорию Temp с корневого диска
17.16.8RSet
RSet stringvar = string - БъпЯбмзбЯдс рспнйт он опЯбни рснпнмд опз опзрбЯзбЯмзз ди жмЯцдмзю, лдмычдвн он пЯжлдпт, цдл зрфнгмЯю рспнйЯ.
Блдрсн рспнй лнвтс зронкыжнбЯсырю нопдгдкяммъд онкыжнбЯсдкдл сзоъ.
Опзлдп:
Dim MyString
MyString = "0123456789" ' Инициализируем строку
Rset MyString = "Right->" ' MyString содержит " |
Right->" |
|
|
|
|