Разработка программы расписания поездов на основе библиотеки MFC и объектно ориентированного подхода | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 4 мая, печатный экземпляр отправим 8 мая.

Опубликовать статью в журнале

Автор:

Рубрика: Информационные технологии

Опубликовано в Молодой учёный №4 (399) январь 2022 г.

Дата публикации: 25.01.2022

Статья просмотрена: 150 раз

Библиографическое описание:

Лобашевская, В. А. Разработка программы расписания поездов на основе библиотеки MFC и объектно ориентированного подхода / В. А. Лобашевская. — Текст : непосредственный // Молодой ученый. — 2022. — № 4 (399). — С. 39-41. — URL: https://moluch.ru/archive/399/88183/ (дата обращения: 25.04.2024).



Статья посвящена описанию процесса проектирования и разработки программы, которая должна отображать расписание поездов в виде строк с данными, а также оставшееся время до отбытия, обновляющееся в реальном времени. на основе библиотеки MFC в Visual C++ Studio.

Ключевые слова: visual c++, MFC, наследование классов.

Введение

Программный продукт должен выводить на экран пять строк с информацией о рейсе. Программа строится на основе мастера MFC AppWizard с однодокументным форматом окна.

Описание логической структуры

В среде Visual C++ можно строить различные типы проектов. Такие проекты после их создания можно компилировать и запускать на исполнение. Фирма Microsoft разработала специальный инструментарий, облегчающий и ускоряющий создание проектов в среде Visual C++. Для разработки курсового проекта понадобится мастер MFC AppWizard (exe) — при помощи которого можно создать проект Windows-приложения, которое имеет однодокументный, многодокументный или диалоговый интерфейс. Для данного проекта потребуется однодокументный интерфейс.

Программа состоит из следующих модулей, представленных на рисунке 1.

Программные модули проекта

Рис. 1. Программные модули проекта

При создании приложений автоматически создается 4 основных класса:

— CMFCTrainApp — класс, производный от CWinApp;

— CMainFrame — класс, производный от CFrameView;

— CMFCTrainAppDoc — класс, производный от CDocument;

— CMFCTrainAppView — класс, производный от CView

Главный модуль это MFCTrainApp classes который содержит следующие модули:

  1. CMFCTrainAppApp данный класс получает все сообщения о событиях и затем направляет их классам CFrameView и CView.
  2. CMFCTrainAppDoc содержит структуры, позволяющие хранить и манипулировать вводимыми в документ данными.
  3. CMFCTrainAppView отвечает за графическое представление документа пользователю. Данный класс передает введенную информацию классу CDocument, а также получает от него информацию для графического вывода. Этот класс содержит несколько основных модулей:

— конструктор класса CMFCTrainAppView() — отвечает за выделение памяти;

— onDraw(CDC* pDC) — отвечает за вывод необходимых данных на экран;

  1. MFCTrainAppTime — пользовательский класс, отвечающий за хранение времени и получения текущего локального времени с помощью метода setTime();
  2. MFCTrainAppTrainSchedule — класс, наследованный от класса MFCTrainAppTime. Содержит данные расписания.
  3. CMainFrame класс окна, образующий его рамку. Он содержит меню, панель инструментов, полосы прокрутки, а также многие другие видимые объекты, относящиеся к рамке окна. Данный класс определяет какая часть документа является видимой в каждый момент времени.

Основная схема на рисунке 2.

Общая схема

Рис. 2. Общая схема

Схема OnDraw(CDC* pDC) на рисунке 3.

Блок-схема OnDraw(CDC* pDC)

Рис. 3. Блок-схема OnDraw(CDC* pDC)

Метод setTime класса Time запрашивает системное время и записывает в переменные класса Time.

Блок-схема метода setTime() класса Time на рисунке 4.

Блок-схема кнопки метода setTime() класса Time

Рис. 4. Блок-схема кнопки метода setTime() класса Time

Метод departureTime() класса MFCTrainAppTrainSchedule на рисунке 5 отвечает за вывод оставшегося времени.

Блок-схема метода departureTime() класса MFCTrainAppTrainSchedule

Рис. 5. Блок-схема метода departureTime() класса MFCTrainAppTrainSchedule

Результаты работы программы

Программа вызывается запуском исполняемого файла, его размер 296 килобайта. Программа занимает 1,5 мегабайта оперативной памяти.

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

В данном программном продукте выходные данные выступают в качестве строки типа CString, полученной во время выполнения программы.

В результате запуска программы отобразится расписание поездов в виде пяти строк с информацией по каждому рейсу и оставшееся до отправления время. Работа программы на рисунке 6.

Работа программы

Рис. 6. Работа программы

Заключение

В результате работы спроектирована и разработана программа, которая отображает расписание поездов в виде строк с данными, а также оставшееся время до отбытия на основе библиотеки MFC в Visual C++ Studio.

