Окно редактирования кода

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

 

Рис. 10. Окно редактирования кода

Вверху окна кода находятся два окна «Object» и «Procedure», в которых указывается текущий объект (с ним вы работаете) и тип процедуры, которую вы описываете. В данном случае видно, что программист описывает процедуру для командной кнопки CommandButton1 и процедура эта – «кликанье» левой кнопкой мыши (Click).

Для переключения из режима проектирования формы в режим редактирования кода служит команда ViewØCode (ВидØПрограмма). Обратный переход – команда ViewØObject (ВидØОбъект).

Чтобы спроектировать наше приложение, нужно взять некоторые стандартные элементы управления, поместить их на форму (одну или несколько), затем установить начальные свойства этих элементов и создать код обработки событий, связанных с этими элементами.

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

В окне проекта выберите имя проекта, в который требуется добавить форму.

В меню редактора VBA выберите команду Insert (Вставка) \ UserForm. Выводится пустая форма и набор инструментов.

Поместите на форму элементы управления, как это представлено на рисунке 11.

 

Рис. 11. Расположение элементов на форме

 

В примере используем следующие элементы управления.

Наиболее простой элемент, используемый во многих приложениях, это метка (Label) . Метка служит для вывода текстовой информации вспомогательного характера: подпись к другим элементам, комментарии к действию, расширенное описание этого действия и пр.

Текстовые окна (TextBox) . Этот элемент служит для приема от пользователя данных: текст, числа и пр. Текст можно редактировать, выделять, заносить в буфер и пр.

Командные кнопки (CommandButton) . Командные кнопки являются одним из самых простых и используемых элементов управления. Их назначение интуитивно понятно: на них надо кликнуть левой кнопкой мыши и после этого произойдет какое-то событие.

Имея в своем распоряжении эти три элемента (кнопка, метка, текстовое окно) можно решить 90 % задач курса математики, физики и прочих дисциплин.

Элементам управления автоматически будут присвоены имена, указанные на рисунке 11.

Как видно из рисунка, в элементах типа Label разместим надписи: a=, b=, c=, x=, результат расположим также в элементе типа Label, в элементы типа TextBox поместим исходные данные, в элементе типа Image расположим формулу для вычисления y (начинающим программистам этот элемент можно не размещать). Для запуска подпрограммы поместим командную кнопку CommandButton1.

Чтобы поместить элемент управления на форму, нужно нажать на панели элементов кнопку нужного элемента, затем щелкнуть в любом месте формы. После появления нужного элемента перетащить его в нужное место (метод «drag-and-drop»). Чтобы изменить размер элемента, можно перетащить его рамку, предварительно выделив элемент.

Используя общепринятые соглашения об именах объектов, переименуем элементы управления TextBox1, TextBox2, TextBox3 TextBox4 в TxtA, TxtB, TxtC и TxtX соответственно. Для этого достаточно изменить их свойство Name (имя) в окне свойств. Для этого выделим элемент, в окне свойств найдем свойство Name (имя). Впишем соответствующее имя в правую колонку и нажмем <Enter>. Остальные имена объектов оставим без изменений.

Командной кнопке автоматически будет присвоено имя CommandButton1, а надпись на ней автоматически будет «CommandButton1». Измените надпись на кнопке – для этого достаточно изменить ее свойство Caption (надпись) и записать новый текст «Пуск». Для этого выделите кнопку, в окне свойств найдите свойство Captionи впишите в него «Пуск».

Сгенерируйте процедуру обработки события Click (кликанье левой кнопки мыши) для кнопки CommandButton1. Для этого достаточно быстро кликнуть на этой кнопке два раза левой кнопкой. В результате будет создана нужная нам процедура, в которую надо ввести код:

 

Программный код

Private Sub CommandButton1_Click()

Dim A As Single

Dim B As Single

Dim C As Single

Dim X As Single

Dim Y As Single

A = Val(TxtA.Value)

B = Val(TxtB.Value)

C = Val(TxtC.Value)

X = Val(TxtX.Value)

Y = (X * Sqr(A + B) + Exp(-3 * A)) / (Sin(X ^ 2) + Cos((C + A) ^ 2) ^ 2) _

+ Atn(Abs(X - B)) / (3 * B * (A - B)) + Log(Abs(1 - A ^ (B - C)))

Label5.Caption = "Значение функции Y = " & Str(Y)

End Sub

Пояснение. Для элементов управления типа TextBox свойство Value это текст, введенный в окно. Поэтому введем исходные данные в текстовые окна при помощи свойства Value. Ответ выводится в метку (Label5) после того, как пользователь кликнет на командной кнопке «Пуск» (CommandButton1). Отметим использование функции Val(), которая переводит «строку» в числовое значение соответствующего типа и функцию Str(), которая преобразует десятичное число в строковую форму.

Запустите ваше приложение, выбрав команду RunØ Run Sub / UserForm или нажав функциональную клавишу F5. В текстовые окна введите исходные данные и нажмите командную кнопку «Пуск». Результат будет размещен в метке. Результаты представлены на рисунке 12.

 

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

Если поместить результат в текстовое окно (TextBox), а надпись «y=» в метку (Label), то форма будет выглядеть (рис. 13).

Рис. 13. Расположение элементов на форме во втором варианте программы

Программный код для этой формы

Private Sub CommandButton1_Click()

Dim A As Single

Dim B As Single

Dim C As Single

Dim X As Single

Dim Y As Single

A = Val(TxtA.Value)

B = Val(TxtB.Value)

C = Val(TxtC.Value)

X = Val(TxtX.Value)

Y = (X * Sqr(A + B) + Exp(-3 * A)) / (Sin(X ^ 2) + Cos((C + A) ^ 2) ^ 2) _

+ Atn(Abs(X - B)) / (3 * B * (A - B)) + Log(Abs(1 - A ^ (B - C)))

TxtY.Value = Y

End Sub

 

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

 

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








Дата добавления: 2014-12-24; просмотров: 1271;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.011 сек.