Файл: Высшего образования российский государственный социальный университет.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 22.11.2023
Просмотров: 49
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
| ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ «РОССИЙСКИЙ ГОСУДАРСТВЕННЫЙ СОЦИАЛЬНЫЙ УНИВЕРСИТЕТ» |
Оглавление
Тема 1 Пользовательские формы и элементы управления 1
Порядок выполнения 1
В отчет поместить 1
Как размещать свои ФИО на скриншотах 2
Лабораторная работа 2
Материалы по теме 2
Задание 1 (для всех) 8
Задание 2 (для всех) 9
Задание 3 (для всех) 9
Задание 4 (для всех) 11
Задание 5 (для всех) 13
Задание 6 (по вариантам) Разработать проект по сценарию 16
Дополнительные материалы по разделу (не обязательные) 21
Важно!!! 28
Тема 1
Пользовательские формы и элементы управления
Задания выполняются в форме лабораторной работы.
Порядок выполнения
Работу следует выполнять в Excel.
1. Прочитать материалы по теме, выполняя все указанные действия.
2. Выполнить общие задания 1-5 и индивидуальное задание 6 по номеру своего варианта, не забывая при этом делать скриншоты для отчета и формируя отчет
3. Подготовить отчет.
В отчет поместить
Скриншоты со своими пользовательских форм.
Листинги макросов.
Свои пояснения.
ВАЖНО!!! На скриншотах должны быть ФИО студента. Фотошоп распознаваем визуально.
Как размещать свои ФИО на скриншотах
Лабораторная работа
Задание: познакомиться пользовательскими формами и элементами управления.
Материалы по теме
Выполнять работу настоятельно рекомендуется в режиме «три окна», т.е. одновременно должны быть открыты, но не перекрывать друг друга окно Excel, окно редактора VisualBasic и окно Word с заданиями к лабораторной работе:
Пользовательские формы и элементы управления служат для создания удобного интерфейса приложений.
Пользовательская форма
Чтобы создать пользовательскую форму, надо в окне редактора VisualBasic выбрать Insert– UserForm.
Появится макет пользовательской формы.
В окне Properties отображены свойства этой формы.
В окне Properties найти и изменить такие свойства формы, как имя, заголовок, ширина и высота, цвет. Заметим, что размеры пользовательской формы можно изменить, потянув мышью за белые прямоугольники на макете этой формы.
Запуск формы. Первый способ – кликнуть на зеленый треугольник (так мы запускали и макросы). Второй способ – с помощью метода Show. (Синтаксис: <Объект>.<Метод>). Добавьте программный модуль и введите код ЗапускФормы.
Sub ЗапускФормы ()
UserForm1.Show
End Sub
Выполните этот код пошагово. Для того, чтобы закрыть форму, кликните на крестик в правом верхнем углу формы.
Изменить свойства формы (имя, заголовок, ширина и высота, цвет и т.д.) можно, записав в коде оператора вида:
<ИмяФормы>.<Свойство> = <НовоеЗначениеСвойства>
Добавьте в код ЗапускФормы перед оператором UserForm1.Show оператор MsgBox (UserForm1.Height) и оператор UserForm1.Height = 600. Выполните код пошагово.
События и обработка событий.
Событиями являются: щелчок мыши, двойной щелчок мыши, движение мыши, инициализация формы и т.д. и т.п. Как правило, «самое популярное» событие – щелчок мыши. Кликните правой кнопкой мыши на макете формы и выберете в контекстном меню Viev Code.
Вы перешли в окно UserForm1 (Code). Полный список событий можно просмотреть в раскрывающемся списке в правом верхнем углу.
Запишем обработку события UserForm_Click (щелчок мыши на форме). Добавим в код
Private Sub UserForm_Click()
End Sub
оператор UserForm1.Hide (скрыть форму). Получится код
Private Sub UserForm_Click()
UserForm1.Hide
End Sub
Сохраните проект и выполните пошагово код ЗапускФормы.
Задание 1 (для всех)
Разработайте макрос «ПротоколСобытий», который при наступлении какого-либо события выводит сообщение «Наступило событие <НазваниеСобытия>» и помещает то же самое сообщение в первый столбец первого рабочего листа. Указание. Номер очередной строки – переменную k – следует описать в программный модуль до начала макроса, чтобы она была «видима» из всех кодов (Оператор Publiс k).
Порядок выполнения не приводится
Итак, состоялось первое знакомство с пользовательскими формами, свойствами, методами и событиями, а также с обработкой событий. Мы узнали, что для пользовательской формы заранее устанавливают свойства, методы, которые применяют к пользовательской форме, Show и Hide, событий же пользовательской форме обычно не назначают (пользователю вряд ли придет в голову кликать по форме), форма служит обычно местом размещения элементов управления.
Элемент управления Label (Надпись) служит для выведения сообщений пользователю. Этому элементу управления обычно, как и пользовательской форме, никаких событий не назначают. Элементу управления CommandBotton (Кнопка) обычно назначают событие Click (щелчок мыши), так как это интуитивно понятно пользователю. Свойства элементов управления Label и CommandBotton обычно устанавливают заранее и в дальнейшем не меняют. Тем не менее, при желании элементам управления Label и CommandBotton можно назначать и другие события, менять их свойства.
Задание 2 (для всех)
Создать форму. На форме разместить надпись Label1 «Вы хотите получить зачет автоматом?» и две кнопки: кнопку CommandBotton1 с надписью «Да» и кнопку CommandBotton2 с надписью «Нет». Назначить кнопке CommandBotton1 событие MouseMove, по которому координаты кнопки CommandBotton1 меняются случайным образом. Назначить кнопке CommandBotton2 событие Click, по которому надпись Label1 меняет сообщение на «Спасибо за участие в опросе».
Порядок выполнения не приводится
Знакомство с элементом управления TextBox (Поле для ввода), событием Change (Изменение), приемом коррекции данных, введенных с помощью TextBox, с элементами управления OptionButton (Радиокнопка) и CheckBox (Флажок).
Задание 3 (для всех)
Создать приложение, которое организует ввод целого числа в диапазоне от 1 до 10.
Порядок выполнения. Создадим форму UserForm1 (см. рис.)
В основном модуле создадим макрос «Proba», в котором поместим оператор UserForm1.Show (Показать форму UserForm1).
Полю для ввода (TextBox1) назначим событие Change (Изменить)
Private Sub TextBox1_Change()
k = TextBox1.Value
UserForm1.Hide
Cells(1, 1) = k
End Sub
При наступлении события Change (Изменить), переменной k будет присвоено значение – содержимое поля.
Выполним макрос «Proba» пошагово (обратите внимание – работаем в режиме «три окна»). Как только мы вводим один символ, форма скрывается. Это не всегда удобно, ведь пользователь мог ошибочно нажать на клавиатуре не ту клавишу, а исправить ошибку при этом невозможно.
Удалим обработчик события TextBox1_Change (Изменение Текстового поля). Назначим теперь командной кнопке с надписью «Ввод завершен» событие Click (Щелчок мыши).
Private Sub CommandButton1_Click()
k = TextBox1.Value
Cells(1, 1) = k
UserForm1.Hide
End Sub
Выполним теперь макрос «Proba» пошагово. Недостаток устранен, но нет гарантии, что пользователь введет именно целое число в диапазоне от 1 до 10. Значит, до оператора UserForm1.Hide необходимо проверить, является ли значение переменной k целым числом в диапазоне от 1 до 10 (продумать и разработать алгоритм проверки самостоятельно) и только в этом случае перейти к оператору UserForm1.Hide. Ели же введено нечто другое (текст либо дробное число и/или отрицательное число), необходимо организовать повторный ввод.
Создадим форму UserForm2 (см. рис.)
Если ввод был осуществлен неверно, то необходимо изменить надпись UserForm2.Label1, указав, какая именно ошибка была допущена при вводе и показать форму UserForm2. Командной кнопке с надписью «Повторить ввод» назначить событие Щелчок Мыши, по которому