Главный модуль программы




unit aeromain;

 

interface

 

uses

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

Dialogs, Menus, ImgList, ActnList, ComCtrls, ToolWin, Grids, StdActns,

ExtCtrls, StdCtrls, Buttons;

 

type

TReis = Record

Nreisa: integer;

Pnazn: string[30];

Vvilet: TTime;

Vpribit: TTime;

Sbilet: integer;

end;

Taeromain1 = class(TForm)

MainMenu1: TMainMenu;

Exit1: TMenuItem;

Help1: TMenuItem;

ToolBar1: TToolBar;

StringGrid1: TStringGrid;

Image1: TImage;

ImageList1: TImageList;

ActionList1: TActionList;

dobav: TAction;

Udal: TAction;

N6: TMenuItem;

stoim: TAction;

N7: TMenuItem;

SpeedButton3: TSpeedButton;

SpeedButton4: TSpeedButton;

SpeedButton5: TSpeedButton;

ToolButton1: TToolButton;

ToolButton3: TToolButton;

ToolButton4: TToolButton;

SpeedButton7: TSpeedButton;

SpeedButton2: TSpeedButton;

ToolButton5: TToolButton;

oprog: TAction;

Exit: TAction;

N8: TMenuItem;

N9: TMenuItem;

reisi: TAction;

N4: TMenuItem;

ToolBar2: TToolBar;

SpeedButton1: TSpeedButton;

SpeedButton6: TSpeedButton;

SpeedButton8: TSpeedButton;

SpeedButton9: TSpeedButton;

SpeedButton10: TSpeedButton;

SpeedButton11: TSpeedButton;

SpeedButton12: TSpeedButton;

BitBtn1: TBitBtn;

zaprrei: TAction;

SpeedButton13: TSpeedButton;

SpeedButton14: TSpeedButton;

ToolButton2: TToolButton;

zapgorod: TAction;

N10: TMenuItem;

N11: TMenuItem;

N12: TMenuItem;

ochvv: TAction;

ToolButton6: TToolButton;

ToolButton7: TToolButton;

ToolButton8: TToolButton;

ToolButton9: TToolButton;

redac: TAction;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

N5: TMenuItem;

procedure DobavExecute(Sender: TObject);

procedure stoimExecute(Sender: TObject);

procedure oprogExecute(Sender: TObject);

procedure ExitExecute(Sender: TObject);

procedure reisiExecute(Sender: TObject);

procedure BitBtn1Click(Sender: TObject);

procedure zaprreiExecute(Sender: TObject);

procedure zapgorodExecute(Sender: TObject);

procedure ochvvExecute(Sender: TObject);

procedure FormActivate(Sender: TObject);

procedure FormClose(Sender: TObject; var Action: TCloseAction);

procedure UdalExecute(Sender: TObject);

