Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пенко Методпособие к лаб по курсу ПО ЭВМ 2 курс...docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
145.41 Кб
Скачать

Продемонстрированные в приложении особенности

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

Список вопросов, рассматриваемых в модуле 2.

Структура оконного приложения

Особенности оконных приложений. Событийная модель выполнения. Анализ сгенерированного текста простого оконного приложения. Элементы управления, их свойства и методы. Обработчики событий. Класс Form.

Основные элементы управления, свойства и события.

Элементы Label, TextBox, Button: свойства и события.

Создание оконного приложения без использование визуального дизайнера.

Причины необходимости «ручного» подхода. Динамическое управление множеством элементов управления. Создание собственных элементов управления.

Использование классов Control и Form.

Свойства, методы и события классов Control и Form. Создание диалоговых окон и многооконных приложений. Обработка событий, связанных с мышью и клавиатурой.

Стандартные диалоговые окна.

Стандартные диалоговые окна OpenFileDialog, SaveFileDialog и FolderBrowserDialog.

Сериализация.

Сущность процесса сериализации. Форматы сериализации. Техника бинарной и XML-сериализации. Особенности и отличия способов сериализации. Сохранение сложных объектных графов.

Дополнительные элементы управления в оконных приложениях.

Элементы управления CheckBox, RadioButton, GroupBox, Panel, ListBox, ComboBox, NumericUpDown, Timer: свойства и события.

Функциональный тип.

Функциональный тип. Делегаты. Наследование и полиморфизм - альтернатива обратному вызову. Реализация делегатов как свойств классов. Операции над делегатами. Класс Delegate. Событийно-ориентированное программирование. Проблемы с обработчиками событий.

Описание модельных примеров модуля 2. Пример Mod2Ex1 Постановка

Оконное приложение позволяет вычислить стоимость туристической поездки. Окно приложения выглядит следующим образом:

Стоимость поездки показывается в нижней части окна в пустом (пока) поле. Стоимость определяется по формуле:

(стоимость_суток_проживания*количество_суток_проживания+

стоимость_дополнительных_услуг)*

сезонный_коэффициент*коэффициент_страны

Стоимость суток проживания зависит от количества мест в номере и определяется в следующей таблице:

1-местный - 500

2-местный - 400

3-местный - 300

4-местный - 200

Сезонный коэффициент определяется в следующей таблице:

Зима - 1

Весна - 0.8

Лето - 1

Осень - 0.7

Коэффициент страны:

Северная и южная Америка - 1

Европа - 0.7

Азия - 0.8

Стоимость дополнительных услуг:

Завтрак - 50

Wi-Fi - 5

Кондиционер - 10

Стоимость обновляется при любом корректном действии пользователя с элементами на экране.

Продемонстрированные в приложении особенности

Используются популярные элементы управления - кнопки, метки, поля ввода, списки выбора, радио-кнопки, чек-боксы.

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

Используется свойство Tag.

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

Пример Mod2Ex2

Постановка задачи

Реализовать оконное приложение, моделирующее игру в крестики-нолики.

Продемонстрированные в приложении особенности

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

Пример Mod2Ex3

Постановка задачи

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

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

Объектная модель состоит из двух классов. Класс Book предоставляет основные возможности отдельной книги, класс Library - основные возможности управления библиотекой. Оба класса представлены в листинге к примеру и предоставляются перед выполнением лабораторной работы.

Если в диалоговом окне выбора файла выбран файл, то объектная модель заполняется содержимым из файла и в списке отображаются книги библиотеки.

Если файл не выбран - создается и отображается пустая библиотека.

Далее имеются следующие возможности:

1. Добавление новой книги в библиотеку.

2. Добавление экземпляра уже существующей книги.

3. Удаление экземпляра уже существующей книги.

4. Удаление существующей книги из библиотеки.