Разработка информационно-аналитической системы на тему "Конкурс поэтов" с использованием технологии объектно-ориентированного программирования - Программирование, компьютеры и кибернетика курсовая работа

Разработка информационно-аналитической системы на тему "Конкурс поэтов" с использованием технологии объектно-ориентированного программирования - Программирование, компьютеры и кибернетика курсовая работа




































Главная

Программирование, компьютеры и кибернетика
Разработка информационно-аналитической системы на тему "Конкурс поэтов" с использованием технологии объектно-ориентированного программирования

Анализ предметной области "Конкурс поэтов" на основе объектно-ориентированного подхода. Разработка оконного приложения и описание информационной модели предметной области. Описание разработанных процедур С++ и результатов тестирования приложения.


посмотреть текст работы


скачать работу можно здесь


полная информация о работе


весь список подобных работ


Нужна помощь с учёбой? Наши эксперты готовы помочь!
Нажимая на кнопку, вы соглашаетесь с
политикой обработки персональных данных

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Федеральное государственное бюджетное образовательное
учреждение высшего профессионального образования
ТАМБОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
Разработка информационно аналитической системы на тему "Конкурс поэтов" с использованием технологии объектно-ориентированного программирования
Автор курсового проекта Корчагин Р.А.
1 Тема Разработка информационно аналитической системы на тему "Конкурс поэтов" с использованием технологии объектно-ориентированного программирования утверждена приказом по Техническому колледжу ТГТУ
2 Срок представления проекта к защите "___" _____________201_г.
3 Исходные данные для проектирования:
Данные по курсовому проекту указаны в списке используемой литературы
4 Перечень разделов пояснительной записки
4.7 Список использованной литературы
5 Перечень графического материала: общий вид главного окна MFC приложения, фрагменты программного кода приложения
Руководитель курсового проекта: Мосягина Н.Г.
Задание принял к исполнению: Дорошина Е.Э.
Тема курсового проекта: "Разработка информационно аналитической системы на тему "Конкурс поэтов" с использованием технологии объектно-ориентированного программирования"
Объем курсового проекта 43 страницы, он содержит 1 таблицу, 1 рисунок, 2 плаката, 5 источников литературы, а также 2 приложения.
В пояснительной записке курсового проекта содержится данные из введения, четырех основных разделов, заключения, списка использованных источников и приложений.
Во введении обоснована актуальность выбранной темы, сформулированы цель и задачи написания курсового проекта, указан объект и предмет исследования.
В первой части поставлены задачи и цели на создание курсового проекта.
Во второй части произведен анализ предметной области "Конкурс поэтов" на основе объектно-ориентированного подхода.
Третья часть посвящена разработке оконного приложения, реализующего задачи курсового проектирования. Здесь разработана информационная модель предметной области, описана её структура, обоснован выбор средств проектирования приложения, приведено подробное описание разработанных процедур С++ для реализации данной модели.
В четвертом разделе представлены результаты тестирования приложения.
Заключение содержит основные выводы по результатам курсового проектирования. В нем отмечены основные моменты создания оконного приложения, рекомендации по его дальнейшему использованию.
3.1 Разработка информационной модели предметной области
3.2 Выбор и описание средств проектирования
Сегодня компьютеры все больше и больше внедряются в нашу жизнь. Для их эффективного использования необходимы удобные и практичные программы, которые создаются на языках программирования. Один из самых распространенных языков является С++.
С++ - был разработан в начале 80-х годов в Bell Laboratories. С++ - расширение С, т.е. он обеспечивает кардинальное преимущество языка С++, как над своим предшественником языком С так и над другими языками высокого уровня: поддержка объектно-ориентированного программирования, перегруженных операций и возможность разработки полномасштабных windows-приложений. Можно сказать, что язык С++ является одним из совершенных и сложных языков программирования на сегодняшний день.
С помощью языка С++ можно решать всевозможные задачи ставящиеся перед современным программистом: написание системных программ, разработка полноценных windows-приложений, объектное моделирование. Благодаря тому, что язык С++ первоначально разрабатывался как язык системного программирования, то он предоставляет программисту широкие возможности для работы с аппаратурой. Так как язык С++ подвергся полномасштабной обработки, то он обеспечивает пользователя широким набором средств для решения задач объектно-ориентированного программирования, благодаря этому язык С++ позволяет осуществить интеграцию принципов объектно-ориентированного программирования на аппаратный уровень. В связи с тем, что сегодня уровень сложности программного обеспечения очень высок, разработка приложений Windows с использованием только одного какого-либо языка (например, языка С) значительно затрудняется. Чтобы облегчить работу программиста, все современные компиляторы языка С++ содержат специальные библиотеки классов. Такие библиотеки включают в себя практически весь программный интерфейс Windows и позволяют пользоваться при программировании средствами более высокого уровня, чем обычные вызовы функций. За счет этого значительно упрощается разработка приложений, имеющих сложный интерфейс пользователя, облегчается поддержка технологии OLE и взаимодействие с базами данных. В этом курсовом проекте проиллюстрированы основные разделы программирования, изучаемые в курсе программирования на языке С++. Выполнение данного курсового проекта позволяет приобрести следующие практические умения и навыки:
3. Разработка и отладка программ с помощью языка С++;
4. Оформление программной документации.
Темой курсового проекта является: "Разработка информационно аналитической системы на тему "Конкурс поэтов" с использованием технологии объектно-ориентированного программирования". Данная программа будет незаменима организаторам подобных мероприятий.
Целью курсового проекта является разработка аналитической системы, в которой должны поддерживаться режимы учета зрителей и выступающих, их произведений, жанра, творческого багажа, порядка проведения. Система будет реализована на основе языка программирования C++ и библиотеки MFC. Для достижения намеченной цели необходимо будет решить следующие задачи:
1. произвести анализ предметной области;
2. разработать информационную модель предметной области
3. осуществить обоснованный выбор средств проектирования
В ходе выполнения проекта необходимо разработать оконное приложение, для реализации заданной предметной области (согласно варианту). При этом подлежат разработке следующие вопросы: анализ задания; разработка информационной модели предметной области; выбор средств проектирования приложения; разработка оконного приложения; оформление расчётно-пояснительной записки по результатам выполнения работы.
1. Произвести анализ предметной области "Конкурс поэтов" и разработать информационную модель рассматриваемой области. В системе должны поддерживаться режимы учета гостей, выступающих, творческого багажа поэтов, произведений и их жанров.
2. Осуществить обоснованный выбор средств реализации информационной модели
3. На основе разработанной модели осуществить проектирование информационно аналитической системы "Конкурс поэтов" с использованием технологии объектно-ориентированного программирования
4. Произвести тестирование разработанного продукта.
Залогом успешного решения задачи, поставленной перед разработчиком, является подробный и качественный анализ всех аспектов той пользовательской среды, в которой будет функционировать создаваемое программное приложение или информационная система.
В ходе анализа предметной области необходимо на основе знакомства с литературными источниками и общения с заказчиком выявить:
1. Чему посвящена предметная область, какие в ней есть термины и понятия, субъекты и объекты, способы взаимодействия субъектов, способы использования объектов, закономерности.
2. Что входит в словарь предметной области.
3. Каковы функциональные требования к разрабатываемой информационной системе. Основой их служат потребности заказчика, однако разработчик должен оценить возможность реализации требований, исходя из технических возможностей и имеющихся ресурсов.
Результат анализа предметной области оформляется в виде реферативного описания предметной области.
Предметная область должна представлять собой описание деятельности организаторов конкурса, необходима поддержка режимов учета зрителей и выступающих, их произведений, жанра, творческого багажа, порядка проведения. В соответствии с этим на главном окне приложения должны находиться поля для ввода фамилии, имени, отчества поэта или зрителя. Имеются переключатели для определения посетителя мероприятия. При использовании переключателя Зритель деактивируются окна учета произведения, жанра и очереди выступающего, если используется переключатель Участник, то эти окна активируются. Для учета произведений будет использоваться поле для ввода его названия. Должна быть реализована возможность выбора жанра произведения из комбинированного списка. Для просмотра творческого багажа поэтов будет использован также комбинированный список с фамилиями поэтов, при выборе которого в браузере будет открыта HTML-страничка с фамилией именем, отчеством, фотографией и опубликованными работами поэта.
Таким образом, в словарь предметной области будут входить следующие объекты: Фамилия поэта или зрителя, Имя посетителя, Отчество посетителя, Название произведения, жанр произведения, Очередь выступающего, Продолжительность гастролей, Количество голосов зрителей.
На поля ввода: Фамилия, Имя, Отчество должен быть установлен запрет на ввод чисел. А на поле Очередь должен быть установлен запрет на ввод текстовой информации, иначе программа выдаст окно с указанием ошибки. Так же необходимо предусмотреть возможность обновления полей ввода, обеспечить удобство пользовательского интерфейса.
оконный приложение информационный тестирование
3.1 Разработка информационной модели предметной области
Для решения поставленных задач необходимо разработать информационную модель предметной области. Выделенные нами объекты представим в виде переменных и классов, связи между ними будут реализовываться с помощью интерфейса оконного приложения. Переменные, планируемые к использованию описаны в таблице 1.
Таблица 1 -Переменные, планируемые к использованию
Окно приложения должно обеспечивать необходимые функции системы, связи между ее компонентами, его модель может выглядеть как на рисунке 1:
Главное окно программы разделено на 2 области. Первая область предусматривает занесение основных сведений об участниках конкурса или зрителях. Вторая область нужна просмотра творческого багажа поэтов.
Так для добавления фамилии, имени, отчества поэта или зрителя, очереди или произведения, с которым будет выступать участник, нужно ввести необходимые данные в соответствующие поля. Так как жанр это исторически сложившиеся группы литературных произведений, то они заранее известны, а значит есть возможность создания комбинированного списка для выбора основных видов жанра. Так же у постоянных участников конкурса накапливается творческих багаж. Им заводится уникальная HTML-страничка с фамилией, именем, отчеством, фотографией и работами поэта. Для того чтобы перейти на страничку поэта на главном окне программы используется комбинированный список с фамилиями. Так же присутствуют два переключателя. При выборе переключателя Зритель поля: Очередь, произведение и жанр становятся неактивными, так как выступать могут только участники конкурса.
При нажатии кнопки Запись данные введенные в поля ввода или выбранные в комбинированном списке будут занесены в текстовый файл, который будет являться базой данных для данной системы, являющийся базой данный для этой системы.
Нажав кнопку Следующий, главное окно обновляется, поля ввода и комбинированные списки примут начальные значения. Это позволит быстрее перейти к записи нового посетителя конкурса. При нажатии пользователем кнопки Завершить, программа заканчивает сеанс работы.
3.2 Выбор и описание средств проектирования
MFC является альтернативой системам визуального программирования, таким как Delphi или Visual Basic, предназначенной для опытных программистов. На сегодняшний день подавляющее большинство программ разрабатывается при помощи Microsoft Visual С++ и MFC. MFC - это стандарт программирования под Windows и "интернациональный язык общения". Такая ситуация объясняется многими причинами. В частности, только MFC позволяет создавать наиболее эффективные и устойчивые приложения, которые будут корректно вести себя не только в системе разработчика, но и в системах реальных пользователей. Также очень важно, что MFC поддерживает все современные технологии, реализованные в Windows, и при дополнении Windows почти сразу же дополняется и MFC.
MFC - это инструмент для программирования сложных приложений, от которых требуется высокая эффективность и надежность. MFC поощряет использование объектно-ориентированного программирования, что дает ощутимые преимущества при решении сложных (не с точки зрения только интерфейса пользователя) задач, по сравнению с компонентно-ориентированным подходом, применяемым в системах RAD (быстрой разработки приложений). Разрабатывая приложение в системе RAD, программист часто вообще не использует ООП, по крайней мере в явном виде, до тех пор, пока не соберется разработать собственный компонент. Это негативно сказывается на возможности последующего расширения возможностей. Тем не менее, не стоит воспринимать сказанное как критику систем RAD. Есть много классов приложений (например, базы данных), которые разумнее всего разрабатывать именно при помощи систем RAD, что и делают даже опытные Windows-программисты .
Библиотека MFC содержит большую иерархию классов, написанных на С++. На иерархии вершине находится класс СObject, который содержит различные функции, используемые во время выполнения программы и предназначенные, в частности, для предоставления информации о текущем типе во время выполнения, для диагностики, и для сериализации.
Если указатель или ссылка ссылается на объект, производный от класса CObject, то в этом случае предусмотрен механизм определения реального типа объекта с помощью макроса RUNTIME_CLASS(). Хотя в С++ имеется механизм RTTI, механизм, реализованный в MFC, намного более эффективен по производительности.
Каждый класс, производный от CObject, может по запросу проверить свое внутреннее состояние и выдать диагностическую информацию. Это интенсивно используется в MFC при отладке.
Сериализация - это механизм, позволяющий преобразовать текущее состояние объекта в последовательный поток байт, который обычно затем записывается на диск, и восстановить состояние объекта из последовательного потока, обычно при чтении с диска. Это позволяет сохранять текущее состояние приложения на диске, и восстанавливать его при последующем запуске.
Некоторые классы порождаются непосредственно от CObject. Наиболее широко используемыми среди них являются CCmdTarget, CFile, CDC, CGDIObject и CMenu. Класс ССmdTarget предназначен для обработки сообщений. Класс СFile предназначен для работы с файлами. Класс CDC обеспечивает поддержку контекстов устройств. Об контекстах устройств мы будем говорить несколько позднее. В этот класс включены практически все функции графики GDI. CGDIObject является базовым классом для различных DGI-объектов, таких как перья, кисти, шрифты и другие. Класс СMenu предназначен для манипуляций с меню. От класса CCmdTarget порождается очень важный класс CWnd. Он является базовым для создания всех типов окон, включая масштабируемые ("обычные") и диалоговые, а также различные элементы управления. Наиболее широко используемым производным классом является CFrameWnd. Как Вы увидите в дальнейшем, в большинстве программ главное окно создается с помощью именно этого класса.
От класса CCmdTarget, через класс CWinThread, порождается, наверное, единственный из наиболее важных классов, обращение к которому в MFC-программах происходит напрямую: CWinApp. Это один из фундаментальных классов, поскольку предназначен для создания самого приложения. В каждой программе имеется один и только один объект этого класса. Как только он будет создан, приложение начнет выполняться.
Большинство функций, вызываемых в MFC-программе, являются членами одного из классов, определенных в библиотеке. Большинство функций API доступны через функции-члены MFC. Тем не менее, всегда можно обращаться к функциям API напрямую. Иногда это бывает необходимым, но все же в большинстве случаев удобнее использовать функции-члены MFC.
В библиотеке есть ряд глобальных функций. Все они начинаются с префикса Afx. (Когда MFC только разрабатывалась, то проект назывался AFX, Application Framework. После ряда существенных изменений AFX была переработана в MFC, но прежнее название сохранилось во многих идентификаторах библиотеки и в названиях файлов.) Например, очень часто используется функция AfxMessageBox(), отображающая заранее определенное окно сообщения. Но есть и член-функция MessageBox(). Таким образом, часто глобальные функции перекрываются функциями-членами.
Все MFC-программы включают заголовочный файл AFXWIN.H. В нем, а также в различных вспомогательных файлах, содержатся описания классов, структур, переменных и других объектов MFC. Он автоматически подключает большинство заголовочных файлов, относящихся к MFC, в том числе и WINDOWS.H, в котором определены все функции Windows API и другие объекты, которые используются при традиционном программировании на С и "чистом" API.
В простейшем случае программа, написанная с помощью MFC, содержит два класса, порождаемые от классов иерархии библиотеки: класс, предназначенный для создания приложения, и класс, предназначенный для создания окна. Другими словами, для создания минимальной программы необходимо породить один класс от CWinApp, а другой - от CFrameWnd. Эти два класса обязательны для любой программы .
Большинство функций, вызываемых в MFC-программе, являются членами одного из классов, определенных в библиотеке. Большинство функций API доступны через функции-члены MFC. Тем не менее, всегда можно обращаться к функциям API напрямую. Иногда это бывает необходимым, но все же в большинстве случаев удобнее использовать функции-члены MFC.
В библиотеке есть ряд глобальных функций. Все они начинаются с префикса Afx. Когда MFC только разрабатывалась, то проект назывался AFX, Application Framework. После ряда существенных изменений AFX была переработана в MFC, но прежнее название сохранилось во многих идентификаторах библиотеки и в названиях файлов. Например, очень часто используется функция AfxMessageBox(), отображающая заранее определенное окно сообщения. Но есть и член-функция MessageBox(). Таким образом, часто глобальные функции перекрываются функциями-членами.
Все MFC-программы включают заголовочный файл AFXWIN.H. В нем, а также в различных вспомогательных файлах, содержатся описания классов, структур, переменных и других объектов MFC. Он автоматически подключает большинство заголовочных файлов, относящихся к MFC, в том числе и WINDOWS.H, в котором определены все функции Windows API и другие объекты, которые используются при традиционном программировании на С и "чистом" API.
Windows взаимодействует с программой, посылая ей сообщения.
Все приложения Windows должны организовать так называемый цикл сообщений (обычно внутри функции WinMain()). В этом цикле каждое необработанное сообщение должно быть извлечено из очереди сообщений данного приложения и передано назад в Windows, которая затем вызывает функцию окна программы с данным сообщением в качестве аргумента. В традиционных Windows-программах необходимо самостоятельно создавать и активизировать такой цикл. При использовании MFC это также выполняется автоматически. Однако важно помнить, что цикл сообщений все же существует. Он является неотъемлемой частью любого приложения Windows.
Создание приложения с помощью Visual C++
О принципах устройства приложения рассказывалось выше. Теперь рассмотрим, как оно создается с помощью Visual C++. Сначала разберем одно важное понятие - проект. До сих пор приложение рассматривалось, как только как совокупность объектов базовых и производных классов. Но для обеспечения работы приложения требуется нечто большее - наряду с описанием классов необходимо описание ресурсов, связанных с приложением, нужна справочная система и т.п. Термин "проект" как раз и используется, когда имеется в виду такой общий взгляд на приложение.
В среде Visual C++ можно строить различные типы проектов. Такие проекты после их создания можно компилировать и запускать на исполнение. Фирма Microsoft разработала специальный инструментарий, облегчающий и ускоряющий создание проектов в среде Visual C++. Например, мастер MFC AppWizard (exe) позволяет создать проект, Windows-приложения которое имеет однодокументный, многодокументный или диалоговый интерфейс и использует библиотеку MFC .
Инструментальное средство - ClassWizard (мастер классов)
Создаваемый остов приложения составлен так, что в дальнейшей работе с проектом можно использовать другое инструментальное средство - ClassWizard (мастер классов), предназначенное для создания остовов новых производных классов. Еще одно основное назначение ClassWizard в том, что он создает остовы для переопределяемых методов. Он позволяет показать все сообщения, приходящие классу, и создать остов обработчика любого из этих сообщений. Это только две основные функции ClassWizard. Он не всесилен, но его возможности довольно велики.
Средство ClassWizard предоставляет широкий спектр услуг. Он позволяет не только добавлять к существующему классу новые методы и данные.
При помощи ClassWizard можно добавить новый класс, созданный на основе базовых классов. В качестве базового класса можно использовать классы, наследованные от класса CCmdTarget или класса CRecordset . Для наследования классов от других базовых классов использовать средства ClassWizard нельзя. Такие классы надо создавать вручную, непосредственно в текстовом редакторе.
Полученная заготовка класса полностью работоспособна. Ее можно дополнить по своему усмотрению новыми методами и данными. Эту работу можно выполнить вручную, но гораздо лучше и проще воспользоваться услугами ClassWizard. За счет использования ClassWizard процедура создания собственного класса значительно ускоряется и уменьшается вероятность совершить ошибку во время объявления методов.
Очень удобно использовать ClassWizard для включения в состав класса новых методов. Можно добавлять к классу методы, служащие для обработки сообщений Windows и команд от объектов, а также методы, переопределяющие виртуальные методы базовых классов.
ClassWizard не только позволяет добавить в класс новые методы, но и удалить их. ClassWizard самостоятельно удалит объявление метода из класса.
Включение в класс новых элементов данных
ClassWizard позволяет включать в класс не только новые методы, но и элементы данных, связанные с полями диалоговых панелей, форм просмотра и форм для просмотра записей баз данных и полей наборов записей. ClassWizard использует специальные процедуры, чтобы привязать созданные им элементы данных к класса к полям диалоговых панелей. Эти процедуры носят названия "обмен данными диалоговой панели" и "проверка данных диалоговой панели" (Dialog Data Exchange and Dialog Data Validation - DDX/DDV). Чтобы привязать поля из наборов записей к переменным, используется процедура обмена данными с полями записей (Record Field Exchange - RFX).
Значительно упрощают программисту работу с диалоговыми панелями. Они позволяют связать поля диалоговых панелей и переменные. Когда пользователь редактирует поля диалоговых панелей, процедуры DDV проверяют введенные значения и блокируют ввод запрещенных значений. Затем процедуры DDX автоматически копируют содержимое полей диалоговых панелей в привязанные к ним элементы данных класса. И наоборот, когда приложение изменяет элементы данных класса, привязанные к полям диалоговой панели, процедуры DDX могут сразу отобразить новые значения полей на экране компьютера. Процесс получения и обработки сообщений может показаться чересчур сложным, но, тем не менее, ему должны следовать все Windows-программы. К счастью, при использовании библиотеки MFC большинство частных деталей скрыты от программиста, хотя и продолжают неявно присутствовать в программе. В простейшем случае программа, написанная с помощью MFC, содержит два класса, порождаемые от классов иерархии библиотеки: класс, предназначенный для создания приложения, и класс, предназначенный для создания окна. Другими словами, для создания минимальной программы необходимо породить один класс от CWinApp, а другой - от CFrameWnd. Эти два класса обязательны для любой программы. Кроме создания вышеупомянутых классов, в программе также должна быть организована обработка всех сообщений, поступающих от Windows. В данном примере программа еще ничего полезного не делает, поэтому отвечать на каждое сообщение не нужно. MFC обработает все сообщения, которые нас не интересуют. Тем не менее, в этом примере присутствует карта откликов на сообщения, или просто карта сообщений. Позже мы рассмотрим ее подробнее. Как уже упоминалось, MFC - это базовый набор (библиотека) классов, написанных на языке С++ и предназначенных для упрощения и ускорения процесса программирования для Windows. Библиотека содержит многоуровневую иерархию классов, насчитывающую около 200 членов. Они дают возможность создавать Windows-приложения на базе объектно-ориентированного подхода. С точки зрения программиста, MFC представляет собой каркас, на основе которого можно писать программы для Windows.
Библиотека MFC разрабатывалась для упрощения задач, стоящих перед программистом. Как известно, традиционный метод программирования под Windows требует написания достаточно длинных и сложных программ, имеющих ряд специфических особенностей. В частности, для создания только каркаса программы таким методом понадобится около 75 строк кода. По мере же увеличения сложности программы ее код может достигать поистине невероятных размеров. Однако та же самая программа, написанная с использованием MFC, будет примерно в три раза меньше, поскольку большинство частных деталей скрыто от программиста.
Одним из основных преимуществ работы с MFC является возможность многократного использования одного и того же кода. Так как библиотека содержит много элементов, общих для всех Windows-приложений, нет необходимости каждый раз писать их заново. Вместо этого их можно просто наследовать (говоря языком объектно-ориентированного программирования). Кроме того, интерфейс, обеспечиваемый библиотекой, практически независим от конкретных деталей, его реализующих. Поэтому программы, написанные на основе MFC, могут быть легко адаптированы к новым версиям Windows (в отличие от большинства программ, написанных обычными методами).
Еще одним существенным преимуществом MFC является упрощение взаимодействия с прикладным программным интерфейсом (API) Windows. Любое приложение взаимодействует с Windows через API, которое содержит несколько сот функций. Внушительный размер API затрудняет попытки понять и изучить его целиком. Зачастую, даже сложно проследить, как отдельные части API связанны друг с другом! Но поскольку библиотека MFC объединяет (путем инкапсуляции) функции API в логически организованное множество классов, интерфейсом становится значительно легче управлять. Поскольку MFC представляет собой набор классов, написанных на языке С++, поэтому программы, написанные с использованием MFC, должны быть в то же время программами на С++. Для этого необходимо владеть соответствующими знаниями. Для начала необходимо уметь создавать собственные классы, понимать принципы наследования и уметь переопределять виртуальные функции. Хотя программы, использующие библиотеку MFC, обычно не содержат слишком специфических элементов из арсенала С++, для их написания тем не менее требуются солидные знания в данной области
В данной программе используются следующие переменные:
Для типов данных CString и int использовал категорию Value. А для типа данных CComboBox использовал категорию Control.
Основные элементы программного кода:
Определение списка жанров и списка поэтов:
BOOL CPoets_KonkursDlg::OnInitDialog()
В переменные Poets и Zhanr записывается строка с названием жанра или фамилии поэта с помощью функции AddString. Начальное значение списка установлено, с помощью функции SetCurSel, установлено только для комбинированного списка с названием переменной Poets, так как жанр должен быть пустым, для того чтобы не приписать его Зрителю в текстовый файл.
Для того, чтобы переключатели активировали и деактивировали поля ввода и комбинированный список создал обработчик событий для каждого и записал код:
void CPoets_KonkursDlg::OnBnClickedRadio1()
GetDlgItem(IDC_EDIT4)->EnableWindow(false);
GetDlgItem(IDC_EDIT5)->EnableWindow(false);
GetDlgItem(IDC_COMBO1)->EnableWindow(false);
void CPoets_KonkursDlg::OnBnClickedRadio2()
GetDlgItem(IDC_EDIT4)->EnableWindow(true);
GetDlgItem(IDC_EDIT5)->EnableWindow(true);
GetDlgItem(IDC_COMBO1)->EnableWindow(true);
Функция GetDlgItem используется для выбора какого-либо поля, списка, или любого элемента панели инструментов, по его идентификатору.
Функция EnableWindow включает или отключает мышь и ввод с клавиатуры в определенном окне или элементе управления. Когда ввод заблокирован, в скобках после функции стоит значение false, окно не принимает ввод типа щелчков мыши и нажатий клавиш. Когда ввод включен в скобках после функции стоит значение true, окно принимает всю вводимую информацию
void CPoets_KonkursDlg::OnBnClickedButton1()
{CWnd::MessageBox(_T("В поле <Фамилия> должно быть текстовое значение"),_T("Ошибка"),0);
{CWnd::MessageBox(_T("В поле <Имя> должно быть текстовое значение"),_T("Ошибка"),0);
if (Otchestvo>="0"&&Otchestvo<="9")
{CWnd::MessageBox(_T("В поле <Отчество> должно быть текстовое значение"),_T("Ошибка"),0);
char *locale=setlocale(LC_ALL,"RUS");
Zhanr.GetLBText(Zhanr.GetCurSel(),r);
datei.open("Konkurs_Poetov.txt",ios::app);
datei<Разработка информационно-аналитической системы на тему "Конкурс поэтов" с использованием технологии объектно-ориентированного программирования курсовая работа. Программирование, компьютеры и кибернетика.
Курсовая работа по теме Основные факторы вывоза капитала
Реферат по теме Технология производства плодово-ягодных вин
Дипломная работа по теме Формирование представлений о природном сообществе у учащихся начальных классов посредством сюжетно-ролевой игры
Реферат по теме Миссия организации как перспектива ее развития
Реферат: Українські землі у другій половині 17ст. Руїна. Скачать бесплатно и без регистрации
Реферат: Влияние языка на познавательные процессы
Реферат по теме Средний танк Т3485
Реферат На Тему Естественно-Научная Картина Мира
Диссертации По Технологии Сублимированных Продуктов
Типография Дипломная Работа
Разные Виды Сочинений
Реферат по теме Сравнительный анализ европейского и российского кодексов PR
Готовые Сочинения Слово О Полку Игореве
Реферат: Криптографическая защита функционирование ЛВС в реальном режиме времени
Курсовая Работа Хулиганство
Требования К Оформлению Кандидатской Диссертации
Сочинение: Значение символических снов Гринева в "Капитанской дочке" А. С. Пушкина и Раскольникова
Курсовая работа по теме Моисеево законодательство
Дипломная работа по теме Информационная система 'Рейтинг студента'
Билеты: Билеты по гражданскому праву. Скачать бесплатно и без регистрации
Аналіз кон’юнктури ринку інформаційних технологій Правобережного регіону України - Маркетинг, реклама и торговля курсовая работа
Диагностика системы управления внутренними коммуникациями ГУП РТ "ПО "Татрыбхоз" - Менеджмент и трудовые отношения контрольная работа
История открытия и приготовление кофе - Кулинария и продукты питания курсовая работа


Report Page