Рефераты. Програмирование на Visual Basic p> .Private Sub HScrolll_Change()

Textl.Text = HScrolll.Value End Sub

Private Sub HScrolll_Scroll()

Text2.Text = HScrolll.Value End Sub
Событие Change отражается в верхнем окне, событие Scroll - в нижнем окне.
После запуска программы щелчок мыши по полю вызывает перемещение движка и изменение значения в верхнем окне на 10 единиц (Large Change), щелчок мыши по стрелкам вызывает перемещение движка и изменение значения в верхнем окне на 5 единиц (Small Change). Эти изменения не отражаются в нижнем окне (рис.
2.17). Перемещение движка мышью вызывает изменение значения, которые отражаются в обоих окнах (рис. 2.18).
2.12. ПРИМЕР СОЗДАНИЯ ФОРМЫ
Создадим форму со следующими элементами управления (рис. 2.19):

. Комбинированный список типа 1, содержащий названия фирм-производителей автомобилей.
[pic]
Рис.2.17 Рис. 2.18

. Метка с названием “Фирма”, поясняющая назначение комбинированного списка.

. Комбинированный список типа 2, содержащий названия цветов автомобилей.

. Метка с названием “Цвет”, поясняющая назначение комбинированного списка.

. Метка без названия для отображения цвета, который выбирается в комбинированном списке.

. Комбинированный список типа 0, содержащий названия исполнения автомобилей.

. Рамка с названием “Тип кузова”, объединяющая три переключателя для выбора типа кузова: “Кабриолет”, “Седан”, “Универсал”.

. Рамка с названием “Мощность”, содержащая горизонтальную линейку прокрутки для изменения мощности двигателя, две метки для отображения мощности двигателя в киловаттах и лошадиных силах, две поясняющие метки с названиями “кВт” и “Л.С.” (для горизонтальной линейки прокрутки на этапе проектирования формы задаются значения свойств: минимальное значение - 30 (min = 30), максимальное значение - 500 (max

== 500), текущее значение - 75 ( value = 75), малый шаг - 1

(SmallChange = 1), большой шаг - 10 (LargeChage = 10), недоступна

(enabled = false)) и командную кнопку “Зафиксировать”.

. Рамка с названием “Список фирм - дистрибьюторов”, объединяющая список, флажок, метку с названием “Двухколоночный”, поясняющую назначение флажка, и четыре командных кнопки (“Очистить список”, “Удалить название “, “Добавить название”, “Зафиксировать”). [pic]

. Флажки с названиями “Дизель” и “Металлик”.

. Текстовое окно для описания модели с горизонтальной и вертикальной линейками прокрутки.

. Метка с названием “Описание модели”.

. Командная кнопка “Конец”.
При проектировании формы значения свойств, определяющих основные цвета, цвета фона, вид и размер шрифтов, размеры и расположение управляющих элементов, задаются разработчиком или определяются по умолчанию.
Элементы управления и процедуры обработки событий должны обеспечить следующую логику работы с формой.
[pic]
На этапе загрузки формы заполняются комбинированные списки “Фирма”, “Цвет”,
“Исполнение”, а также простой список “Фирм продавцов”:
|Список |Список |Список |Список |
|“Фирмы” |“Цвет” |“Исполнение|“Фирмы-продавц|
| | |” |ы” |
|Мерседес |Красный|Люкс |АЗР |
|Ауди |Белый |Стандарт |Musa Motors |
|Фольксваген|Черный |Минимум |ЛадаИнжинеринг|
|Шкода |Синий | |Sawa |
| | | | |
|Рено |Зеленый| |ЛогоВАЗ |
|Ситроен | | | |
| | | | |
|Лада | | | |
| | | | |


