Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...
Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...
Топ:
Выпускная квалификационная работа: Основная часть ВКР, как правило, состоит из двух-трех глав, каждая из которых, в свою очередь...
Эволюция кровеносной системы позвоночных животных: Биологическая эволюция – необратимый процесс исторического развития живой природы...
Интересное:
Отражение на счетах бухгалтерского учета процесса приобретения: Процесс заготовления представляет систему экономических событий, включающих приобретение организацией у поставщиков сырья...
Финансовый рынок и его значение в управлении денежными потоками на современном этапе: любому предприятию для расширения производства и увеличения прибыли нужны...
Как мы говорим и как мы слушаем: общение можно сравнить с огромным зонтиком, под которым скрыто все...
Дисциплины:
2022-10-29 | 19 |
5.00
из
|
Заказать работу |
|
|
mvarError = ““ 'формирование значения свойства Errors
If Y = 0 Then ‘деление на ноль
mvarError = “Деление на ноль“ ‘формирование значения свойства Errors
RaiseEvent OnErrors(mvarError) ‘генерация события OnErrors
div = 0 ‘возвращение нуля в качестве результата
Else: ‘деление возможно
div = round(X / Y, mvarroundres) ‘формирование результата X/Y
End If
End Function
Public Function mult(ByVal X As Double,ByVal Y As Double)As Double’X*Y
mvarError = ““ 'формирование значения свойства Errors
mult = round(X * Y, mvarroundres) ‘формирование результата X*Y
End Function
Public Function add(ByVal X As Double,ByVal Y As Double)As Double ’X+Y
mvarError = ““ 'формирование значения свойства Errors
add = round(X + Y, mvarroundres) ‘формирование результата X+Y
End Function
Private Sub Class_Initialize() ‘инициализация при создании объекта
mvarError=““: mvarroundres=3 ‘умалчиваемые значения
End Sub
8. Разместим на форме кнопки Command1, Command2 (для тестирования работы класса) и составим процедуры для этой формы.
‘(General) (Declarations) ‑ раздел глобальных объявлений формы
‘объявление объектной переменной obCalc типа Calc с событиями класса
Private WithEvents obCalc As calc
Private Sub Form_Load() ‘процедура загрузки формы
Set obCalc = New Calc ‘создание объекта obCalc класса Calc
obCalc.roundres = 6 ‘свойству Roundres присваивается значение 6
End Sub
Private Sub Command1_Click() ‘процедура проверки деления
Debug.Print obCalc.div(6, 0) ‘выполнение метода div (6/0!) и вывод
If obCalc.Errors <> ““ Then MsgBox obCalc.Errors ‘сообщение об ошибке
End Sub
Private Sub Command2_Click() ‘процедура проверки сложения
Debug.Print obCalc.add(6,8) ‘выполнение метода Add (6,8) и вывод суммы
End Sub
Private Sub obCalc_onerrors(nameerror As Variant) ‘cобытие Onerrors
|
MsgBox “Событие OnErrors “+nameerror+”!” ‘вывод сообщения об ошибке
End Sub
9. Сохраним и выполним приложение.
Аналогичным образом можно создать класс на основе класса Calc.
Вопросы для самопроверки и контроля
Вопросы для самопроверки
1. В чем состоит разница между закрытыми и открытыми процедурами?
2. Что означает слово Public в заголовке процедуры или функции?
Контрольные вопросы
1. Что означает слово Private в заголовке процедуры или функции?
2. Какие процедуры содержит модуль формы?
3. В чем заключается отличие класса от модуля?
4. Что означает слово WithEvents в объявлении объекта?
5. В чем состоит разница между процедурами-свойствами типа Get и Let?
Глава 8. Разработка интерфейса
Меню
. Для формирования меню выполните команду Tools/Menu Editor. Появится окно редактора меню (рис. 8.1.1) с предлагаемым далее примером. Элементы меню обладают свойствами и поддерживают одно событие Click. Для каждой формы может быть не более одного меню. Меню прикрепляется к левому верхнему углу формы.
Специфичные свойства
Caption ‑ определяет текст строки меню, выводимый на экран. Если указать “ & ”, то следующий за ним символ будет подчеркнут и станет символом ускоренного вызова при совместном нажатии клавиши Alt для открытия меню. Для включения в меню строки-разделителя нужно указать Caption=”-“; при этом указывается значение и для Name.
Name ‑ определяет программное имя элемента меню для ссылок.
Checked - помечает или удаляет “галочку” рядом с выбранной строкой меню, включая или выключая состояние команды меню.
ShortCut - задает клавишу прямого вызова команды меню, не открывая меню.
Enabled ‑ запрещает/разрешает использование команды меню.
Visible ‑ запрещает/разрешает отображение на экране команды меню.
Index ‑ используется в режиме динамического формирования специальных меню как номер элемента массива с пунктами меню (п.8.2).
Горизонтальные стрелочки используются для перемещения строк по уровням иерархии строк, вертикальные ‑ для перемещения строк по вертикали. Кнопки Next, Insert и Delete используются, соответственно, для перехода на формирование следующей строки меню, вставки новой строки перед текущей и удаления текущей строки меню.
|
Для определения процедуры, которая выполняется при выборе строки меню, нужно раскрыть меню и щелкнуть мышкой на этой строке. Появится программное окно для набора текста этой процедуры.
Рекомендуется пункты меню, которые вызывают диалоговые окна, заканчивать троеточием.
Пример создания меню (рис. 8.1.2).
Используя меню, можно изменять цвет формы на красный, синий, белый или на любой, который пожелает пользователь; можно изменить размер формы на маленький, или на большой (на весь экран).
Меню состоит из двух пунктов первого уровня (цвет, размер), двух подменю второго уровня (первое: выбрать цвет, выход (Exit) и второе: маленький (Small) и большой (Big)) и одного подменю третьего уровня: красный (Red), синий (Blue), белый (White) и любой (Any) (рис. 8.1.1) Разместим на форме объект Common Dialog для настройки цвета (пп. 8.4.1, 8.4.4).
Приведем тексты процедур.
Private Sub Form_Load() ‘процедура загрузки формы
white.Enabled = False ‘блокировка строки “Белый”, форма уже белая
small.Enabled = False ‘блокировка строки меню “Маленький”
End Sub
Private Sub red_Click() ‘процедура обработки строки меню “Красный”
Form1.BackColor = QBColor(4) ‘цвет формы меняется на красный
red.Enabled = False ‘блокировка строки “Красный”, форма уже красная
blue.Enabled = True ‘разблокировка строки “Синий”
white.Enabled = True ‘разблокировка строки “Белый”
End Sub
Private Sub blue_Click() ‘процедура обработки строки меню “Синий”
Form1.BackColor = QBColor(1) ‘цвет формы меняется на синий
red.Enabled = True ‘разблокировка строки “Красный”
blue.Enabled = False ‘блокировка строки “Синий”, форма уже синяя
white.Enabled = True ‘разблокировка строки “Белый”
End Sub
Private Sub white_Click()‘процедура обработки строки меню “Белый”
Form1.BackColor = QBColor(15) ‘цвет формы меняется на белый
red.Enabled = True ‘разблокировка строки “Красный”
blue.Enabled = True ‘разблокировка строки “Синий”
white.Enabled = False ‘блокировка строки “Белый”, форма уже белая
End Sub
Private Sub any_Click() ‘процедура обработка строки меню “Любой”
CommonDialog1.Flags = cdlCCRGBInit ‘диалог выбора цвета (п.8.4.4)
|
CommonDialog1.ShowColor ‘вывод окна настройки цвета (рис.8.4.4.1)
Form1.BackColor = CommonDialog1.color ‘цвет формы меняется на новый
red.Enabled = True: blue.Enabled = True: white.Enabled = True
End Sub
Private Sub small_Click()‘процедура обработки строки “Маленький ”
Form1.WindowState = 0 ‘уменьшение размера формы
small.Enabled = False ‘блокировка строки меню “Маленький”
big.Enabled = True ‘разблокировка строки меню “Большой”
End Sub
Private Sub big_Click() ‘процедура обработки строки меню “Большой”
Form1.WindowState = 2 ‘распахивание формы на весь экран
small.Enabled = True ‘разблокировка строки меню “Маленький”
big.Enabled = False ‘блокировка строки меню “Большой”, уже большая
End Sub
Private Sub exit_Click()‘процедура обработки строки меню “Выход”
End ‘окончание работы программы
End Sub
|
|
Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...
Историки об Елизавете Петровне: Елизавета попала между двумя встречными культурными течениями, воспитывалась среди новых европейских веяний и преданий...
Типы сооружений для обработки осадков: Септиками называются сооружения, в которых одновременно происходят осветление сточной жидкости...
Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!