|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Окно редактирования кода
Окно кода(рис. 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. Результаты выполнения программного кода Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.005 сек.) |