Заполнение производится в процедуре Form_Load с помощью методов Additem.
В той же процедуре задаются названия меток Label4 и Label5 (соответственно значение мощности в киловаттах и в лошадиных силах). Эти названия должны изменяться соответственно значению текущего положения движка линейки прокрутки. Для преобразования мощности из киловатт в лошадиные силы и обратно надо использовать соотношение: 1Л.С.=735,499 Вт.
Для определения названия метки необходимо преобразовать численное значение свойства HScrolll. Value в текст с использованием встроенной функции Str$
(выражение Str$(HScrolll. Value)).
В таблицах приведены операторы процедур обработки событий примера и поясняющие их комментарии.
|Процедура |Комментарии |
|Sub Form Load() | |
| | |
|LabeM.Caption = |Определение названия |
|Str$(HScrolll. Value *|(свойство |
|735.499 / 1000) | |
|Label5.Caption = |Caption) метки Label4 |
|Str$(HScrolll. Value) |Определение названия |
| |метки Label5 |
|Combo 1.Add Item |Combol - имя списка |
|“Мерседес” |“Фирмы” |
|Combo 1.Add I tern |Additem - метод, |
|“Ауди” |осуществляющий |
|Combo 1.Add Item |добавление элементов в |
|“Фольксваген” |список с |
|Combol.Additem “Шкода”|указанным именем |
|Combo 1.Additem “Рено”|“Мерседес” - Значение |
| |добавляемого |
|Combol.Additem |элемента |
|“Ситроен” | |
|Combol.Additem “Лада” | |
| |Метод Additem одинаково|
| |действует |
|Combo2.AddItem |и для комбинированных |
|“Красный” |списков и |
|Combo2.AddItem “Белый”|для простых |
|Combo2.AddItem | |
|“Черный” | |
|Combo2.AddItem “Синий”| |
|Combo2.AddItem | |
|“Зеленый” | |
|СотЬоЗ.Additem “Люкс” | |
| | |
|Combo3.AddItern | |
|“Стандарт” | |
|Combo3.AddItem | |
|“Минимум” | |
|Listl.Additem “Musa | |
|Motors” | |
|Listl.Additem | |
|“ЛадаИнжинеринг” | |
|Listl.Additem “Sawa” | |
|Listl.Additem “A3P” | |
|Listl.Additem | |
|“ЛогоВАЗ” | |
|End Sub | |
| | |



В результате выполнения процедуры выводится форма (рис. 2.20). На форме активны только четыре элемента: метка с названием “Фирма”, командная кнопка
“Конец”, текстовое окно “Описание модели” и комбинированный список “Фирма”.
При щелчке по списку он разворачивается и из него можно выбрать название фирмы-производителя. После выбора фирмы её название заносится в текстовое окно “Описание модели”, комбинированный список фирм становится неактивным вместе с меткой “Фирма”, а метка “Цвет”, комбинированный список для выбора цветов автомобиля и метка отображения выбранного цвета становятся активными.
Для выполнения указанных действий процедура Combo l_Click() (обработка события щелчок по списку) содержит следующие операторы:
|Процедура |Комментарии |
|Sub Combo lClick() |Деактивизация |
| |комбинированного |
|Combol. Enabled == |списка путем присвоения|
|False |значения |
|Label 1. Enabled = |False( ложь ) свойству |
|False |Enabled |
| |(Активность) |
| | |
| |Добавление к значению |
| |текстовой |
|Text 1.Text = Text |строки “Описание |
|1.Text + |модели” |
|Combol.Text + Chr$(13) |значения текущего |
|+ Chr$(10) |(выбранного) |
| |элемента из |
| |комбинированного |
| |списка “Фирмы”. “+” - |
| |операция |
| |сцепления строк |
| |Chr$(10), Chr$(13) - |
| |функция, ре |
| |зультатом вычисления |
| |которой |
| |является символ с кодом|
| |10 и 13 |
| |13, 10 - комбинация |
| |символов для |
| |перевода курсора в |
| |начало следую |
| |щей строки текстового |
| |окна. |
| |Активизация |
| |комбинированного |
| |списка “Цвета” и его |
| |метки |
|Combo2. Enabled = True | |
| | |
|Label2. Enabled = True | |
|End Sub | |
| | |



