Как подключить библиотеку DLL ? |
Макросы. Дальнейшая информация об объектах
Объект меню
Объект меню имеет около 15 свойств; действия, выполняемые при выборе команды меню должны быть запрограммированы в процедуре меню события Click; объект не имеет методов. Свойства доступны в режиме конструирования, но только при использовании редактора меню (см. ниже). Элементы первого уровня меню могут содержать список меню второго уровня и т.д.
Имеется редактор меню для создания меню, для работы с всплывающими меню. Редактор можно стартовать щелчком на соответствующей кнопке панели инструментов Стандартная, с помощью команды Инструменты Редактор меню или с использованием комбинации клавиш CTRL + E, рис. 5.6. Объект меню может быть выведен на форму в том случае, если она маркирована. При создании меню должны быть определены свойства меню Name - имя меню в коде программы и Caption - надпись, рис. 5.6. Свойство Index (см. рис. 5.6) используется при создании массива меню. Если в рассматриваемой ситуации некоторая команда меню не имеет смысла, то свойству Enabled нужно присвоить значение False. Если свойству Visible присвоить значение False, то пункт меню становится невидимым.
Структура создаваемого меню отображается при его формировании в нижней части окна редактора меню, рис. 5.6; кнопки с вертикальными стрелками позволяют переместить выбранный пункт меню на одну позицию вверх/вниз, при этом остаeтся неизменным уровень вложенности, кнопка со стрелкой вправо перемещает пункт на один уровень вложенности вниз, кнопка со стрелкой влево перемещает пункт на один уровень вложенности вверх. Команда Next включает в меню ещeодин пункт, команда Insert вставляет новый пункт меню перед текущим, команда Delete удаляет текущий элемент меню. Символ & в названии пункта меню обеспечивает подчeркивание первой буквы названия команды меню (возможность использования горячей клавиши для вызова команды).
Private Sub Form_MouseDown(button As Integer, shift As Integer, x As Single, y As Single) If button = 2 Then frmStudium.PopupMenu mnuBeruf End If End Sub
Практическая работа 37. Меню
Создать меню, команда которого позволяет вывести системную информацию Мicrosoft; ниже дана последовательность действий:
- маркировать форму, стартовать редактор меню,
- cоздать меню, задав: Name = mnuSysInfMicrosoft (Caption = SystInfMicrosoft) и Name = mnuEnd,
- добавить в проект форму About Dialog, для этого использовать меню Проект Добавить форму About Dialog Открыть,
- ввести код, данный ниже:
Private Sub mnuSysInfMicrosoft_Click() frmAbout.Show vbModal End Sub Private Sub mnuEnd_Click() End End Sub
- после старта проекта выбрать команду меню SysInfMicrosoft, сделать щелчок на этой кнопке, выводится диалоговое окно About, после щелчка на нижней кнопке выведенного диалогового окна выводится системная информация Microsoft.
Клавиатура и мышь - генераторы событий для других объектов
Клавиатура и мышь обеспечивают взаимодействие пользователя с операционной системой и приложением. Клавиатура - средство ввода данных. Мышь позволяет пользователю управлять средой разработки.
Мышь
Основные события, связанные с мышью даны, в табл. 5.5
Событие | Пояснения |
Click | Щелчок клавишей мыши. Может наступать также и при изменении значений свойств объекта; для поля списка Click наступает при выборе элемента списка |
DblClick | Двойной щелчок |
MouseDown | Нажатие клавиши мыши |
MouseUp | Отпускание клавиши мыши; параметры те же, что и в случае события MouseDown |
MouseMove | Передвижение курсора мыши над некоторым объектом, параметры те же, что и в случае события MouseDown |
DragDrop | Сбрасывание перетаскиваемого мышью объекта; используется параметр source - объект. Синтаксис: Private Sub Command1_ DragDrop (source As Control, x As Single, y As Single) |
DragOver | Протаскивание объекта мышью над элементом; используется параметр source - объект, синтаксис:Private Sub Command1_dragover(source As Control, x As Single, y As Single, state As Integer) state=0 - объект входит в границы источника, state=1 - объект покидает источник, state=2 - объект перетаскивается внутри границ источника |
Практическая работа 38. Мышь
38а. Мышь; некоторые события
- Cоздать на форме: текстовое поле (Name = txt1), 2 поля метки (Name = lbl1 и lbl2 соответственно), рис. 5.7, ввести код, данный ниже,
- стартовать проект, протаскивать первую метку над формой и текстовым полем, наблюдать появляющуюся при этом запись в текстовом поле, например: "Label above the TextBox" и т.д. Наблюдать, как при перемещении курсора мыши изменяются его координаты, выводимые в поле второй метки, рис. 5.7
Должно быть установлено значение свойства одной из меток DragMode = 1, что обеспечивает возможность еe перемещения после старта проекта (альтернативное значение - 0). Свойство Tag, см. код, используется в данном случае для вывода названия объекта. В двух процедурах обработки события DragOver (см. код Form_DragOver(:) и txt1_DragOver(:) используется параметр source - объект).
Private Sub Form_Load() lbl1.Tag = "Label1" End Sub Private Sub Form_DragOver(source As Control, x As Single, y As Single, state As Integer) txt1.Text = source.Tag & "above the Form" End Sub Private Sub txt1_DragОver(source As Control, x As Single, y As Single, state As Integer) txt1.Text = source.Tag & "above the TextBox" End Sub Private Sub Form_MouseMove(button As Integer, shift As Integer, x As Single, y As Single) lbl2.Caption = Str(x) & ";" & Str(y) End Sub