Литмир - Электронная Библиотека
Содержание  
A
A

3. Переименуйте форму с Name на frmOne. Для этого активизируйте форму (щелкните на ней), перейдите в окно свойств объекта (properties), выделите свойство Name (первая строка) и пропишите frmOne.

4. Создайте текстовые поля textbox1 и textbox2. Первое будет использоваться для ввода имени, второе – для ввода пароля, поэтому переименуйте их на txtName и txtPassword (аналогично пункту 3).

5. Как правило, вводимый пароль не отображается в поле. Чтобы вводимые символы пароля заменялись звездочками, выделите поле пароля, затем в окне Properties найдите свойство PasswordChar и задайте для него значение «*».

6. Добавьте кнопки. Переименуйте первую кнопку на btnOK. Кнопка OK должна быть кнопкой по умолчанию. Это означает, что на нажатие клавиши Enter форма должна реагировать так же, как и на щелчок этой кнопки. Для этого измените значение свойства Default кнопки btnOK на True.

7. Переименуйте вторую кнопку на btnCancel. Щелчок кнопки Cancel обычно эквивалентен нажатию клавиши Escape. Чтобы в вашем окне было именно так, задайте значение «True» для свойства Cancel.

8. Создайте процедуру закрытия формы.

9. Создайте процедуру работы кнопки ОК. В заготовке процедуры

Private Sub btnOK_Click()

End Sub

вставьте оператор MsgBox Txtname & «получил(а) доступ». В этом операторе текст, введенный в поле txtName, объединяется с поясняющей строкой и выводится в информационном окне.

10. Создайте процедуру для проверки пароля. Закроем доступ к кнопке OK, пока не введен верный пароль. Для этого измените свойство Enabled кнопки OK на False (доступ к кнопке закрыт) и введите новую процедуру:

Private Sub CheckOK()

Const pas = «abc» 'Пароль

If Txtpassword = pas Then 'Если текст в поле

Txtpassword совпадает с паролем, то btnOK.Enabled = True 'доступ к кнопке OK открыт

Else 'иначе

btnOK.Enabled = False 'доступ к кнопке OK закрыт

End If

End Sub

Процедура должна запускаться при вводе нового пароля. Для этого в окне формы щелкните дважды второе текстовое поле (предназначенное для пароля). В появившуюся процедуру

Private Sub Txtpassword_Change()

End Sub

введите единственную команду CheckOK, которая при внесении любых изменений в поле пароля будет запускать процедуру проверки пароля.

11. Заполните список группы. Расположите на форме элемент управления ListBox. По умолчанию его имя ListBox1. Оставим его в таком виде. Заполнить список можно в операторе With:

With ListBox1

List = Array(«Иванова Марина», «Гончарова Елена», «Зотова Татьяна», «Кринченко Светлана», «Орлов Сергей», «Петров Александр»)

End With

Здесь List – свойство элемента ListBox, которое является массивом. Вставьте этот оператор в уже имеющуюся процедуру btnOK_Click.

12. Проверка работы формы. После запуска формы введите свое имя и верный пароль. Должна стать доступной кнопка ok. После ее нажатия появляются сообщение «Имя получил(а) доступ» и заполненный список. После нажатия кнопки Закрыть форма должна закрыться.

Дополнительные задания

13. Дополните список с помощью метода AddItem. Синтаксис:

ИмяСписка. AddItem «новый элемент списка».

14. Обработайте событие, связанное со щелчком по форме (мимо элементов управления). Пусть в ответ на это выводится какое-нибудь сообщение типа «Вы не попали по кнопке!».

4.2. Элементы управления ComboBox, OptionButton и Frame

Поле со списком

Элемент управления СотbоВох

Офисное программирование - i_066.png

(поле со списком) создается с помощью соответствующего элемента. Элемент управления СотЪоВох применяется для хранения списка значений. Он сочетает в себе функциональные возможности списка ListBox и поля TextBox. В отличие от ListBox, в элементе управления СотЪоВох отображается только один элемент списка. Кроме того, у него отсутствует режим выделения нескольких элементов списка, но он позволяет вводить значение, используя поле ввода, как это делает элемент управления TextBox.

Свойства объекта ComboBox, такие как ListIndex, ListCount, Enabled, List, и методы Clear, RemoveItem и AddItem аналогичны соответствующим свойствам и методам списка ListBox. Кроме того, у него есть ряд уникальных свойств:

DropButtonStyle – устанавливает вид раскрывающегося списка. Допустимые значения:

fmDropButtonStylePlain – кнопка без символов;

fmDropButtonStyleArrowDisplays – кнопка со стрелкой;

fmDropButtonStyleEllips – кнопка с эллипсом;

fmDropButtonStyleReduce – кнопка с линией.

ListRows – устанавливает число элементов, отображаемых в раскрываемом списке.

MatchRequired – допустимые значения: True (нельзя ввести значения) и False (в противном случае).

MatchFound – допустимые значения: True (среди элементов раскрывающегося списка имеется элемент, совпадающий с вводимым в поле ввода раскрывающегося списка) и False (в противном случае).

Переключатель и рамка

Элемент управления OptionButton

Офисное программирование - i_067.png

(переключатель) создается с помощью соответствующего элемента. Он позволяет выбрать один из нескольких взаимоисключающих параметров или действий. Переключатели обычно отображаются группами, обеспечивая возможность выбора альтернативного варианта (см. п. 3.3).

Элемент управления Frame

Офисное программирование - i_068.png

(рамка) создается с помощью соответствующего элемента. Он используется для визуальной группировки элементов управления. Основным свойством рамки является caption, отображающее надпись рамки.

Задачи на закрепление материала

Пример 22.[1] Создать программу, которая позволяет при выделении из списка формы нескольких чисел производить суммирование, находить произведение или среднее значение в зависимости от выбора действия (операции).

Нажатие кнопки «Вычислить» должно привести к выполнению выбранной операции над выбранными числами и выводу результата в поле «Результат» (рис. 40).

Офисное программирование - i_069.png

Рис. 40. Разработанная форма примера 22 в рабочем состоянии

Технология выполнения

Обсудим, как приведенная ниже программа решает перечисленные пункты задачи и что происходит в программе.

UserForm_Initialize

1. Активизирует диалоговое окно

2. Запрещает ввод данных в поле Результат.

3. Связывает с кнопками Вычислить и Закрыть, а также с переключателями всплывающие подсказки

Нажатие кнопки Вычислить запускает на выполнение процедуру CommandButton1_Click

Определяет, какой переключатель выбран. В зависимости от выбранного переключателя производит действие над выбранными в списке числами. Найденное число выводится в поле Результат

Нажатие кнопки Закрыть запускает на выполнение процедуру CommandButton2_Click

Закрывает диалоговое окно

Процедура нажатия кнопки «Вычислить» производит вычисления с элементами списка в зависимости от выбранной операции. Вводятся переменные n и i, где n играет роль счетчика числа выбранных элементов из списка, а i – вспомогательная переменная. Также вводятся переменные, которые будут содержать результат вычислений: сумма, произведение и среднее. Все полученные вычисления присваиваются переменной Результат, которая и выдается в текстовое поле.

вернуться

1

Гарнаев А. Самоучитель vba. СПб.: БХВ-Петербург, 2004.

16
{"b":"95947","o":1}