Помощничек
Главная | Обратная связь


Археология
Архитектура
Астрономия
Аудит
Биология
Ботаника
Бухгалтерский учёт
Войное дело
Генетика
География
Геология
Дизайн
Искусство
История
Кино
Кулинария
Культура
Литература
Математика
Медицина
Металлургия
Мифология
Музыка
Психология
Религия
Спорт
Строительство
Техника
Транспорт
Туризм
Усадьба
Физика
Фотография
Химия
Экология
Электричество
Электроника
Энергетика

Разработка пользовательского интерфейса

Курсовая работа

на тему: «Автостоянка аэропорта г. Алматы»

по дисциплине: «Объектно – ориентированное программирование»

 

Выполнил:

студент группы

БАУ-10-4

Бобоев А.Б.

Проверила:

Ешпанова М.Д.

 

Алматы 2012

Содержание

Введение……………………………………………………………………...3

1. Анализ предметной области …………………...……………….…………...4

2. Постановка задачи …………..........……………………………………….....5

3. Разработка программы………..………………………..……….....................6

4. Разработка пользовательского интерфейса ……………...………………...7

5. Код программы……………………………………………………………….8

6. Заключение………………………………………………………………….16

Список использованной литературы…………………………...................17

 

 

Введение

Объектно-ориентированное программирование - программирование, где основными концепциями являются понятия объектов и классов. Большое значение в объектно-ориентированном программировании имеют также понятия события и компонента. Первым языком объектного программирования можно считать Симулу. Тут были впервые использованы объекты, классы и методы.

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

Самое главное при создании базы данных – правильно ее спроектировать. От этого зависит будущее программы. Если удастся все предусмотреть еще на этапе проектирования, то снижается вероятность того, что программу придется переписывать «с нуля».

Анализ предметной области

В данной работе перед мной стоит задача разработать программу для учета автомобилей, находящихся на стоянке аэропорта г. Алматы. Данная программа должна выдавать полную информацию о каждом автомобиле на стоянке, а именно имя владельца, номер машины, марку машины, цвет машины, дату и время прибытия (регистрации), информацию об оплате.

Данная программа будет представлена в виде базы, содержащей основные параметры автомашин на стоянке. База представляет собой список всех имеющихся зарегестрированных автомобилей на стоянке. По этому списку возможно выполнение различных операций. Например, если надо узнать заплатил ли автовладелец машины за стоянку или нет, простым запросом по номеру или какому-либо другому параметру машины, также сколько времени он простоял, дату и время, и т.д. Результаты запросов представлены в виде отчетов, для более удобного представления информации.

Основная (полная) информация представлена в БД Аксесс «Автостоянка». Доступ к базе осуществлен с помощью программы Делфи. В которой также возможно редактирование данных, т.е.просмотр, добавление и удаление информации по автомобилям на стоянке.

 

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

Создать приложение, имитирующее регистрацию автомобилей на стоянке в аэропорту г. Алматы. Надо определить, сколько времени пробыл на стоянке автомобиль с данным номером, сколько пришлось заплатить. Составить отчетность, сколько автомобилей на указанную дату стояло на стоянке. Вывести количество автомобилей на стоянке на данный момент.

Таблица 1

Автостоянка Код, Владелец, Марка, Номер, Цвет, Дата прибытия, Оплата, Оплачено

Требования к функциональным характеристикам

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

- ввод информации о новых автомобилях на стоянке;

- редактирование текущей информации о владельце и его машине;

- получение сведений о текущих машинах на стоянке.

 

1.2 Результаты:

- поиск по владельцу

- поиск по марке

- поиск по цвету машины

- поиск по номеру машины

- поиск по дате прибытия

- отчет по дате регистрации

 

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

Работа выполняется в среде объектного программирования Delphi 7.

База данных была разработана в СУБД Аксес. Осуществлялась свзять между СУБД Аксес и Delphi 7. Форму представления база имееть в Delphi 7.

 

Минимальные требования:

- операционная система Windows 7, Windows XP;

- оперативная память 32 Мб;

- процессор Intel Pentium 3, Athlon AMD;

- видеокарта с памятью 32 МБ;

- свободное пространство 20 МБ;

 

Рисунок 1

Разработка пользовательского интерфейса

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

 

Рисунок 2

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

