- •Алгоритмизация и программирование в среде Visual Basic 6.0 Учебное пособие
- •Программирование и алгоритмизация
- •Программы и языки программирования
- •Языки программирования
- •Языки программирования низкого уровня
- •Машинный язык
- •Assembler (Ассемблер)
- •Языки программирования высокого уровня
- •Basic (Бейсик)
- •Fortran (Фортран)
- •Cobol (Кобол)
- •Pascal (Паскаль)
- •Объектно-ориентированное и визуальное программирование
- •Программирование в среде Visual Basic Введение
- •Описание
- •Основы программирования в среде Visual Basic Типы данных
- •Допустимые имена
- •Описание переменных
- •Определение типа переменной по умолчанию
- •Массивы
- •Динамические массивы
- •Чистка массивов
- •Массивы объектов
- •Константы
- •Перечисленный тип
- •Тип данных, определенный пользователем
- •Операции Visual Basic
- •Математические операции
- •Операции отношения
- •Логические операции
- •Соединение строк
- •Приоритеты операций
- •Встроенные функции Visual Basic
- •Математические функции
- •Функции проверки типов и значений
- •Функции преобразования форматов Функция Format
- •Инструкции форматирования чисел
- •Символы форматирования чисел
- •Инструкции форматирования даты и времени
- •Функции преобразования типов Преобразование строки в число и обратно
- •Преобразование выражения в стандартный тип данных
- •Функции обработки строк
- •Константы Visual Basic для управляющих ascii кодов
- •Функции времени и даты
- •Функции выбора
- •Функции, возвращающие строки
- •Инструкции Visual Basic
- •Оператор присвоения
- •Операторы управления
- •Оператор условного перехода
- •Оператор выбора
- •Оператор цикла с параметром: For - Next
- •Оператор цикла для элементов группы: For Each - Next
- •Оператор цикла с предусловием: While - Wend
- •Оператор цикла с комбинацией условий Dо - Loop
- •Функции и процедуры Описание функций и процедур
- •Вызов функций и процедур
- •Рекурсивные функции
- •Область видимости переменной
- •Время жизни переменной
- •Константы и функции для задания цвета изображения
- •Создание стандартного проекта приложения
- •Интегрированная среда разработки приложений Visual Basic
- •Компоненты рабочей среды
- •Главное меню
- •Стандартная панель инструментов
- •Окно конструктора форм
- •Окно макета формы
- •Окно проводника проекта
- •Панель элементов управления
- •Размещение элементов управления в форме
- •Команды меню Format
- •Окно свойств
- •Основные свойства элементов управления
- •Редактор исходного кода программы Окно редактора
- •Настройки редактора
- •Настройки параметров работы редактора кода (Editor)
- •Основные события и методы элементов управления
- •Сохранение и выполнение проекта
- •Семейство форм
- •Основные свойства формы
- •Свойства оформления формы
- •Свойства позиционирования формы
- •Общие свойства формы
- •Свойства поведения формы
- •Свойство шрифт формы
- •Слои формы
- •Основные методы и события формы Методы формы
- •Графические методы формы
- •События формы
- •Обработка событий мыши
- •Обработка событий клавиатуры
- •Коды клавиш
- •Единицы измерения размеров
- •Инструкции начала и завершения работы с формой
- •Соглашения об именах объектов
- •Префиксы имен объектов
- •Компоненты навигации файловой системы
- •DriveListBox (Список дисков)
- •DirListBox (Список каталогов)
- •FileListBox (Список файлов)
- •Работа со списками
- •Функции и процедуры модуля проекта
- •Окно открытия файла (Open)
- •Встроенные диалоговые окна
- •Окно ввода - функция InputBox
- •Окно сообщений - функция MsgBox
- •Константы параметра Buttons
- •Применение функций InputBox и MsgBox в проекте
- •Создание графического интерфейса приложения
- •Основное меню
- •Контекстное меню
- •Список изображений
- •Панель инструментов
- •Строка состояния
- •Обработка событий панели инструментов
- •Обработка событий меню
- •Массивы объектов
- •Создание группы переключателей
- •Порядок размещения переключателей в рамках
- •Несколько форм в проекте Шаблоны форм диалога
- •Создание и вывод на экран окна диалога
- •Создание формы диалога из шаблона Form
- •Шаблон формы Dialog
- •Шаблон формы About Dialog
- •Шаблон формы Log in Dialog
- •Общий модуль проекта
- •Новая версия - Visual Basic.Net
Обработка событий клавиатуры
Каждая клавиша на клавиатуре имеет свой код сканирования (не путать с кодом символа, хотя некоторые значения совпадают), которому Visual Basic ставит в соответствие свои константы.
Коды клавиш
Констатнта |
Код |
Клавиша |
Констатнта |
Код |
Клавиша |
VbKeyBack |
8 |
BackSpace |
vbKeyFl - vbKeyF12 |
112 - 123 |
F1 - F12 |
vbKeyTab |
9 |
Tab |
vbKeyPageUp |
33 |
PageUp |
VbKeyReturn |
13 |
Enter |
VbKeyPageDown |
34 |
PageDown |
VbKeyShift |
16 |
Shift |
VbKeyEnd |
35 |
End |
VbKeyControl |
17 |
Ctrl |
VbKeyHome |
36 |
Home |
VbKeyEscape |
27 |
Esc |
VbKeyLeft |
37 |
влево |
VbKeySpace |
32 |
Пробел |
VbKeyUp |
38 |
вверх |
vbKeyDelete |
46 |
Delete |
VbKeyRight |
39 |
вправо |
vbKeyA - VbKeyZ |
65 - 90 |
А - Z |
VbKeyDown |
40 |
вниз |
Объекты, допускающие ввод с клавиатуры имеют события KeyPress, KeyDown и KeyUp. При помощи логического свойства KeyPreview можно управлять порядком, в котором Windows обрабатывает эти события: по умолчанию сначала события клавиатуры формы, а потом элементов управления (значение свойства формы KeyPreview = True), или наоборот, KeyPreview=False.
Событие ввод символа KeyPress возникает после ввода символов. Процедура события KeyPress имеет параметр KeyAscii - код символа: буквы, цифры, знаки на стандартной клавиатуре, а также клавиш Enter, Esc, Tab, BackSpace и Space.
Событие нажатие клавиши KeyDown возникает сразу после опускания клавиши. Событие отпускания клавиши KeyUp возникает сразу после подъема клавиши.
Процедуры событий KeyDown и KeyUp имеют параметры:
Keycode – код клавиши (одно и то же значение для верхнего и нижнего регистра).
Shift – числовой параметр, соответствующий нажатой клавише:
1 - VbShiftMask - клавиша Shift,
2 - VbCtrlMask клавиша Ctrl,
4 - VbAltMask - клавиша Alt.
Пример.
Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
Print " - код клавиши: " & Str(KeyCode)
Print "------------------------------------------"
End Sub
Private Sub Form_KeyPress(KeyAscii As Integer)
Select Case KeyAscii
Case 13
Print "Enter - код символа: " & Str(KeyAscii)
Case 27
Print "Esc - код символа: " & Str(KeyAscii)
Case 32
Print "Space - код символа: " & Str(KeyAscii)
Case Else
Print Chr(KeyAscii) & " - код символа: " & Str(KeyAscii)
End Select
End Sub
Результат выполнения обработчиков событий Form_KeyUp и Form_KeyPress
|
|
|
Рис. 22. Коды символов и клавиш |
Единицы измерения размеров
Основной единицей измерения размеров является твип (twip).
В 1 дюйме 1440 твипов, а в 1 см - 567 твипов.
В Visual Basic в качестве единиц измерения используются также пункты (в одном дюйме 72 пункта) и пиксели (наименьшая единица измерения разрешения монитора или принтера). Единица измерения размеров устанавливаются в свойстве ScaleMode.
|