Литература:

  1. Марапулец Ю. В. Язык С++. Основы программирования. П.-Камчатский: КамГУ им. Витуса Беринга, 2011. — 158 с.
  2. Страуструп Б. Язык программирования С++. 3-е изд. — М.: Бином, 2011
  3. Стивен Прата. Язык программирования С: Лекции и упражнения: Пер. с англ./ Стивен Прата — К.: ДиаСофт, 2000. — 432 с.
Основные термины (генерируются автоматически): MFC, CDC, класс, оставшееся время, расписание поездов, блок-схема метода, вид строк, основа библиотеки, программный продукт, работа программы.


Похожие статьи

Разработка программного кода на основе библиотеки MFC...

Библиографическое описание: Лобашевская, В. А. Разработка программного кода на основе библиотеки MFC и объектно ориентированного подхода / В. А

 Статья посвящена описанию процесса проектирования и разработки программы реализации рисования прямоугольника и...

Разработка автоматизированной системы составления...

Это может быть, как свой личный график работ, запланированных на какой-то промежуток времени

В данной статье рассмотрена задача составления оптимального расписания для школьных

Каждой ячейке также ставится в соответствие кабинет. Рис. 1. Схема составления...

Сравнительный анализ мультимедийных библиотек для...

Создание игр всегда связано с работой с графикой, а для облегчения этой трудоемкой задачи существует множество графических библиотек.

Рис. 1. Схема типичного игрового проекта на SDL.

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

Использование библиотеки SFML для визуализации результатов...

Рис. 3. Упрощенная блок-схема программы. Рис. 4. Пример работы программы. Модель демонстрирует нам, что орбиты обращения планет вокруг светил имеют форму эллипса, и более того, сами орбиты обладают прецессией (т. е. они обращаются вокруг центра масс в фокусе с...

Разработка приложения для организации учебной деятельности...

Для работы с сервисами Вконтакте используется фреймворк SwiftyVK. Для хранения информации о расписании, группах пользователей и учебной информации используется онлайн-база данных Firebase. При запуске приложения выводится экран с расписанием группы...

Проектирование UML-диаграмм для системы учета рабочего...

Одним из наиболее эффективных методов учета рабочего времени сотрудников является использование терминалов учета

В связи с этим, в данный момент для получения данных об отработанном времени и для расчета

Рассмотрим подробней каждый вид пользователей

Автоматизированные системы составления расписания

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

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

Сопровождение систем автоматизации программного обеспечения

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

Алгоритмы помехоустойчивого кодирования и их аппаратная...

Рис. 1. Блок-схема работы части управляющей программы. У CPLD он состоит из элементарных вентилей, а FPGA

У CPLD он состоит из элементарных вентилей, а FPGA состоит из компактных логических ячеек на основе таблиц истинности (LUT) благодаря чему...

Похожие статьи

Разработка программного кода на основе библиотеки MFC...

Библиографическое описание: Лобашевская, В. А. Разработка программного кода на основе библиотеки MFC и объектно ориентированного подхода / В. А

 Статья посвящена описанию процесса проектирования и разработки программы реализации рисования прямоугольника и...

Разработка автоматизированной системы составления...

Это может быть, как свой личный график работ, запланированных на какой-то промежуток времени

В данной статье рассмотрена задача составления оптимального расписания для школьных

Каждой ячейке также ставится в соответствие кабинет. Рис. 1. Схема составления...

Сравнительный анализ мультимедийных библиотек для...

Создание игр всегда связано с работой с графикой, а для облегчения этой трудоемкой задачи существует множество графических библиотек.

Рис. 1. Схема типичного игрового проекта на SDL.

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

Использование библиотеки SFML для визуализации результатов...

Рис. 3. Упрощенная блок-схема программы. Рис. 4. Пример работы программы. Модель демонстрирует нам, что орбиты обращения планет вокруг светил имеют форму эллипса, и более того, сами орбиты обладают прецессией (т. е. они обращаются вокруг центра масс в фокусе с...

Разработка приложения для организации учебной деятельности...

Для работы с сервисами Вконтакте используется фреймворк SwiftyVK. Для хранения информации о расписании, группах пользователей и учебной информации используется онлайн-база данных Firebase. При запуске приложения выводится экран с расписанием группы...

Проектирование UML-диаграмм для системы учета рабочего...

Одним из наиболее эффективных методов учета рабочего времени сотрудников является использование терминалов учета

В связи с этим, в данный момент для получения данных об отработанном времени и для расчета

Рассмотрим подробней каждый вид пользователей

Автоматизированные системы составления расписания

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

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

Сопровождение систем автоматизации программного обеспечения

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

Алгоритмы помехоустойчивого кодирования и их аппаратная...

Рис. 1. Блок-схема работы части управляющей программы. У CPLD он состоит из элементарных вентилей, а FPGA

У CPLD он состоит из элементарных вентилей, а FPGA состоит из компактных логических ячеек на основе таблиц истинности (LUT) благодаря чему...

Задать вопрос