Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика_2011__2_МГРИ-РГГРУ.pdf
Скачиваний:
213
Добавлен:
29.03.2016
Размер:
4.01 Mб
Скачать

ЗАДАНИЕ 4

ПРОЕКТИРОВАНИЕ ИНТЕРФЕЙСА ПРОГРАММЫ

Ключевые понятия: форма UserForm, элементы управления, панель инструментов ToolBox, свойства объектов, панель свойств объектов

Properties.

ЗАДАЧА № 1.8.

Создать форму UserForm. Разместить на ней текстовые окна TextBox для ввода и вывода данных, метки Label, поясняющие назначение окон, командные кнопки CommandButton, запускающие выполнения соответствующих программ.

Теория

UserForm (рабочее окно программы) является основным (базовым) и самым старшим (родительским) объектом визуального интерфейса, который может включать любой набор дополнительных элементов управления из набора ToolBox, например, Label (этикетку), Textbox (текстовое окно) и др. Такой тип объектов называют контейнером. Он может включать подчиненные объекты, например, элементы управления (младшие по старшинству в иерархии) Label1, Label2 и т.д. При этом в момент обращения к любому элементу формы необходимо писать всю иерархиче-

скую цепочку UserForm1.Label1.Caption = ―M‖, где Caption - свойство объекта Label1.

В ООП у каждого объектов есть свойства и методы, например, UserForm1.Show метод, который загружает форму и показывает ее, а UserForm1.BackColor свойство определяющее цвет фона формы, которому может быть присвоено некоторое

фактическое значение.

1.Разместить на форме пять визуальных объекта: два текстовых окна ТехтBох, две метки Label и одну кнопку CommandButton для выполнения программы Sub Случ_числа() (см. пре-

60

дыдущее задание), которая реализует алгоритм заполнения таблицы набором случайных чисел. Редактор VB каждому объекту дает уникальное нумерованное имя.

2.Изменить в окне (Рroperties) следующие свойства объектов: Сaption (заголовки) у меток и кнопки и свойство Тext у текстовых окон.

3.Подобрать размер и начертание шрифта (свойство Font) так, чтобы надписи на объектах хорошо читались.

4.Для перехода в окно записи программного кода (Code) можно нажать F7 или щелкнуть по выбранному элементу управления на форме.

61

5.Для кнопки создать стандартное событие Click, которому назначить запуск и выполнение программы Sub Случ_числа1(). Эта программа отличается от программы Sub Случ_числа1() из предыдущего задания только тем, что значения размерности таблицы считываются из соответствующих текстовых окон Text1 и Text2.

6.На листе ЭТ разместить кнопку для загрузки формы и назначить ей выполнение следующего макроса.

Sub Start_Form()

UserForm1.Show

End Sub

САМОСТОЯТЕЛЬНАЯ РАБОТА.

Спроектируйте форму для выполнения программ заполнения области ячеек случайными числами, определения чѐтных и нечѐтных элементов, нахождения максимального и минимального элементов

(Задачи 1.3 – 1.7).

62

ЗАДАНИЕ 5

АВТОМАТИЗАЦИЯ ВЫЧИСЛЕНИЙ: РАСЧЕТ ИПОТЕКИ

Ключевые понятия: форма UserForm, объекты OptionButton, Frame, TextBox, Label, свойства объектов, панель свойств объектов Properties,финансовые функции.

ЗАДАЧА № 2.

Написать программу расчѐта ипотечной ссуды, используя финансовую функцию Pmt. Спроектировать диалоговое окно в виде пользовательской формы. Предусмотреть ввод исходных данных в текстовые окна для различных сумм ссуды и сроков погашения. Используя элементы OptionButton, организовать выбор различных вариантов расчѐта для ежемесячных и ежегодных платежей.

Процедура выполняет задачу по событию Click (нажатие), возникающему после нажатия на кнопку (CommandButton1) с названием «Вычислить».

Private Sub CommandButton1_Click() Dim A, P, i, iFirst, PSum, Pper As Single Dim n As Integer

' Функция Val переводит текстовое значение в числовое

P = Val(TextBox1.Text)

iFirst = Val(TextBox2.Text) / 100 i = Val(TextBox3.Text) / 100

n = Val(TextBox4.Text) Ps = P * (1 - iFirst)

'Значение OptionButton1.Value определяет порядок выплат

If OptionButton1.Value Then

'Функция Pmt (Payment) аналогична ПЛТ в ЭТ

A = Pmt(i / 12, n * 12, -Ps)

PSum = A * n * 12

Else

A = Pmt(i, n, -Ps)

PSum = A * n

End If

63

Pper = PSum - Ps

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

'в строковые с помощью функции Str

TextBox5.Text = Str(A)

TextBox6.Text = Str(PSum)

TextBox7.Text = Str(Pper)

'и печатаем отчет на листе ЭТ. Свойство Text в объекте TextBox

'можно не писать т.к. оно подставляется по умолчанию.

'Текстовые (т.е. строковые) значения преобразуем в числовые

'значения с помощью функции Val.

Cells(2, 2) = Val(TextBox1)

Cells(3, 2) = Val(TextBox2)

Cells(4, 2) = Val(TextBox3)

End Sub

Для вызова расчетной формы создайте кнопку с соответствующим названием на листе ЭТ.

Проверьте правильность вычисления приведенного в программе алгоритма с помощью функции ПЛТ для ежемесячных и ежегодных выплат.

64