На первой странице пользователю будет представлена возможность доступа к базе (рисунок 2). При правильном введении пароля открывается сама база (рисунок 1). Тут спокойно можно просматривать текущую информацию о автомобилях на стоянке. Она включает в себя:

- Код – ID человека, порядок, самое старшее число определяет общее колтичество зарегестрированных машин;

- Владелец – указывается имя (фамилия) владельца транспорта;
- Марка – указывается характерная марка транспорта;

- Номер – основной параметр транспорта, уникальный для каждой машины;

- Цвет – цветовая палитра машины, удобно если она является особенной;

- Дата прибытия – указывается дата, в которой машина находилась на стоянке;

- Оплата – стоимость стоянки за промежуток времени который, транспорт находился на стоянке;

- Оплачено – указывается была ли осуществлена оплата.

Код программы

unit Unit1;

interface

 

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, jpeg, ExtCtrls;

 

type

TForm1 = class(TForm)

Image1: TImage;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Edit1: TEdit;

Button1: TButton;

Button2: TButton;

procedure FormCreate(Sender: TObject);

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

 

var

Form1: TForm1;

 

implementation

uses unit2,unit4, unit3;

{$R *.dfm}

 

procedure TForm1.FormCreate(Sender: TObject);

begin

edit1.Clear;

end;

 

procedure TForm1.Button1Click(Sender: TObject);

begin

if edit1.Text='123' then

begin

form3.Show;

form1.Visible:=false;

end

else

begin

edit1.Clear;

showmessage('Неверный пароль');

end;

end;

 

end.

 

*****************

unit Unit3;

 

interface

 

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, Grids, DBGrids;

 

type

TForm3 = class(TForm)

DBGrid1: TDBGrid;

DBGrid2: TDBGrid;

Button1: TButton;

Label1: TLabel;

Edit1: TEdit;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

Edit2: TEdit;

Edit3: TEdit;

Edit4: TEdit;

Button2: TButton;

Button3: TButton;

Button4: TButton;

Button5: TButton;

Label5: TLabel;

Edit5: TEdit;

Button7: TButton;

Button6: TButton;

procedure Button1Click(Sender: TObject);

