- •В. Л. Быков
- •3.1.5. Закрепление материала 67
- •3.2.7. Закрепление материала 87
- •3.3.5. Закрепление материала 95
- •3.4.4. Закрепление материала 105
- •4.1.5. Закрепление материала 114
- •4.2.5. Закрепление материала 122
- •4.3.7. Закрепление материала 131
- •4.4.5. Закрепление материала 139
- •5.1.7. Закрепление материала 149
- •5.2.7. Закрепление материала 161
- •6.1.5. Закрепление материала 173
- •6.2.4. Закрепление материала 178
- •7.1.5. Закрепление материала 184
- •7.2.5. Закрепление материала 191
- •Введение
- •Выход из программы
- •1.1.2. Рабочее окно
- •Меню (Menu)
- •Панели инструментов (Toolbars)
- •Форма (Form)
- •Окно Проект (Project)
- •Окно Cвойства (Properties)
- •Окно Программа (Code) 4
- •Окно позиционирования формы (Form Layout)
- •1.1.3. Работа с внешними устройствами Сохранение информации и открытие файлов
- •Вывод информации на печать
- •1.1.4. Упражнение: работа в среде Visual Basic
- •1.1.5. Закрепление материала
- •1.2.2. Основные свойства объектов
- •Свойства объектов
- •События объектов
- •Методы объектов
- •1.2.3. Элементы управления Label, TextBox,
- •Командная кнопка (Command Button)
- •Надпись (Label)
- •Текстовое поле (TextBox)
- •1.2.4. Приступая к программированию
- •1.2.5. Упражнения: начало работы в Visual Basic
- •Описание переменных
- •Описание свойств элементов управления формы “Успеваемость”
- •1.2.6. Закрепление материала
- •Задание для самостоятельной работы
- •2.2. Форма и ее свойства
- •Свойства формы
- •События формы
- •Mетоды формы
- •Работа с дочерними формами
- •2.4. Разработка меню пользователя Многоуровневые меню
- •Средства для разработки меню
- •Группировка элементов списка пункта меню
- •Управление размещением пунктов меню
- •Взаимодействие меню mdi-формы и дочерних форм
- •Контекстное меню
- •2.5. Упражнения: разработка меню пользователя
- •Описание элементов меню
- •Описание элементов меню
- •2.6. Закрепление материала
- •Окно Программы (Code)
- •3.1.2. Переменные
- •Способы объявления переменных
- •Контроль типов переменных
- •Типы переменных
- •Область определения (видимости) переменных
- •Время жизни переменных
- •Статические переменные
- •3.1.3. Константы
- •3.1.4. Упражнение: типы переменных
- •Описание типов переменных
- •3.1.5. Закрепление материала
- •Задачи для самостоятельной работы
- •Ввод данных с помощью окна диалога InputBox
- •3.2.2. Вывод данных
- •Оператор Print
- •Стандартные шаблоны функции Format
- •Текстовое поле TextBox
- •Окно диалога MessageBox
- •Константы параметра Buttons
- •3.2.3. Процедуры
- •Процедуры обработки событий (обработчики событий)
- •Процедуры пользователя
- •Вызов процедуры
- •3.2.4. Функции Встроенные функции
- •Встроенные функции языка Visual Basic
- •Функции пользователя
- •Использование пользовательских функций
- •Оператор Select Case
- •Операторы циклов
- •3.2.6. Упражнения: использование окон диалога и функций пользователя
- •Текст программы формы
- •3.2.7. Закрепление материала
- •3.3. Массивы
- •3.3.1. Понятие об индексированных переменных. Массивы.
- •Область видимости массивов, объявление массивов
- •Способы распределения памяти
- •3.3.2. Функции для работы с массивами
- •3.3.3. Операции с массивами
- •Функция обмена двух переменных данными
- •Сортировка массивов
- •3.3.4. Упражнения: работа с массивами
- •3.3.5. Закрепление материала
- •Задания для самостоятельных занятий
- •Создание массивов элементов управления на этапе разработки
- •Динамическое добавление элементов управления в период выполнения
- •3.4.2. Управляющий элемент сетка
- •Основные свойства сетки
- •Свойства для выделения ячеек внутри таблицы
- •События и методы сетки
- •3.4.3. Упражнения: использование массивов управляющих элементов и сетки
- •Описание свойств элементов формы
- •3.4.4. Закрепление материала
- •Задания для самостоятельной работы
- •Метод Scale
- •Объект Screen
- •4.1.2. Элементы управления Line и Shape Элемент управления Line
- •Элемент управления Shape
- •4.1.3. Управление пикселем
- •4.1.4. Упражнения: графические объекты
- •4.1.5. Закрепление материала
- •Варианты заданий для самостоятельной работы.
- •4.2. Графические методы Visual Basic
- •Свойства графических объектов, влияющие на работу графических методов
- •4.2.1. Графический метод Line
- •4.2.2. Метод Circle
- •4.2.3. Метод Print
- •4.2..4. Упражнения: Графические методы
- •4.2.5. Закрепление материала
- •Задания для самостоятельной работы
- •4.3. Объекты PictureBox, Image
- •4.3.1. Понятие векторной и растровой графики
- •Типы файлов, загружаемых в объект PictureBox
- •4.3.2. Окно с рисунком (PictureBox )
- •Выгрузка рисунков
- •4.3.3. Элемент управления Image
- •4.3.4. Загрузка изображений в форму
- •4.3.5. Управление графическими объектами
- •Свойство AutoRedraw
- •Метод Refresh
- •Свойство ClipControls
- •Влияние свойства ClipControls и метода AutoRedraw на работу программы
- •Метод PaintPicture
- •Метод Point
- •Функция DoEvents
- •4.3.6. Упражнения: графические объекты
- •4.3.7. Закрепление материала
- •4.4. Анимация
- •4.4.1. Элемент управления Animation
- •4.4.2. Создание анимации пользователем
- •Режим DrawMode
- •Примеры анимации Простая анимация
- •Анимация посредством переноса изображений через буфер обмена
- •Опции функции Формат
- •Анимация посредством присвоения значения свойства одного графического объекта другому
- •4.4.3. Создание форм, независимых от используемого разрешения экрана
- •4.4.4. Упражнения: анимация
- •4.4.5. Закрепление материала
- •5.1.1. Флажки и переключатели
- •Создание элементов управления
- •5.1.2. Списки и поля со списками
- •Основные свойства и методы списков Свойства списков:
- •Множественный выбор элементов списка
- •Методы списков
- •Поле со списком (ComboBox)
- •Установка начального значения
- •5.1.3. Полоса прокрутки (ScrollBar)
- •5.1.4. Элемент управления Slider.
- •5.1.5. Счетчик (UpDown)
- •5.1.6. Упражнения: Основные элементы интерфейса
- •5.1.7. Закрепление материала
- •Задание для самостоятельной работы
- •5.2. Дополнительные элементы управления
- •5.2.1. Строка состояния Создание строки состояния
- •Основные свойства панелей строки состояния
- •Управление панелью состояния
- •5.2.2. Индикатор процесса
- •5.2.4. Стандартные окна диалога Windows
- •5.2.5. Печать документов.
- •Метод PrintForm
- •Объект Printer
- •Основные свойства и методы объекта Printer
- •5.2.6. Упражнения: дополнительные элементы управления для разработки интерфейса
- •5.2.7. Закрепление материала
- •6. Работа с файлами данных
- •6.1. Файлы последовательного доступа
- •6.1.1. Понятие о файлах данных
- •Открытие файлов
- •Закрытие файлов
- •Чтение данных из файла последовательного доступа
- •6.1.3. Создание базы данных с использованием файла последовательного доступа
- •6.1.4.Упражнение: создание базы данных
- •6.1.5. Закрепление материала
- •Задание для самостоятельной работы
- •6.2. Файлы прямого доступа
- •6.2.1. Создание файлов прямого доступа
- •6.2.2. Команды и функции для работы с файлами Команды для работы с файлами
- •Функции для работы с файлами
- •6.2.3. Упражнение: создание базы данных с использованием файла прямого доступа
- •6.2.4. Закрепление материала
- •7.1.2. Реализация проверки данных на уровне формы Обработчик клавиатуры на уровне формы
- •Использование события KeyPress
- •Использование события KeyDown и KeyUp
- •Использование события KeyPreview
- •7.1.3. Реализация проверки данных на уровне полей формы
- •Использование событий клавиатуры для контроля на уровне полей
- •Проверка данных с использованием события Change
- •Функции проверки данных
- •7.1.4. Упражнение: Контроль ввода
- •7.1.5. Закрепление материала
- •7.2. Обработка ошибок
- •7.2.1. Общие сведения об обработке ошибок
- •7.2.2. Реализация локального обработчика ошибок Порядок обработки ошибок
- •Реализация обработчика ошибок
- •7.2.3. Централизованная обработка ошибок
- •Обработка ошибок при вложенных вызовах процедур
- •Обработка ошибок объекта CommonDialog
- •7.2.4. Упражнение: Контроль ввода
- •7.2.5. Закрепление материала
- •Приложение 1 Основные приемы работы в среде Visual Basic Основные приемы работы с мышью
- •Управление окнами
- •Размещение элементов управления в форме Установка элемента на форму
- •Установка размеров элемента управления и его положения на форме
- •Копирование объекта
- •Управление группой объектов
- •Приложение 2 Основные функции и типы данных Арифметические операторы
- •Логические операторы
- •Арифметические функции
- •Логические функции
- •Функции и операторы работы с массивами
- •Функции работы с датами и временем
- •Функции обработки строк
- •Операторы и функции работы с файлами
- •Функции проверки значений выражений
- •Средства обработки ошибок
- •Типы данных
- •Приложение 3 Классы и операторы Visual Basic12
- •П4.1.2. Исходные данные
- •П4.1.3. Разработка математической модели
- •П4.1.4. Схема алгоритма программы
- •П4.1.5. Разработка проекта программы
- •Описание переменных
- •Глобальные переменные
- •Описание элементов управления
- •Свойства элементов управления формы Статика
- •П4.2. Текст программы Текст программы mdi-формы
- •Текст программы Модуля
- •Текст программы формы Статика
- •Текст программы формы Динамика
- •Текст программы формы определения зон действия механизма
- •Текст программы формы демонстрации траектории заданной точки
- •Паспорт программ
- •П4.3. Список использованной литературы
- •Литература
Использование событий клавиатуры для контроля на уровне полей
Событие KeyPress распознает регистр нажатой клавиши, поэтому при контроле вводимых символов их целесообразно приводить к одному регистру и лишь потом анализировать.
Sub txtText1_KeyPress(KeyAscii As Integer)
KeyAscii=Asc(VCase(Chr(KeyAscii)))
End Sub
Функция Chr преобразует код нажатой клавиши в символ, функция VCase переводит данный символ в верхний регистр, а функция Asc снова преобразует символ в числовой код.
Например, нажата клавиша с символом “а” - код 97. Код 97 преобразуется в символ “а” функцией Chr, функция VCase преобразует символ ”а” в символ “А”, функция Asc возвращает код 65.
События KeyUp и KeyDown распознают статус клавиатуры: первое событие генерируется в момент нажатия клавиши, а второе в момент отпускания. Кроме того имеется возможность отслеживать нажатие функциональных клавиш Shift, Ctrl, Alt одновременно с нажатием символьной клавиши, например Ctrl + C. Факт нажатия и отпускания клавиши возвращается через параметр KeyCode, а нажатие функциональной клавиши – через параметр Shift.
Пример 7.2. Контроль нажатой клавиши
Private Sub txtText1_KeyDown(KeyCode As Integer, Shift As Integer)
Select Case Shift
Case 1
Print “Нажата клавиша Shift”
Case 2
Print “Нажата клавиша Ctrl”
Case 3
Print “Нажаты клавиши Shift и Ctrl”
Case 4
Print “Нажата клавиша Alt”
Case 5
Print “Нажаты клавиши Shift и Alt”
Case 6
Print “Нажаты клавиши Ctrl и Alt”
Case 7
Print “Нажата клавиша Ctrl, Shift и Alt”
End Select
End Sub.
Следующий код контролирует нажатие клавиш “А” и Shift:
Private Sub txtText1_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode=65 And Shift=1 Then
Print “Нажаты клавиши А и Shift”
End If
End Sub.
Проверка данных с использованием события Change
При небольшом числе полей ввода для контроля ввода данных можно использовать событие Change элемента управления TextBox.
Например, если форма имеет два поля ввода txtText1 и txtText2, то код контроля будет иметь следующий вид:
Private Sub cmd OKEnabled ( )
If txtText1.Text < > “ “ And txtText2.Text < > “ “ Then
cmdOK.Enabled=True
Else
cmdOK.Enabled=False
End If
End Sub.
Private Sub txtText1_Change ( )
Call cmdOKEnabled
End Sub
Private Sub txtText2_Change ( )
Call cmdOKEnabled
End Sub
В данном примере процедура контроля cmdOKEnabled вызывается в обработчике события Change каждого поля ввода. Если хотя бы одно из полей ввода пустое, кнопка ОК остается недоступной.
Функции проверки данных
Visual Basic 6 имеет несколько функций, позволяющих проверять типы данных: IsNumeric, IsDate и другие.
Функция IsNumeric возвращает True, если аргумент является числовым и False в ином случае. Функция IsDate возвращает True, если в аргументе содержится допустимая дата. Эти функции можно применять совместно с функцией InputBox:
StrValue=InputBox(“Введите число”)
If IsNumeric (strValue) Then
Print “Введено число”
Else “Не корректный ввод данных”
End If
Пример 7.3. Проверка ввода числовых данных на уровне полей формы.
Public Sub txtTextNumeral(KeyAscii As Integer)
Select Case KeyAscii
Case Asc("0") To Asc("9"), Asc("."), 8
‘ если нажаты клавиши от 0 до 9, точка или клавиша BackSpace
Numeral = Numeral + Chr(KeyAscii)
Case Else
‘ если иначе, то код KeyAscii сбрасывается и никаких
‘ изменений не происходит
KeyAscii = 0
Beep
End Select
End Sub
Событие Validate.
Перед тем, как элемент управления потеряет фокус ввода, в нем возникает событие Validate – но только если свойство CausesValidation элемента управления, который вскоре получит фокус ввода, установлено как True. Событие Validation в сочетании со свойством CausesValidation позволяет проверять данные, когда пользователь пытается переключиться на другой элемент управления. Это событие предоставляет аргумент Cancel: установив его, как True, можно запретить переключение на другой элемент.