
Косарев_Экомическая информатика
.pdfПрограммирование |
|
|
|
|
431 |
Событие |
|
|
Описание |
|
|
Click, DblClick |
События происходят, когда нажимается, а |
||||
|
затем отпускается кнопка мыши (щелчок и |
||||
MouseDown |
двойной щелчок) |
нажимается |
кнопка |
||
Происходит, |
когда |
||||
MouseUp |
мыши |
|
при |
отпускании |
клавиши |
Генерируется |
|||||
|
мыши. |
Возникает |
после |
события |
|
MouseMove |
MouseDown |
|
|
|
|
Генерируется при перемещении мыши |
Обработка событий Click и DblClick
Когда создается форма, то для каждого ее элемента Visual Basic создает процедуру обработки события Click, а точнее ее заголо вок и окончание:
Private Sub Имя Элемента Управления_СНск()
End Sub
где Имя Элемента Управления - |
имя элемента управления, вызвавшего |
|
Click |
- |
событие; |
имя события. |
Для обработки события достаточно в процедуру вставить про граммный код. Например, для командной кнопки, управляющей завершением работы программы, процедура обработки события Click выглядит следующим образом:
Private Sub CommandButtonl_Click()
End' Код процедуры обработки события
End Sub
Рассмотрим пример программы обработки события Click и DblClick, которая выдает сообщение о щелчке мыши и о двойном щелчке. Для создания программы выполните следующие действия:
1.Создайте проект с пустой экранной формой.
2.Свойству Name формы установите значение frmMouse, a свойству Caption - пустое значение.
3.В процедуры обработки событий UserForm_Click() и UserForm_DblClick() введите код:
432 |
Глава 8 |
Private Sub UserForm_Click()
'Сообщение о щелчке мыши
UserForml.Caption = «Была нажата кнопка мыши»
End Sub
Private Sub UserForm_DblClick(ByVal Cancel As MSForms.Return_
Boolean)
'Сообщение о двойном щелчке мыши
UserForml.Caption = «Событие DblClick»
End Sub
4. Запустите программу на выполнение. После щелчка или двойного щелчка мыши в любом месте формы в ее заголовке бу дет появляться текстовое сообщение о соответствующем событии (рис. 8.17).
Рис. 8.17. Сообщение о событии
Обработка событий MouseDown и MouseUp
Синтаксическая конструкция процедур обработки событий MouseDown и MouseUp:
Private Sub Имя Элемента ynpaeneraw_MouseDown (Button As Integer, _ Shift As Integer, X As Single, Y As Single)
Private Sub Имя Элемента Управления _MouseUp (Button As Integer, _ Shift As Integer, X As Single, Y As Single)
где Имя Элемента Управления - |
имя элемента управления, вызвавшего |
|
MouseDown / MouseUp |
- |
событие; |
обрабатываемое событие; |
||
Button |
- |
целое число, сообщающее о том, какие |
Shift |
- |
кнопки мыши нажаты; |
целое число, сообщающее о том, какие -н |
||
X |
- |
клавиш [Shift], [Control] или [Alt] нажать ; |
координата указателя мыши по горизон |
||
Y |
- |
тали; |
координата указателя мыши по вертика.' |
Программирование |
433 |
Далее приведен пример обработки событий MouseDown и MouseUp. Когда пользователь нажимает кнопку мыши, вызыва ется событие MouseDown, а процедура обработки этого события сообщает, какая клавиша мыши нажата, а также какая нажата комбинация управляющих клавиш [Shift], [Ctrl] и [Alt]. Эта про цедура также сообщает координаты мыши.
' Пример кода процедуры обработки событий MouseDown и MouseUp Sub CommandButtonl_MouseDown(ByVal Button As Integer, _ ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Dim strButton As String 'для преобразованного значения параметра Button
Dim strShift As String 'для преобразованного значения параметра Shift Dim strX As String 'для преобразованного значения параметра X Dim strY As String 'для преобразованного значения параметра Y 'Преобразование целых значений параметров X и Y в строки
strX = CStr(X) strY = CStr(Y)
'Проверка значения SHIFT с помощью оператора Select Case 'для выяснения того, какие из клавиш [Shift], [Ctrl] и [Alt] нажаты. 'Присвоение результата проверки строковой переменной strShift
Select Case Shift
CaseO
strShift =: «»
Case 1
strShift == «Shift»
Case 2
strShift == «Ctrl»
Case 3
strShift =• «Shift + Ctrl»
Case 4
strShift =• «Alt»
Case 5
strShift =: «Shift + Alt»
Case 6
strShift =• «Ctrl + Alt»
Case 7
strShift = «Shift + Ctrl + Alt»
End Select
434 |
Глава 8 |
'Проверка значения BUTTON с помощью оператора Select Case 'для определения комбинации нажатых клавиш мыши. 'Присвоение результата проверки строковой переменной
strButton.
Select Case Button Case О
strButton = «» Case 1
strButton = «Left» Case 2
strButton = «Right» Case 3
strButton = «Left + Right» Case 4
strButton = «Middle» Case 5
strButton = «Left + Middle» Case 6
strButton = «Right + Middle» Case 7
strButton = «All» End Select
'Сообщить о вызове соответствующего события Label 1.Caption = «Событие MouseDown»
'Сообщить о том, какая комбинация клавиш нажата Label2.Caption = strShift
'Сообщить о том, какие кнопки мыши нажаты CommandButtonl.Caption = strButton
End Sub
Private Sub frMouse_MouseUp(Button As Integer, Shift As Integer, _ X As Single, Y As Single)
' Сообщить о вызове соответствующего события Label 1.Caption = «Событие MouseUp»
End Sub
Обработка события MouseMove
Синтаксическая конструкция процедуры обработки этого со бытия:
Private Sub Имя Элемента Управления _MouseMove(Button As_ Integer, Shift As Integer, X As Single, Y As Single)
Программирование |
|
435 |
Здесь Имя Элемента Управления |
- |
имя элемента управления, вызвавше |
|
|
го событие; |
MouseMove |
- |
обрабатываемое событие; |
Button |
- |
целое число, сообщающее о том, |
|
|
какие кнопки мыши нажаты; |
Shift |
- |
целое число, сообщающее о том, |
|
|
какие из клавиш [Shift], [Control] или |
|
|
[Alt] нажаты; |
X |
- |
координата указателя мыши |
|
|
по горизонтали; |
Y |
- |
координата указателя мыши |
|
|
по вертикали. |
Ниже приведен пример |
процедуры обработки события |
|
MouseMove. |
|
|
Private Sub UserForm_MouseMove(ByVal Button As Integer, _
ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Dim strX As String 'для преобразования значения параметра X Dim strY As String 'для преобразования значения параметра Y
'Преобразование целых значений параметров X и Y в строковые strX = CStr(X)
strY = CStr(Y)
'Вывести на экран информацию о положении указателя мыши Label2.Caption = «X:» & strX & «,» & «Y:» & strY
End Sub
Эта процедура обрабатывает событие и выдает информацию о положении указателя мыши.
|
8.5.3. ОБРАБОТКА |
|
СОБЫТИЙ КЛАВИАТУРЫ |
Visual Basic поддерживает три события клавиатуры: |
|
Событие |
Описание |
KeyPress |
Генерируется, когда нажимается, а затем |
|
отпускается одна из символьных клавиш |
KeyDown |
Генерируется при нажатии клавиши |
KeyUp |
Генерируется при отпускании клавиши |
438 |
Глава 8 |
Обработка событий KeyUp и KeyDown
Когда нажимается клавиша на клавиатуре, то для элемента управления, находящегося в фокусе, генерируется событие KeyDown, когда клавиша отпускается - событие KeyUp. Эти со бытия связаны с клавишами клавиатуры, а не с введенным сим волом, как в событии KeyPress.
Синтаксическая конструкция для процедур обработки собы тий KeyUp и KeyDown:
Private Sub Имя Элемента Управления _KeyUp(KeyCode as Integer, _ Shift as Integer)
Private Sub Имя Элемента Управления _KeyDown(KeyCode as Integer, _
|
|
Shift as Integer) |
Здесь Имя Элемента Управления - |
имя элемента управления, |
|
KeyUp/KeyDown |
- |
вызвавшего событие; |
имя события; |
||
KeyCode |
- |
целое число, передающее значение |
|
|
константы нажимаемой или отпускае |
|
|
мой клавиши. Этот параметр сообща |
|
|
ет не только о том, какая клавиша |
|
|
нажата, но также и то, нажаты ли |
|
|
функциональная клавиша, клавиша |
|
|
на числовой клавиатуре, клавиши |
Shift |
- |
со стрелками или другие; |
целое число, которое сообщает о том, |
||
|
|
были ли нажаты клавиши [Shift], |
|
|
[Control] и [Alt]. |
Вопросы для самоконтроля
1.Что такое VBА?
2.Назовите основные объекты VBA.
3.Что понимается под семейством объектов!
4.Какие типы модулей различают в VBA?
5.Что понимается под свойством и методом объекта!
6.Что представляют собой событие и сообщение! Что может являть ся отправителем сообщения? Какие объекты могут выступать в качестве получателя сообщения?
7.Что представляют собой события GotFocus и LostFocus, каков син таксис процедур их обработки?
8.Назовите основные события формы. В каких случаях они проис ходят?
Программирование |
439 |
9.Назовите основные события мыши. В каких случаях они проис ходят?
10.Назовите основные события клавиатуры. В каких случаях они происходят?
11.Какие символы допускается применять в именах переменных?
12.Можно ли имя переменной начинать с цифры или с символа под черкивания?
13.Какие существуют соглашения по стилю имен?
14.Какие базовые типы данных поддерживает VBA?
15.Напишите оператор, явно декларирующий строковую перемен ную для хранения почтового адреса.
16.Какой оператор должен присутствовать в разделе глобальных объявлений, чтобы исключить ошибки в случае появления неяв но объявленных переменных?
17.Напишите оператор, декларирующий одномерный массив из 7 элементов целого типа и имеющий базовый индекс -3.
18.Что такое динамические массивы и как они декларируются?
19.Каково различие между переменной и константой? Какие типы констант поддерживает VBA?
20.Что представляют собой перечни, для чего они применяются?
21.Что представляет собой пользовательский тип данных, как он определяется и объявляется?
22.Каково различие между линейным и блочным оператором If?
23.Как определяется цикл с известным числом повторений?
24.Для каких целей служит цикл For Each, каков его синтаксис?
25.Какие циклы с условием поддерживает VBA?
26.В чем различие циклов с предусловием и постусловием?
27.Что такое функция и как она определяется?
28.Как производится обращение к функции?
29.Какие типы встроенных функций есть в VBA?
КОМПЬЮТЕРНЫЕ
СЕТИ
9 . 1 . ВИДЫ КОМПЬЮТЕРНЫХ СЕТЕЙ И ОСОБЕННОСТИ СЕТЕВЫХ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ
9.1.1. СПОСОБЫ СВЯЗИ КОМПЬЮТЕРОВ И ВИДЫ СЕТЕЙ
Компьютерная сеть - это совокупность компьютеров, между которыми возможен информационный обмен без промежуточных носителей информации. Для создания сети входящие в нее компь ютеры должны быть связаны каналами передачи информации - каналами связи, а на компьютерах - установлено специальное про граммное обеспечение, организующее работу в сети, - программы управления сетью. Технология работы в сети и возникающие при этом возможности зависят как от способов организации каналов связи, так и от программного обеспечения. Можно выделить сле дующие виды каналов связи и организуемых с их помощью сетей (рис. 9.1).
Простейшая компьютерная сеть. Она образуется при соедине нии двух недалеко отстоящих друг от друга компьютеров (в пределах 10 - 20 м) с помощью специального кабеля, называе мого нуль-модемом, который подключается к последовательным или параллельным портам обоих компьютеров. Такое временное
соединение называется прямым компьютерным соединением (ПКС).
Оно может быть установлено, а затем снято любым конечным пользователем. В настоящее время получают развитие инфракрас ные порты, позволяющие организовать указанный вид соедине ния напрямую, без кабеля. ПКС используется в основном для об мена информацией между портативным и стационарным персо нальным компьютером, например, офиса, хотя такой обмен возможен и между двумя стационарными ПК.