Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Визуальное программирование. Методический сборник

.pdf
Скачиваний:
0
Добавлен:
09.08.2026
Размер:
414 Кб
Скачать

Добавьте компонент для выбора цвета линий внизу формы или нарисуйте квадратики разного цвета. Добавьте список для выборатолщинылиний. Информациявспискедолжнаотображатьсявдве колонки. Поместите на форму две кнопки «копировать» и «стереть».

При нажатии и удержании левой кнопки мыши в первом компоненте, предназначенном для рисования, должна рисоваться кривая, следующая за перемещающимся курсором мыши. Цвет

итолщина кривой должны соответствовать ранее выбранным цвету

итолщине. При отпускании левой кнопки мыши рисование должно прекращаться, однако рисунок должен сохраняться.

При нажатии кнопки «копировать» часть рисунка из левого компонента, предназначенного для рисования, должна копироваться в правый компонент, предназначенный для отображения графической информации.

При нажатии кнопки «стереть» область рисования должна очищаться.

Замечание: для рисования линии можно использовать события MouseDown (начинаем рисовать кривую, задаем толщину и цвет линии), MouseMove (проводим линию от предыдущей текущей точки к новому месту положения курсора мыши) и MouseUp (заканчиваем рисование линии).

Сохраните проект и проверьте работу программы.

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

Задание 8. Графики. Компоненты «счетчик» и «ползунок»

(«шкала»).

Проект № 1

Создайте новый проект. Поместите на форму текстовое поле. Слева от поля поместите надпись «период». На панели компонентов найдите компонент «счетчик» и поместите на форму справа от поля.

Свяжите счетчик с текстовым полем. Задайте диапазон изменения значений счетчика от 2 до 8 с шагом 2 и начальное значе-

21

ние установите равным 2 – вначале на графике должны отображаться два периода функции sin(x).

Вдоль правой границы формы разместите вертикально компонент «ползунок». Задайте диапазон изменения значений от 0 до 10

иначальное значение установите равным 5.

ВобработчикесобытияPaint формыпоместитеинструкции, изображающие на форме график синуса в диапазоне (–2π, 2π) и квадратики различных цветов. Амплитуда графика должна задаваться позицией ползунка и равняться одной десятой от положения ползунка. Таким образом, при изменении позиции ползунка в диапазоне от 0 до 10 амплитуда графика будет меняться от 0 до 1. Количество периодов графика должно меняться с помощью счетчика.

Предусмотрите перерисовку графика при изменении размера формы.

Свяжите выбор цвета графика с щелчком по нужному ква-

дратику.

Сохраните проект и проверьте работу программы.

Замечание: при вертикальном расположении шкалы мини-

мальное значение соответствует верхнему положению ползунка, а максимальное – нижнему. Попытайтесь при построении графика учесть эту особенность и реализовать код так, чтобы при перемещении ползунка вверх амплитуда графика возрастала, а при движении вниз – убывала.

22

Задание 9. Диаграммы. Управление формами. «Вкладки» и страницы свойств.

Проект № 1

Создайте новый проект. Реализуйте программный код, отображающий на форме диаграмму. Тип диаграммы (круговая или гистограмма) должен задаваться с помощью группы переключателей (радиокнопок). Данные для гистограмм задайте самостоятельно или воспользуйтесь данными с приведенного рисунка.

Сохраните проект и проверьте работу программы.

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

Поместите на вторую форму связанный с полем компонент «счетчик» для изменения периода и компонент «ползунок» для задания амплитуды графиков.

В обработчике события Paint второй формы поместите инструкции, изображающие на форме графики синуса и косинуса. Амплитуда графика должна задаваться позицией ползунка. Количество периодов графика должно меняться с помощью счетчика.

23

Замечание: код, нужный для построения графиков функций и управления амплитудой и периодом графиков, рассматривался в предыдущем задании.

Сохраните проект и проверьте работу программы.

Проект № 2

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

Сохраните проект и проверьте работу программы.

Задание 10. Разработка приложений для работы с локальными базами данных. Компоненты визуализации и управления данными. Созданиесвязеймеждукомпонентамиибазойданных.

Проект № 1

− Создайте таблицу «Штат» в СУБД Access со следующими полями: «номер» (тип счетчик), «оклад» (числовой тип), «ФИО» и «должность». Введите в таблицу несколько записей.

24

− Создайте новый проект. Поместите на форму компоненты, нужные для подключения с базой данных. Установите связь между созданной базой данных и приложением. Проверьте подключение.

Разместите на форме компоненты, предназначенные для визуализации данных, хранящихся в таблице «Штат». Свяжите эти компоненты с соответствующими полями таблицы.

Добавьте кнопки для обеспечения навигации по записям таблицы. Кнопка«|<<» должнаобеспечивать переходкпервой, акнопка«>>|» – кпоследнейзаписитаблицы. Кнопки«<<» и«>>» предназначены для перехода к соседним записям. Между кнопками поместите поле (или метку) для вывода номера текущей записи. Напишите необходимые инструкции.

25

Сохраните проект и проверьте работу программы.

Добавьте на форму кнопки «Удалить», «Сортировать» и «Добавить». Создайте инструкции, обеспечивающие удаление текущей записи, сортировки записей по полю «ФИО» и создание новой записи.

Сохраните проект и проверьте работу программы.

