Разработка программ с использованием форм пользователя

8.1    Работа с управляющими элементами

8.1.1        Элементы Кнопка, Поле, Надпись

Упражнение 12.     

Задание: Создайте собственное диалоговое окно для пересчета  рублей в доллары по текущему курсу. Примерный вид диалогового окна приведен ниже. Для вывода окна на экран используйте кнопку, которую поместите на первом рабочем листе.

Рис. 8.1. Диалоговое окно программы перерасчета валюты

 Для выполнения задания сделайте следующее:

1.       Перейдите в редактор VBA, для этого выполните команду Сервис, Макрос, Редактор Visual Basic. Добавьте в проект новую форму (команда Вставка, UserForm). Добавьте в форму нужные элементы (2 кнопки, 2 элемента Поле, 4 элемента Надпись). Для вывода значения в долларах будет использоваться элемент Надпись, так как это значение пользователь не вводит, оно вычисляется.

2.       Выведите на экран окно свойств, если его нет (команда Вид, Окно свойств). Измените имена элементов, заданные по умолчанию в соответствии с таблицей 8.1.

Таблица 8.1.

Элемент

Имя

Устанавливаемые свойства

Обрабатываемые события

Форма

Мояформа

Caption –Пересчет рублей в доллары

нет

Кнопка

Кнопкапересчитать

Caption - Пересчитать

Проверяет корректность данных (числовые значения в полях).

Если данные некорректны, то выводит сообщение оператору.

Выполняет вычисления и выводит результат

Кнопка

Кнопкапоказать

Caption - Отмена

Click

Выход из программы

Поле

Полерубли

нет

нет

Поле

Полекурс

нет

нет

Надпись

Надписьзначение

Caption -Доллары

нет

Надпись

По Умолчанию

Caption - Рубли

нет

Надпись

По Умолчанию

Caption - курс

нет

 3.       Измените значения свойства Caption у надписей и кнопок.

4.       Напишите процедуру обработки события Click для кнопки “Пересчитать”. Если выполнить двойной щелчок на кнопке, то вы попадете в окно кода, где уже вставлена заготовка для процедуры. Введите текст процедуры, приведенный ниже, но учтите, что имена ваших элементов могут быть другими:

Private Sub КнопкаПересчитать_Click()

Dim X As Double

    If IsNumeric(ПолеРубли.Text) = False Then

        MsgBox "Введите правильно значение в рублях"

        ПолеРубли.SetFocus

        Exit Sub

    End If

        If IsNumeric(ПолеКурс.Text) = False Then

        MsgBox "Введите правильно курс"

        ПолеКурс.SetFocus

        Exit Sub

    End If

     X = CDbl(ПолеРубли.Text) / CDbl(ПолеКурс.Text)

    НадписьЗначение.Caption = Format(X, "Standard")

End Sub

5.          Напишите процедуру обработки события Click для кнопки “Отмена”. Она должна находиться в окне кода вашей формы:

Private Sub КнопкаОтмена_Click()

    МояФорма.Hide

End Sub

6.      Вставьте на Лист1 кнопку для вывода вашего диалогового окна. Для этого перейдите на первый лист (не закрывайте редактор Visual Basic). Если панель Элементы управления не видна, то выведите ее на экран (команда Вид, Панели инструментов, Элементы управления). Измените надпись на кнопке (свойство Caption). Для вывода окна свойств используйте соответствующую кнопку панели Элементы управления или контекстное меню кнопки (должен быть включен режим конструктора).

7.      Напишите процедуру обработки события Click для этой кнопки. Вернитесь в редактор Visual Basic, в окне проекта выберите Лист1 и выполните на нем двойной щелчок. Вы попадете в окно кода этого листа. В левом списке в верхней части окна выберите имя кнопки, а в правом списке событие Click, будет вставлена заготовка для соответствующей процедуры. Введите текст процедуры:

Private Sub КнопкаПоказать_Click()

     МояФорма.Show Показать форму

End Sub

8.      Вернитесь в Excel и запустите программу, щелкнув на кнопке, расположенной на Листе1

9.      Проверьте корректность работы программы, при необходимости отладьте ее.

Предыдущая    Следующая   В содержание темы
Hosted by uCoz