После завершения выполнения данной процедуры на форме изменятся элементы
(рис. 2.21). [pic]
Рис. 2.21
[pic]
Рис. 2.22
На форме активны только четыре элемента: метка с названием “Цвет”, командная кнопка “Конец”, комбинированный список для выбора цвета и текстовое окно “Описание модели”. При щелчке по списку он разворачивается и из него можно выбрать цвет для машины.
После выбора цвета его название заносится в текстовое окно “Описание модели”, комбинированный список цветов становится неактивным вместе с меткой “Цвет”, а метка “Исполнение” и комбинированный список для выбора варианта исполнения автомобиля становятся активными (рис. 2.22).
Для выполнения указанных действий процедура Combo2_Click() (обработка события “Щелчок по списку”) содержит следующие операторы:
[pic] Коды цветов приведены в следующей таблице:
|Цвет |Кол цвета |
| |&Н 000000 FF& |
| | |
| |&HOOFFOOOO& |
| |&НООСОСОСО& |
| | |
| |&HOOOOFFOO& |
| | |
|Голубой |&HOOFFFFOO& |
|Черный |&НООООООООО& |
|Белый |&HOOFFFFFF& |
|Желтый |&HOOOOFFFF& |


Коды цветов заданы в шестнадцатеричной системе счисления, в которой для представления чисел используется 16 символов: цифры от 0 до 9 и буквы от А
(эквивалент 10) до F (эквивалент 15). Значимость каждой п-й позиции в шестнадцате-ричном числе возрастает пропорционально степени 6”n. Например, десятичное число 419 в шестнадцатеричном представлении записывается 1АЗ:
1*16”2 + 10*16”! + 3*16^0 = 419.
В двоичной системе число 15 записывается 1111, т.е. любой символ шестнадцатеричного числа можно кодировать четырьмя битами. Память компьютера разделена на байты (1 байт равен 8 битам) и каждый байт может хранить любое из 256 (16^1) шестна-дцатеричных чисел: от 0 до FF. Такое компактное представление информации на основе шестнадцатеричной системы счисления обусловливает ее широкое использование в программировании.
Шестнадцатеричному числу в Visual Basic предшествуют символы &Н.
Как видно из рис. 2.22, на форме активны четыре элемента: комбинированный список, соответствующий метке с названием “Исполнение”, командная кнопка “Конец” и текстовое окно “Описание модели”. При щелчке по элементу комбинированного списка можно выбрать соответствующий вариант исполнения для машины. После выбора варианта исполнения его название заносится в текстовое окно “Описание модели”, комбинированный список становится неактивным вместе с меткой, а рамка с названием “Тип кузова” и три переключателя внутри неё - активными (рис. 2.23). Для выполнения указанных действий процедура Combo3_Click() (обработка события “Щелчок по списку”) содержит следующие операторы:
[pic]
В результате выполнения данной процедуры на форме произойдут изменения, показанные на (рис. 2.23). На форме активны шесть элементов: кнопка
“Конец”, рамка “Тип кузова”, текстовое окно “Описание модели” и три переключателя в рамке.
[pic]
Рис. 2.23 [pic]
В результате форма примет вид, показанный на рис. 2.25. На форме активны: текстовое окно с названием “Описание модели”, рамка “Список фирм- дистрибъютеров”, командная кнопка с названием “Очистить список”, командная кнопка с названием “Добавить название”, текстовая строка для добавления нового имени в список продавцов и кнопка “Конец”.
При щелчке по флажку “Двухколоночный” список в зависимости от состояния флажка преобразуется в двухколоночный и обратно. Реализующая процедура обработки события Check3_Click() содержит следующие операторы:
|Процедура |Комментарии |
|Sub Check3 Click() |Свойство Value элемента |
|IfCheck3.Value = 0 |Check равно 0, если |
|Then List!.Columns = |флажок не взведен. В |
|1 Else List 1.Columns|зависимости от значения |
|= 2 End If |этого свойства |
|End Sub |определяется свойство |
| |списка.(Listl.Columns = |
| |1 - список |
| |одноколоночный, |
| |Listl.Columns = 2 |
| |-список двухколоночный) |

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.