Поместите в рамке поле для ввода искомой должности и две кнопки, реализующие фильтрацию записей базы данных и отмену фильтра.

Сохраните проект и проверьте работу программы.

Задание 11. Разработка приложений для работы с локальными базами данных. Компоненты, предназначенные для навигации и представления данных в табличном виде. Отображение текущего состояния. Компоненты «таймер» и «строка состояния».

Проект № 1

− Создайте новый проект. Поместите на форму компоненты, нужные для подключения к базе данных. Установите связь между созданной базой данных и приложением. Проверьте подключение.

− Поместите на форму компоненты, обеспечивающие табличное представление данных и навигацию. Настройте компоненты и свяжите их с таблицей, созданной на предыдущем занятии.

26

Сохраните проект и проверьте работу программы.

Расположите внизу формы компонент «строка состояния». Создайте четыре панели в строке состояния. В первой панели должно отображаться текущее состояние приложения. Во второй панели – общее количество записей в базе данных, в третьей – номер выбранной записи, а в четвертой должно выводиться текущее время.

Добавьте на форму невизуальный компонент «таймер». Таймер должен срабатывать через каждую десятую долю секунды.

Вфункции, связанной с соответствующим событием, поместите инструкции, осуществляющие опрос текущего состояния системы и вывод информации в строке состояния.

Сохраните проект и проверьте работу программы.

Добавьте в проект вторую форму (не забудьте сохранить новые файлы). Вторая форма должна вызываться из основного окна любым известным вам способом – с помощью команды меню, нажатием на кнопку или двойным щелчком мыши. Добавьте в функ- цию-обработчик вызова второй формы инструкции, заполняющие диаграмму суммарными данными для каждой должности из вашей базы данных.

В обработчике события Paint второй формы поместите инструкции, обеспечивающие построение соответствующей круговой диаграммы.

Сохраните проект и проверьте работу программы.

27

Задание 12. Запросы SQL. Операции с таблицами. Операции с записями. Запросы с параметром. Компонент «список с маркерами».

Проект № 1

Создайте новый проект. Поместите на форму компоненты, нужные для подключения к базе данных. Установите связь между созданной базой данных и приложением. Проверьте подключение.

Поместите на форму компоненты, обеспечивающие табличное представление данных и навигацию. Настройте компоненты и свяжите их с таблицей, созданной на предыдущих занятиях.

Сохраните проект и проверьте работу программы.

Добавьте на форму компонент, обеспечивающий выполнение запросов SQL. Настройте компонент и свяжите его с базой данных, созданной на предыдущих занятиях. Поместите в рамке кнопку «запрос» и компонент «Список с маркерами», но не заполняйте список – он должен формироваться автоматически.

В событие, связанное с активацией формы, поместите инструкции, считывающие в список названия атрибутов из подключенной таблицы базы данных и помечающие все строки маркерами. При нажатии на кнопку должен формироваться запрос SQL, в ре-

28

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

Сохраните проект и проверьте работу программы.

Добавьте кнопку «оклад свыше» и поле для ввода порогового значения оклада. В событие, связанное с нажатием на эту кнопку, поместите инструкции, осуществляющие запрос на выборку, – должны остаться только записи с окладом выше указанного.

Сохраните проект и проверьте работу программы.

Добавьте на форму второй компонент, обеспечивающий выполнение запросов SQL. Настройте компонент и свяжите его с базой данных, созданной на предыдущих занятиях. Задайте в качестве образца запроса SQL запрос с параметром. Поместите на форму поле для ввода искомой должности и кнопку «должность». При нажатии этой кнопки в таблице на форме должны остаться только сотрудники, занимающие указанную в поле должность.

Сохраните проект и проверьте работу программы.

Попытайтесьдобавитьвозможностьпостроениягистограммы по последнему запросу.

Задание 13. Визуализация длительных процессов. Компо- ненты-индикаторы. Курсор мыши. Измерение временных интервалов.

Проект № 1

− Создайте новый проект. Поместите на форму компоненты кнопкусрисунком. Выберитерисунокиположениетекстанакнопке.

29

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

Добавьте компонент «таймер». При нажатии на кнопку таймер должен включаться, и в течение 10 секунд индикаторы должны «отображать ход выполнения процесса» – через секунду 10%, через три секунды – 30% и т.д. При этом курсор мыши должен измениться на «песочные часы».

По окончании «работы» должен восстанавливаться первоначальный курсор мыши и отключаться таймер.

Сохраните проект и проверьте работу программы.

Проект № 2

Создайте новый проект. Окно формы должно появляться в центре экрана иоставаться всегда поверх всех имеющихся на экране окон. Поместите на форму компонент кнопку с рисунком. Выберите рисунок и положение текста на кнопке.

Возьмите надпись (метку) и поместите ее ЗА кнопкой. Поместите под кнопкой индикатор Progress Bar.

Добавьте компонент «таймер». При нажатии на кнопку таймер должен включаться, и в течение 10 секунд индикатор должен «отображать ход выполнения процесса». При этом кнопка должна стать невидимой, а в поле надписи должен появиться текст в две строчки «Форматируется диск С. подождите немного...» Шрифт текста – красный, размер – 16. Все кнопки, расположенные в полосе заголовка окна, должны исчезнуть.

По окончании «работы», через 10 секунд, должен отключаться таймер, должны восстанавливаться кнопки в полосе заголовка окна и текст надписи должен меняться на «Форматирование дис-

30