procedure redacExecute(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

 

end;

 

var

aeromain1: Taeromain1;

FReis: file of TReis;

FTemp: file of TReis;

reis: TReis;

otvet: word;

implementation

 

uses aeroinfo, aerovvod;

 

{$R *.dfm}

 

procedure Taeromain1.DobavExecute(Sender: TObject);

begin

reisiExecute(self);

ochvvExecute(self);

aeromain1.Enabled:=false;

with aerovvod1 do

begin

Visible:=True;

Caption:='Добавить рейс';

Edit1.Visible:=true;

Edit2.Visible:=true;

Edit3.Visible:=true;

Edit4.Visible:=true;

Edit5.Visible:=true;

Label1.Visible:=true;

Label1.Caption:='Номер рейса';

Label2.Visible:=true;

Label3.Visible:=true;

Label4.Visible:=true;

Label5.Visible:=true;

BitBtn1.Visible:=true;

BitBtn1.OnClick:=aerovvod1.BitBtn1Click1;

BitBtn1.Caption:='Добавить';

BitBtn2.Visible:=true;

end;

end;

 

procedure Taeromain1.stoimExecute(Sender: TObject);

begin

reisiExecute(self);

ochvvExecute(self);

aeromain1.Enabled:=false;

with aerovvod1 do

begin

Visible:=True;

Caption:='Пересчет стоимости билетов путем увеличения на к %';

Image1.Visible:=true;

edit6.Visible:=true;

Label1.Visible:=true;

Label1.Caption:='Введите процент увеличения';

Label1.Top:=100;

BitBtn1.OnClick:=aerovvod1.BitBtn1Click5;

BitBtn1.Visible:=True;

BitBtn2.Visible:=True;

BitBtn1.Top:=270;

BitBtn2.Top:=270;

BitBtn1.Caption:='Изменить';

end;

end;

 

procedure Taeromain1.oprogExecute(Sender: TObject);

begin

aeroinfo1.Visible:=true;

aeromain1.Enabled:=false;

end;

 

procedure Taeromain1.ExitExecute(Sender: TObject);

begin

aeromain1.Close;

end;

 

procedure Taeromain1.reisiExecute(Sender: TObject);

begin

stringgrid1.Visible:=true;

bitbtn1.Visible:=true;

seek(FReis, 0);

stringgrid1.Cells[0,0]:= 'Номер рейса';

stringgrid1.Cells[1,0]:= 'Пункт назначения';

stringgrid1.Cells[2,0]:= 'Время вылета';

stringgrid1.Cells[3,0]:= 'Время прибытия';

stringgrid1.Cells[4,0]:= 'Стоимость билета';

While not Eof(FReis) do

begin

Read(FReis,Reis);

with Reis do

begin

stringgrid1.Cells[0,FilePos(FReis)]:=IntToStr(Nreisa);

stringgrid1.Cells[1,FilePos(FReis)]:=Reis.Pnazn;

stringgrid1.Cells[2,FilePos(FReis)]:=TimeToStr(Vvilet);

stringgrid1.Cells[3,FilePos(FReis)]:=TimeTOStr(Vpribit);

stringgrid1.Cells[4,FilePos(FReis)]:=IntToStr(Sbilet);

end;

end;

stringgrid1.RowCount:= FilePos(FReis)+1;

end;

 

procedure Taeromain1.BitBtn1Click(Sender: TObject);

begin

stringgrid1.Visible:=false;

bitbtn1.Visible:=false;

end;

 

procedure Taeromain1.zaprreiExecute(Sender: TObject);

begin

reisiExecute(self);

ochvvExecute(self);

aeromain1.Enabled:=false;

with aerovvod1 do

begin

Visible:=True;

Caption:='Выдача справки по конкретному рейсу';

Label1.Visible:=true;

Edit1.Visible:=true;

Label1.Top:=100;

Edit1.Left:=200;

Edit1.Top:=175;

Label1.Caption:='Введите номер рейса';

BitBtn1.Visible:=True;

BitBtn2.Visible:=True;

BitBtn1.Top:=270;

BitBtn2.Top:=270;

BitBtn1.OnClick:=aerovvod1.BitBtn1Click3;

BitBtn1.Caption:='Запросить';

Image1.Visible:=true;

end;

end;

 

procedure Taeromain1.zapgorodExecute(Sender: TObject);

begin

reisiExecute(self);

ochvvExecute(self);

aerovvod1.Visible:=True;

aeromain1.Enabled:=false;

with aerovvod1 do

begin

Visible:=True;

Caption:='Вывод списка рейсов, вылетающий в заданный город';

Label1.Visible:=true;

Edit2.Visible:=true;

Label1.Top:=100;

Edit2.Top:=175;

Label1.Caption:='Введите Город';

BitBtn1.Visible:=True;

BitBtn2.Visible:=True;

BitBtn1.Top:=270;

BitBtn2.Top:=270;

BitBtn1.OnClick:=aerovvod1.BitBtn1Click4;

BitBtn1.Caption:='Запросить';

Image1.Visible:=true;

end;

end;

 

procedure Taeromain1.ochvvExecute(Sender: TObject);

begin

with aerovvod1 do

begin

Edit1.Visible:=false;

Edit2.Visible:=false;

Edit3.Visible:=false;

Edit4.Visible:=false;

Edit5.Visible:=false;

Edit6.Visible:=false;

Edit1.text:='1234';

Edit2.text:='Кемерово';

Edit3.text:='23:12';

Edit4.text:='08:00';

Edit5.text:='15000';

Edit6.text:='100';

Label1.Visible:=false;

Label2.Visible:=false;

Label3.Visible:=false;

Label4.Visible:=false;

Label5.Visible:=false;

BitBtn1.Visible:=false;

BitBtn2.Visible:=false;

Image1.Visible:=false;

Label1.Top:=8;

Edit1.Left:=344;

Edit1.Top:=8;

Edit2.Top:=120;

BitBtn1.Top:=392;

BitBtn2.Top:=392;

 

end;

end;

 

procedure Taeromain1.FormActivate(Sender: TObject);

begin

AssignFile(FReis, 'baza.aspr');

{$I-}

Reset(FReis);

Seek(FReis, FileSize(FReis));

{$I-}

if IOResult <> 0

then

begin

otvet:= MessageDlg('Файл базы данных не найден.' +

'Создать новую БД?', mtInformation, [mbYes, mbNo], 0);

if otvet <> mrYes

then

begin

MessageDlg('Дальнейшая работа с прораммой невозможна', mtInformation, [mbYes],0);

aeromain1.Close;

end

else

begin

{$I-}

rewrite(FReis);

{$I+}

if IOResult <> 0

then begin

MessageDlg('Ошибка создания файла БД.', mtError, [mbOk],0);

aeromain1.Close;

end;

end;

end;

end;

 

procedure Taeromain1.FormClose(Sender: TObject; var Action: TCloseAction);

begin

CloseFile(FReis);

end;

 

procedure Taeromain1.UdalExecute(Sender: TObject);

begin

if stringgrid1.Visible=false

then messageDlg('Выведете список рейсов', mtinformation, [mbOk],0)

else begin

AssignFile(FTemp, 'temp.aspr');

{$I-}

rewrite(FTemp);

{$I+}

if IOResult <> 0

then

MessageDlg('Ошибка удаления temp файл недоступен', mtError, [mbOk],0)

else begin

seek(FReis, 0);

seek(Ftemp, 0);

While not Eof(FReis) do

begin

Read(FReis,Reis);

if StringGrid1.Row = FilePos(FReis)

then begin otvet:= messageDlg('Вы точно хотите удалить рейс" №'+

inttostr(reis.Nreisa), mtinformation, [mbYes,mbNo],0);

if otvet <> mrYes then write(FTemp, Reis);

end

Else write(FTemp, Reis)

end;

seek(FReis, FilePos(FReis))

end;

rewrite(FReis);

seek(FReis, 0);

seek(Ftemp, 0);

While not Eof(FTemp) do

begin

Read(Ftemp,Reis);

write(FReis, Reis);

seek(FTemp, FilePos(FTemp));

end;

rewrite(FTemp);

CloseFile(FTemp);

reisiExecute(self);

end;

 

 

end;

 

 

procedure Taeromain1.redacExecute(Sender: TObject);

begin

if stringgrid1.Visible=false

then messageDlg('Выведете список рейсов', mtinformation, [mbOk],0)

else begin

ochvvExecute(self);

aeromain1.Enabled:=false;

with aerovvod1 do

begin

Visible:=True;

Caption:='Редактировать рейс';

Edit1.Visible:=true;

Edit2.Visible:=true;

Edit3.Visible:=true;

Edit4.Visible:=true;

Edit5.Visible:=true;

Label1.Visible:=true;

Label1.Caption:='Номер рейса';

Label2.Visible:=true;

Label3.Visible:=true;

Label4.Visible:=true;

Label5.Visible:=true;

BitBtn1.Visible:=true;

BitBtn1.OnClick:=BitBtn1Click2;

BitBtn1.Caption:='Изменить';

BitBtn2.Visible:=true;

BitBtn1.Top:=392;

BitBtn2.Top:=392;

end;

seek(FReis, 0);

While not Eof(FReis) do

begin

Read(FReis,aeromain.Reis);

if StringGrid1.Row = FilePos(FReis)

then begin

with reis do

begin

aerovvod1.Edit1.text:=Inttostr(Nreisa);

aerovvod1.Edit2.text:=reis.Pnazn;

aerovvod1.edit3.text:=Timetostr(Vvilet);

aerovvod1.edit4.text:=Timetostr(Vpribit);

aerovvod1.edit5.text:=Inttostr(Sbilet);

end;

end;

end;

reisiExecute(self);

end;

end;

 

end.



Поделиться:




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

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-04-03 Нарушение авторских прав и Нарушение персональных данных


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