Разработка информационно аналитической системы на тему «Конкурс поэтов» с использованием технологии объектно-ориентированного программ
Автор работы: Пользователь скрыл имя, 18 Июня 2013 в 23:17, курсовая работа
Краткое описание
Данная программа будет незаменима организаторам подобных мероприятий. Целью курсового проекта является разработка аналитической системы, в которой должны поддерживаться режимы учета зрителей и выступающих, их произведений, жанра, творческого багажа, порядка проведения. Система будет реализована на основе языка программирования C++ и библиотеки MFC. Для достижения намеченной цели необходимо будет решить следующие задачи:
Содержание
Введение
1. Задание на разработку
2. Анализ предметной области
3. Разработка оконного приложения
3.1. Разработка информационной модели предметной области
3.2. Выбор и описание средств проектирования
3.3. Реализация приложения
4.Результаты тестирования
Заключение
Список использованных источников
Приложение А. Внешний вид основного окна приложения
Приложение Б. Программный код проекта
Вложенные файлы: 1 файл
курсовик.docx
— 157.33 Кб (Скачать файл)Разработанную систему можно использовать на конкурсных мероприятиях с участием поэтов, в котором нужен учет посетителей.
Список использованных источников
- Дейл, Н. Программирование на С++/Н. Дейл, Ч. Уимз, М. Хедингтон. –М.: ДМК Пресс, 2007. – 672 с.
- ИНТУИТ: Национальный открытый университет [Электронный ресурс]. – Режим доступа: URL: http://www.intuit.ru/studies/
courses/17/17/lecture/265 (дата обращения: 25.03.13). - Википедия: свободная энциклопедия [Электронный ресурс]. – Режим доступа: URL: http://ru.wikipedia.org (дата обращения: 5.04.13).
- Семакин, И.Г. Основы программирования: учебник для сред.проф. образования / И.Г. Семакин, А.П. Шестаков. –М.: Академия, 2008.– 374 с.
ПРИЛОЖЕНИЕ А
Общий вид главного окна приложения
Рисунок А – Общий вид главного окна приложения информационно аналитической системы на тему «Конкурс поэтов»
ПРИЛОЖЕНИЕ Б
// Poets_KonkursDlg.cpp : файл реализации
//
#include "stdafx.h"
#include "Poets_Konkurs.h"
#include "Poets_KonkursDlg.h"
#include "afxdialogex.h"
#include "afxdialogex.h"
#include <iostream>
#include "stdio.h"
#include <fstream>
#include <clocale>
#include <string>
using namespace std;
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
// Диалоговое окно CAboutDlg используется
для описания сведений о
class CAboutDlg : public CDialogEx
{
public:
CAboutDlg();
// Данные диалогового окна
enum { IDD = IDD_ABOUTBOX };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // поддержка DDX/DDV
// Реализация
protected:
DECLARE_MESSAGE_MAP()
};
CAboutDlg::CAboutDlg() : CDialogEx(CAboutDlg::IDD)
{
}
void CAboutDlg::DoDataExchange(
{
CDialogEx::DoDataExchange(pDX)
}
BEGIN_MESSAGE_MAP(CAboutDlg, CDialogEx)
END_MESSAGE_MAP()
// диалоговое окно CPoets_KonkursDlg
CPoets_KonkursDlg::CPoets_
: CDialogEx(CPoets_KonkursDlg::
, Familiya(_T(""))
, Imya(_T(""))
, Otchestvo(_T(""))
, Ochered(_T(""))
, Proiz(_T(""))
{
m_hIcon = AfxGetApp()->LoadIcon(IDR_
}
void CPoets_KonkursDlg::
{
CDialogEx::DoDataExchange(pDX)
DDX_Text(pDX, IDC_EDIT1, Familiya);
DDX_Text(pDX, IDC_EDIT2, Imya);
DDX_Text(pDX, IDC_EDIT3, Otchestvo);
DDX_Text(pDX, IDC_EDIT4, Ochered);
DDX_Text(pDX, IDC_EDIT5, Proiz);
DDX_Control(pDX, IDC_COMBO1, Zhanr);
DDX_Control(pDX, IDC_COMBO2, Poets);
}
BEGIN_MESSAGE_MAP(CPoets_
ON_WM_SYSCOMMAND()
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
ON_BN_CLICKED(IDC_BUTTON3, &CPoets_KonkursDlg::
ON_BN_CLICKED(IDC_BUTTON1, &CPoets_KonkursDlg::
ON_BN_CLICKED(IDC_BUTTON2, &CPoets_KonkursDlg::
ON_BN_CLICKED(IDC_RADIO1, &CPoets_KonkursDlg::
ON_BN_CLICKED(IDC_RADIO2, &CPoets_KonkursDlg::
END_MESSAGE_MAP()
// обработчики сообщений CPoets_KonkursDlg
BOOL CPoets_KonkursDlg::
{
CDialogEx::OnInitDialog();
Zhanr.AddString(_T("Поэма"));
Zhanr.AddString(_T("Зритель"))
Zhanr.AddString(_T("Рассказ"))
Zhanr.AddString(_T("Роман"));
Zhanr.AddString(_T("Водевиль")
Zhanr.AddString(_T("Трагедия")
Zhanr.AddString(_T("Повесть"))
Zhanr.AddString(_T("Ямб"));
Zhanr.AddString(_T("Эскиз"));
Zhanr.AddString(_T("Эпопея"));
Zhanr.AddString(_T("Очерк"));
Zhanr.AddString(_T("Сказка"));
Zhanr.AddString(_T("Ода"));
Zhanr.AddString(_T("Миф"));
Poets.AddString(_T("Тютчев"));
Poets.AddString(_T("Гоголь"));
Poets.AddString(_T("Пушкин"));
Poets.AddString(_T("Лермонтов"
Poets.AddString(_T("Есенин"));
Poets.SetCurSel(0);
// Добавление пункта "О программе..." в системное меню.
// IDM_ABOUTBOX должен быть в пределах системной команды.
ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
ASSERT(IDM_ABOUTBOX < 0xF000);
CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != NULL)
{
BOOL bNameValid;
CString strAboutMenu;
bNameValid = strAboutMenu.LoadString(IDS_
ASSERT(bNameValid);
if (!strAboutMenu.IsEmpty())
{
pSysMenu->AppendMenu(MF_
pSysMenu->AppendMenu(MF_
}
}
// Задает значок для этого диалогового окна. Среда делает это автоматически,
// если главное окно
приложения не является
SetIcon(m_hIcon, TRUE); // Крупный значок
SetIcon(m_hIcon, FALSE); // Мелкий значок
// TODO: добавьте дополнительную инициализацию
return TRUE; // возврат значения
TRUE, если фокус не передан
}
void CPoets_KonkursDlg::
{
if ((nID & 0xFFF0) == IDM_ABOUTBOX)
{
CAboutDlg dlgAbout;
dlgAbout.DoModal();
}
else
{
CDialogEx::OnSysCommand(nID, lParam);
}
}
// При добавлении кнопки
свертывания в диалоговое окно
нужно воспользоваться
// чтобы нарисовать
значок. Для приложений MFC, использующих
модель документов или
// это автоматически выполняется рабочей областью.
void CPoets_KonkursDlg::OnPaint()
{
if (IsIconic())
{
CPaintDC dc(this); // контекст устройства для рисования
SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.
// Выравнивание значка
по центру клиентского
int cxIcon = GetSystemMetrics(SM_CXICON);
int cyIcon = GetSystemMetrics(SM_CYICON);
CRect rect;
GetClientRect(&rect);
int x = (rect.Width() - cxIcon + 1) / 2;
int y = (rect.Height() - cyIcon + 1) / 2;
// Нарисуйте значок
dc.DrawIcon(x, y, m_hIcon);
}
else
{
CDialogEx::OnPaint();
}
}
// Система вызывает эту
функцию для получения
// свернутого окна.
HCURSOR CPoets_KonkursDlg::
{
return static_cast<HCURSOR>(m_hIcon);
}
void CPoets_KonkursDlg::
{
switch(Poets.GetCurSel())
{
case 0:
ShellExecute(NULL,_T("open"), _T("http://demo.aiva-studio.
break;
case 1:
ShellExecute(NULL,_T("open"), _T("http://demo.aiva-studio.
break;
case 2:
ShellExecute(NULL,_T("open"), _T("http://demo.aiva-studio.
break;
case 3:
ShellExecute(NULL,_T("open"), _T("http://demo.aiva-studio.
break;
case 4:
ShellExecute(NULL,_T("open"), _T("http://demo.aiva-studio.
break;
}
void CPoets_KonkursDlg::
{
UpdateData(true);
if (Familiya>="0"&&Familiya<="9")
{CWnd::MessageBox(_T("В поле <Фамилия>
должно быть текстовое
return;}
if (Imya>="0"&&Imya<="9")
{CWnd::MessageBox(_T("В поле <Имя>
должно быть текстовое
return;}
if (Otchestvo>="0"&&Otchestvo<="
{CWnd::MessageBox(_T("В поле <Отчество>
должно быть текстовое
return;}
char *locale=setlocale(LC_ALL,"RUS"
CString r;
Zhanr.GetLBText(Zhanr.
fstream datei;
datei.open("Konkurs_Poetov.
if(!datei)
{
cout<<"Error"<<endl;
}
else
{
datei<<Familiya<<" "<<Imya<<" "<<Otchestvo<<" "<<r<<" "<<Proiz<<" "<<Ochered<<" "<<endl;
}
datei.close();
UpdateData(false);
}
void CPoets_KonkursDlg::
{
UpdateData(true);
Familiya=Imya=Otchestvo=Proiz=
UpdateData(false);
}
void CPoets_KonkursDlg::
{
GetDlgItem(IDC_EDIT4)->
GetDlgItem(IDC_EDIT5)->
GetDlgItem(IDC_COMBO1)->
}
void CPoets_KonkursDlg::
{
GetDlgItem(IDC_EDIT4)->
GetDlgItem(IDC_EDIT5)->
GetDlgItem(IDC_COMBO1)->
}