procedure FormCreate(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

procedure Button4Click(Sender: TObject);

procedure Button5Click(Sender: TObject);

procedure Button6Click(Sender: TObject);

 

private

{ Private declarations }

public

{ Public declarations }

end;

 

var

Form3: TForm3;

 

implementation

uses unit2, unit1, unit4;

{$R *.dfm}

 

procedure TForm3.Button1Click(Sender: TObject);

begin

form1.Close;

form3.Close;

end;

 

procedure TForm3.FormCreate(Sender: TObject);

begin

edit1.Clear;

edit2.Clear;

edit3.Clear;

edit4.Clear;

edit5.Clear;

end;

 

procedure TForm3.Button2Click(Sender: TObject);

begin

dbgrid2.DataSource:=datamodule2.DataSource2;

datamodule2.ADOQuery1.Active:=false;

datamodule2.ADOQuery1.SQL.Clear;

datamodule2.ADOQuery1.SQL.Add('select *');

datamodule2.ADOQuery1.SQL.Add('from Автостоянка');

datamodule2.ADOQuery1.SQL.Add('where Владелец='''+Edit1.Text+'''');

datamodule2.ADOQuery1.Active:=true;

edit1.Clear;

end;

 

procedure TForm3.Button3Click(Sender: TObject);

begin

dbgrid2.DataSource:=datamodule2.DataSource2;

datamodule2.ADOQuery1.Active:=false;

datamodule2.ADOQuery1.SQL.Clear;

datamodule2.ADOQuery1.SQL.Add('select *');

datamodule2.ADOQuery1.SQL.Add('from Автостоянка');

datamodule2.ADOQuery1.SQL.Add('where Марка='''+Edit2.Text+'''');

datamodule2.ADOQuery1.Active:=true;

edit2.Clear;

end;

 

procedure TForm3.Button4Click(Sender: TObject);

begin

dbgrid2.DataSource:=datamodule2.DataSource2;

datamodule2.ADOQuery1.Active:=false;

datamodule2.ADOQuery1.SQL.Clear;

datamodule2.ADOQuery1.SQL.Add('select *');

datamodule2.ADOQuery1.SQL.Add('from Автостоянка');

datamodule2.ADOQuery1.SQL.Add('where Цвет='''+Edit3.Text+'''');

datamodule2.ADOQuery1.Active:=true;

edit3.Clear;

end;

 

procedure TForm3.Button5Click(Sender: TObject);

begin

dbgrid2.DataSource:=datamodule2.DataSource2;

datamodule2.ADOQuery1.Active:=false;

datamodule2.ADOQuery1.SQL.Clear;

datamodule2.ADOQuery1.SQL.Add('select *');

datamodule2.ADOQuery1.SQL.Add('from Автостоянка');

datamodule2.ADOQuery1.SQL.Add('where Дата_прибытия='''+Edit5.Text+'''');

datamodule2.ADOQuery1.Active:=true;

edit4.Clear;

end;

 

procedure TForm3.Button6Click(Sender: TObject);

begin

form4.Visible:=true;

form3.Visible:=false;

end;

 

end.

**************

unit Unit4;

 

interface

 

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, QRCtrls, QuickRpt, ExtCtrls;

 

type

TForm4 = class(TForm)

Label1: TLabel;

Edit1: TEdit;

Button1: TButton;

Button2: TButton;

QuickRep1: TQuickRep;

TitleBand1: TQRBand;

QRLabel1: TQRLabel;

QRSysData1: TQRSysData;

ColumnHeaderBand1: TQRBand;

DetailBand1: TQRBand;

QRLabel2: TQRLabel;

QRLabel3: TQRLabel;

QRLabel4: TQRLabel;

QRLabel5: TQRLabel;

QRLabel6: TQRLabel;

QRLabel7: TQRLabel;

QRLabel8: TQRLabel;

QRLabel9: TQRLabel;

QRDBText1: TQRDBText;

QRDBText2: TQRDBText;

QRDBText3: TQRDBText;

QRDBText4: TQRDBText;

QRDBText5: TQRDBText;

QRDBText6: TQRDBText;

QRDBText7: TQRDBText;

QRDBText8: TQRDBText;

PageFooterBand1: TQRBand;

QRLabel10: TQRLabel;

QRLabel11: TQRLabel;

procedure Button2Click(Sender: TObject);

procedure FormCreate(Sender: TObject);

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

 

var

Form4: TForm4;

 

implementation

uses unit2, unit1, unit3;

{$R *.dfm}

 

procedure TForm4.Button2Click(Sender: TObject);

begin

form3.Show;

form4.Visible:=false;

end;

 

procedure TForm4.FormCreate(Sender: TObject);

begin

edit1.Clear;

end;

 

procedure TForm4.Button1Click(Sender: TObject);

begin

datamodule2.ADOQuery1.Active:=false;

datamodule2.ADOQuery1.SQL.Clear;

datamodule2.ADOQuery1.SQL.Add('select *');

datamodule2.ADOQuery1.SQL.Add('from Автостоянка');

datamodule2.ADOQuery1.SQL.Add('where Дата_прибытия='''+Edit1.Text+'''');

datamodule2.ADOQuery1.Active:=true;

quickrep1.PreviewModal;

edit1.Clear;

end;

 

end.

Заключение

Была проведена работа по созданию программы (приложения), имитирующую регистрацию автомобилей на стоянке аэропорта г.Алматы. Данная программа имеет свою базу, где хранятся основные сведения об автовладельцах машин находящихся на стоянке. База выполнена в СУБД Аксес, а ее реализация и дальнейшее применение в объектно-ориентированной программе Delphi 7. В процессе выполнения работы были изучены основные элементы управления базами данных в Delphi 7. Такие как DBGrid, ADOConnection, ADOTable, ADOQuery и DataSource.

 

Список литературы

 

1. Ешпанова М.Д., Ибрашев А.Т. Объектно-ориентированное программирование. Часть 1. Методические указания к выполнению лабораторных работ для студентов специальности 5В070200 – «Автоматизация и управление» - Алматы: АУЭС, 2010 – 55 с.

2. Фленов М. Библия Delphi.- СПб.: БХВ – Петербург, 2008.

3. Культин Н. Б. Основы программирования в Delphi 7, БХВ-Петербург, Санкт-Петербург 2003

4. Культин Н. С++ Builder в задачах и примерах.- СПб.: БХВ-Петербург, 2005.

 




Поиск по сайту:

©2015-2020 studopedya.ru Все права принадлежат авторам размещенных материалов.