Курсовая работа: Структура иерархии классов "Экран курсового проектирования"
Приложение «Экран курсового проектирования» было разработано в интегрированной среде программирования MicrosoftVisualStudio 2010. Приложение использует платформу .NETFramework 4, которая присутствует в операционной системе MicrosoftWindows 7.
Руководство пользователя:
Для выполнения приложения «Экран курсового проектирования» необходимы следующие минимальные системные требования:
- Pentium III 1.5 ГГц;
- GeForceFX 5200 или ATI Radeon 9550-9600 с 128 MB, поддержка шейдеров 2.0;
- 512 МбОЗУ;
- Windows® XP/Vista/7, Windows2000, DirectX 9.0c;
- .NET Framework версии 4.0;
- Место на жестком диске: 4 GB;
- Монитор с поддержкой разрешения 800x600;
- Клавиатура, мышь.
Данное приложение запускается из файла WindowsFormApplication C++.exe. При выполнении системных требований появится окно добавления информации о текущем экране курсового проектирования. После ввода доступно главное окно, в котором отражается полная информация об экране курсового проектирования и о студентах, выполняющих курсовые работы. В этом режиме программа ожидает действия от пользователя. При первом запуске доступны только команды «Добавить» и «Выход», а также справка о программе.
Для добавления записи необходимо нажать кнопку «Добавить», после чего появится форма добавления. Затем нужно заполнить все поля и нажать кнопку «Ок». Если не заполнены все поля, то программа выдаст сообщение об ошибке и предложит заполнить все поля. Также при неправильном соответствии форматов полей программа проинформирует пользователя. При желании возможно отказаться от добавления и нажать кнопку «Отмена». После добавления запись автоматически отображается в таблице.
Чтобы удалить запись необходимо поставить галочку на «Разрешить редактирование таблицы». Удаление доступно при наличии записей в таблице. Далее программа переходит в режим редактирования таблицы. Для удаления необходимо выделить удаляемую строку, нажав на треугольник рядом с именем записи. При подтверждении выбранного действия программа удаляет запись, о чем информирует пользователя.
Для редактирования записи необходимо поставить галочку на «Разрешить редактирование таблицы». Редактирование записи , как и удаление, доступно лишь при наличии записей в таблице. Для редактирования записи необходимо выделить строку, нажав на треугольник рядом с именем записи. При подтверждении выбранного действия открывается окно редактирования записи. Необходимо отредактировать нужные поля и подтвердить свои действия.
Поиск осуществляется по всем полям таблицы. Для поиска необходимо наличие записей в таблице. Чтобы выполнить поиск необходимо нажать на кнопку «Поиск», после этого откроется окно поиска, в котором необходимо ввести информацию для запроса, а затем нажать кнопку «Поиск». При первом же совпадении запрошенной информации с информацией в таблице программа выделяет совпадающее поле и запрашивает у пользователя разрешение на продолжение поиска, если найденная информация не удовлетворила запросу пользователя.
Для вызова справочной системы необходимо выбрать на панели команд меню «Help», а затем «Helpfile».
Заключение
В ходе выполнения курсового проекта была создана иерархия классов «Экран курсового проектирования», на основе которой было создано визуальное тестирующее приложение. Данное приложение наделено возможностью добавлять, редактировать, удалять записи, а также выполнять поиск информации по введенным данным. Проект отвечает тем требованиям, которые были предъявлены к нему в ходе проектирования, а именно использовании структуры классов, наглядности и удобству в использовании.
Список литературы
1. Павловская Т.А. С/С++. Программирование на языке высокого уровня. – СПб.: Лидер, 2010. – 461с.
2. Пахомов Б. И. С/С++ и MSVisualC++ 2008 для начинающих. – СПб.: БХВ-Петербург. 2009. – 624с.
3. Иванова Г.С, Ничушкина Т.Н., Пугачев Е.К. И21 Объектно-ориентированное программирование: Учеб. для вузов/ Под ред. Г.С. Ивановой. - М.: Изд-во МГТУ им. Н.Э. Баумана, 2001. – 320 с.
4. Пауэрс Л. MicrosoftVisualStudio 2008 / Л. Пауэрс, М. Снелл: Пер. с англ. – СПб.: БХВ-Петербург, 2009. – 1200 с.
|
Приложение А
Реализация иерархии классов
ФайлTObject.h
#pragma once
public ref class TObject abstract
{
public:
System::String ^TName;
virtual void SetName(System::String ^) abstract;
TObject(void);
};
Файл TObject.cpp
#include "StdAfx.h"
#include "TObject.h"
TObject::TObject(void)
{
TName="Default";
}
Файл TStudent.h
#pragma once
#include "TObject.h"
using namespace System;
ref class TStudent :
public TObject
{
public:
System::Int16 ControlScore;
System::Int16 NumberWeek;
System::Int16 *Plan;
System::Int16 *Fact;
System::Int16 *Control
System::String ^Test;
System::String ^TestF;
System::String ^Revision;
System::String ^RevisionF;
System::String ^Protection;
System::String ^ProtectionF;
virtual void SetName(System::String ^) override;
void SetNumberWeek(System::Int16 );
void SetPlan(System::Int16 , System::Int16);
void SetFact(System::Int16, System::Int16);
void SetControl(System::Int16, System::Int16);
void SetTest(System::String ^ );
void SetTestF(System::String ^ );
void SetRevision(System::String ^ );
void SetRevisionF(System::String ^ );
void SetProtection(System::String ^ );
void SetProtectionF(System::String ^ );
void SetControlScore(System::Int16 );
TStudent(void);
};
Файл TStudent.cpp
#include "StdAfx.h"
#include "TStudent.h"
void TStudent::SetName(String ^name){
TName=name;
}
void TStudent::SetNumberWeek(System::Int16 num){
NumberWeek=num;
}
void TStudent::SetPlan(System::Int16 num1, System::Int16 num2){
Plan[num2]=num1;
}
void TStudent::SetFact(System::Int16 num1, System::Int16 num2){
Fact[num2]=num1;
}
void TStudent::SetControl(System::Int16 num1, System::Int16 num2){
Control[num2]=num1;
}
void TStudent::SetTest(String ^ num){
Test=num;
}
void TStudent::SetTestF(String ^ num){
TestF=num;
}
void TStudent::SetRevision(String ^ num){
Revision=num;
}
void TStudent::SetRevisionF(String ^ num){
RevisionF=num;
}
void TStudent::SetProtection(String ^ num){
Protection=num;
}
void TStudent::SetProtectionF(String ^ num){
ProtectionF=num;
}
void TStudent::SetControlScore(System::Int16 score){
ControlScore=score;
}
TStudent::TStudent(void)
{
Plan=new System::Int16[3];
Fact=new System::Int16[3];
Control=new System::Int16[3];
}
Файл TScreen.h
#pragma once
#include "TObject.h"
#include "TStudent.h"
using namespace System;
using namespace System::Collections::Generic;
ref class TScreen :
public TObject
{
public:
System::String ^ Date;
System::String ^ Composition;
virtual void SetName(System::String ^) override;
void SetDate(System::String ^);
void SetComposition(System::String ^);
public:
TScreen(void);
};
Файл TScreen.cpp
#include "StdAfx.h"
#include "TScreen.h"
void TScreen::SetName(System::String ^s){
TName=s;
}
void TScreen::SetComposition(System::String ^s){
Composition=s;
}
void TScreen::SetDate(System::String ^s){
Date=s;
}
TScreen::TScreen(void)
{
}
Приложение В
Листинг тестирующего приложения
Файл Form1.h. Главное окно.
#pragma once
#include "Form2.h"
#include "TScreen.h"
#include "Start.h"
#include "Search.h"
namespace WindowsFormApplicationC {
using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Drawing;
using namespace System::Collections::Generic;
public ref class Form1 : public System::Windows::Forms::Form
{
public:
private: System::Windows::Forms::MenuStrip^ menuStrip1;
private: System::Windows::Forms::ToolStripMenuItem^ fileToolStripMenuItem;
private: System::Windows::Forms::ToolStripMenuItem^ exitToolStripMenuItem;
private: System::Windows::Forms::ToolStripMenuItem^ helpToolStripMenuItem;
private: System::Windows::Forms::ToolStripMenuItem^ aboutToolStripMenuItem;
private: System::Windows::Forms::Button^ button4;
private: System::Windows::Forms::Button^ button5;
public:
TStudent ^Student;
TScreen Screen;
System::Int16 CountDataGrid;
private: System::Windows::Forms::Button^ button6;
private: System::Windows::Forms::Button^ button7;
private: System::Windows::Forms::Button^ button1;
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11