1 (663428)
Текст из файла
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ КОРАБЛЕБУДУВАННЯ
ім. адм. Макарова
Херсонський філіал
Кафедра інформаційних технологій
Курсова робота
З ДИСЦИПЛІНИ
“Об’єктно – орієнтоване програмування”
ТЕМА: Розробка програмного забезпечення “Бюро знайомств”
Виконав:
Перевірив:
Херсон 2004
Ход работы программы
Модуль Proect1 содержит информацию о всех 7-ми Формах.
Форма 1 (Unit1) состоит из 6-ти кнопок и хранит процедуры их обработки:
-
Кнопка Новая анкета позволяет создать новую анкету клиента, содержащую данные о нем.
-
Кнопка Просмотр анкет выводит список ранее зарегистрированных клиентов.
-
Кнопка Работа с архивом открывает таблицу, содержащую личные данные клиентов о себе и раздел анкет по полу.
-
Кнопка Просмотр архива открывает таблицу архива, содержащую личные данные и параметры клиентов.
-
Кнопка Просмотр сохраненных приглашений открывает диалоговое окно, содержащее информацию о текущем приглашении пары (по умолчанию в кафе “Ночной Тарзан”).
-
Кнопка Выход завершает работу программы Бюро знакомств.
Форма 2 (Unit 2) создаёт новую анкету, содержащую такие поля: Дата, Регистрационный номер (задаётся автоматически), Фамилия, Имя, Отчество, Пол, Возраст, О себе, Требования. Так же имеются 2 кнопки: OK – сохраняет новую, заполненную анкету, Cancel - отменяет создание новой анкеты.
Форма 3 (Unit3) – это форма, просмотра анкет, она содержит такие заполненные поля: Рег №, Дата регистрации, Имя, Фамилия, Возраст, Пол, данные клиента о себе и требования к партнёру. Так же есть строка поиска по регистрационному номеру и две кнопки: Удалить – удаляет полностью выбранную анкету, Выход – закрывает форму Просмотр анкет.
Форма 4 (Unit4) содержит таблицу, содержащую личные данные клиентов и сортировку пар по полу. Имеются 3 кнопки: Занести в архив – занос в архив выбранной пары, Выход – завершение работы с архивом, Подготовить приглашение – открывает окно подготовки приглашения пары в кафе “Ночной Тарзан” на вечер знакомства с кандидатом женского пола и кандидатом мужского пола. Далее приглашение можно сохранить нажатием кнопки Сохранить, либо отменить приглашение, нажатием кнопки Выйти.
Форма 5 (Unit5) состоит из строк для просмотра всех данных клиента: регистрационный номер, дата регистрации, пол, данные о себе, требования, возраст, ФИО. Так же имеется кнопка Выход – завершающая просмотр данной формы.
Форма 6 (Unit 6) открывает окно подготовки приглашения пары в кафе “Ночной Тарзан” на вечер знакомства с кандидатом женского пола и кандидатом мужского пола. Далее приглашение для дальнейшего редактирования можно сохранить нажатием кнопки Сохранить, что открывает окно диалога сохранения файла и сохраняем текстовую область Mtmo1 в указанный файл, либо отменить приглашение, нажатием кнопки Выйти.
Форма 7 (Unit7) представляет собой окно, для просмотра готовых приглашений тех пар, которым были назначены встречи, тут же можно отредактировать приглашение и сохранить заново. Имеются 3 кнопки:
Открытие приглашения – открытие готового приглашения, путём вывода окна диалога, которое открывает файл. В этом окне происходит заполнение текстовой области Memo1 из указанного файла;
Сохранить приглашение – даёт возможность сохранить новое, отредактированное приглашение путём открытия окна диалога сохранения файла и сохраняется текстовая область Memo1 в указанный файл;
Выход – завершение работы Unite7.
Текст программы
program Project1;
uses
Forms,
Unit1 in 'Unit1.pas' {Form1},
Unit2 in 'Unit2.pas' {Form2},
Unit3 in 'Unit3.pas' {Form3},
Unit4 in 'Unit4.pas' {Form4},
Unit5 in 'Unit5.pas' {Form5},
Unit6 in 'Unit6.pas' {Form6},
Unit7 in 'Unit7.pas' {Form7};
{$R *.res}
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TForm2, Form2);
Application.CreateForm(TForm3, Form3);
Application.CreateForm(TForm4, Form4);
Application.CreateForm(TForm5, Form5);
Application.CreateForm(TForm6, Form6);
Application.CreateForm(TForm7, Form7);
Application.Run;
end.
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Button4: TButton;
Button3: TButton;
Button5: TButton;
Button6: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit2, Unit3, Unit4, Unit5, Unit7;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);//Процедура обработки клика кнопки "Новая форма"
begin
form2.ShowModal; //показ формы Form2. Форма открывается в режиме при котором другие формы не доступны
end;
procedure TForm1.Button2Click(Sender: TObject);//Процедура обработки клика кнопки "Просмотр анкет"
begin
Form3.showmodal;//показ формы Form3. Форма открывается в режиме при котором другие формы не доступны
end;
procedure TForm1.Button4Click(Sender: TObject);//Процедура обработки клика кнопки "Выход"
begin
Close;//Закрытие формы Form1, что означает выход из программы
end;
procedure TForm1.Button3Click(Sender: TObject);//Процедура обработки клика кнопки "Работа с архивом"
begin
form4.ShowModal;//показ формы Form4. Форма открывается в режиме при котором другие формы не доступны
end;
procedure TForm1.Button5Click(Sender: TObject);//Процедура обработки клика кнопки "Просмотр архива"
begin
form5.Table1.Open; //откритие таблицы Table1 находящейся на форме FORM5
form5.ShowModal; //показ формы Form5. Форма открывается в режиме при котором другие формы не доступны
end;
procedure TForm1.Button6Click(Sender: TObject);
begin
form7.ShowModal;//показ формы Form7. Форма открывается в режиме при котором другие формы не доступны
end;
end.
unit Unit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DBCtrlsEh, Mask, DBCtrls, DB, DBTables, StdCtrls, Buttons;
type
TForm2 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
DBMemo1: TDBMemo;
DBMemo2: TDBMemo;
Table1: TTable;
DataSource1: TDataSource;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
DBEdit4: TDBEdit;
DBDateTimeEditEh1: TDBDateTimeEditEh;
DBEdit5: TDBEdit;
Label6: TLabel;
Label7: TLabel;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
DBEdit6: TDBEdit;
Label8: TLabel;
procedure FormCreate(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
implementation
uses Unit3;
{$R *.dfm}
procedure TForm2.FormCreate(Sender: TObject);//При показе, активации и создании формы Form2 выполняются действия:
begin
Table1.Open;//Открывается таблица Table1
table1.Append;//Добавляется в конец таблицы новая строка в таблицу Table1
table1.FieldByName('date').AsDateTime:=date;//Записываем в текущую строку в поле Date сегодняшнее число
table1.Post; //Сохранение изменений
table1.edit; //Начинаем изменения в таблице Table1 в текущей сторке
end;
procedure TForm2.BitBtn1Click(Sender: TObject);//Процедура обработки клика кнопки "ОК"
begin
table1.Post; //Сохранение изменений
close;//Закрытие формы Form2
end;
procedure TForm2.BitBtn2Click(Sender: TObject);
begin
table1.Cancel;//отмена изменений
table1.Delete;//Удаление текущей строки в таблице Table1
close;//Закрытие формы Form2
end;
procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);//Процедура обработки событя при закрытии формы Form2
begin
form3.Table1.Refresh;//Обновление данных в таблице Table1 находящейся на форме Form3
end;
end.
unit Unit3;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DBCtrls, Grids, DBGrids, Buttons, ExtCtrls, DB,
DBTables;
type
TForm3 = class(TForm)
DataSource1: TDataSource;
Table1: TTable;
Panel1: TPanel;
DBGrid1: TDBGrid;
DBMemo1: TDBMemo;
DBMemo2: TDBMemo;
Button1: TButton;
Button2: TButton;
Label1: TLabel;
Label2: TLabel;
Edit1: TEdit;
Label3: TLabel;
procedure FormCreate(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Edit1Change(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form3: TForm3;
implementation
{$R *.dfm}
procedure TForm3.FormCreate(Sender: TObject); //прцедура обработки события при создании формы Form3
begin
table1.Open;//Открытие таблицы table1
end;
procedure TForm3.BitBtn1Click(Sender: TObject);//Процедура обработки клика кнопки "Удалить"
begin
table1.Delete;//Удаление текущей строки в таблице Table1
end;
procedure TForm3.Button2Click(Sender: TObject);//Процедура обработки клика кнопки "Выход"
begin
Close;//Закрытие Form3
end;
procedure TForm3.Edit1Change(Sender: TObject);
begin
Try //Задействование обработчика ошибок
Table1.FindKey([strtoint(edit1.Text)]); //Поиск по индексу (ставит курсор в таблице ближе всего находящейся к искомому значению)
except
Showmessage('Не верный параметр для поиска'); //в солучае возникновения ошибки будет дано сообщение
end;
end;
end.
unit Unit4;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DB, Grids, DBGrids, DBTables;
type
TForm4 = class(TForm)
Table1: TTable;
Table2: TTable;
Table3: TTable;
DBGrid1: TDBGrid;
DBGrid2: TDBGrid;
DataSource1: TDataSource;
DataSource2: TDataSource;
Button1: TButton;
Button2: TButton;
Button3: TButton;
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form4: TForm4;
implementation
uses Unit6;
{$R *.dfm}
procedure TForm4.Button2Click(Sender: TObject);
begin
close;
end;
procedure TForm4.Button1Click(Sender: TObject);//Процедура обработки клика кнопки "Занести в архив"
begin
//table1.Open;
//table2.Open;
table1.DisableControls;//Отмена слежения за изменениями в таблице Table1
table2.DisableControls;//Отмена слежения за изменениями в таблице Table2
table3.Open;//Открываем таблицу Table3
table3.Append;//Добавляем в конец таблицы новую строку
table3.FieldByName('reg').AsInteger:=table1.FieldByName('reg').AsInteger;//копируем в поле "REG" таблицы Table3 значение поля "REG" таблицы Table1
table3.FieldByName('date').Asdatetime:=table1.FieldByName('date').Asdatetime;//копируем в поле "DATE" таблицы Table3 значение поля "DATE" таблицы Table1
table3.FieldByName('pol').Asstring:=table1.FieldByName('pol').Asstring;//копируем в поле "POL" таблицы Table3 значение поля "POL" таблицы Table1
table3.FieldByName('osebe').AsVariant:=table1.FieldByName('osebe').AsVariant;//копируем в поле "OSEBE" таблицы Table3 значение поля "OSEBE" таблицы Table1
table3.FieldByName('treb').AsVariant:=table1.FieldByName('treb').AsVariant;//копируем в поле "TREB" таблицы Table3 значение поля "TREB" таблицы Table1
table3.FieldByName('name').Asstring:=table1.FieldByName('name').Asstring;//копируем в поле "NAME" таблицы Table3 значение поля "NAME" таблицы Table1
table3.FieldByName('family').Asstring:=table1.FieldByName('family').Asstring;//копируем в поле "FAMILY" таблицы Table3 значение поля "FAMILY" таблицы Table1
table3.FieldByName('father').Asstring:=table1.FieldByName('Father').Asstring;//копируем в поле "FATHER" таблицы Table3 значение поля "FATHER" таблицы Table1
table3.Post;//Сохраняем изменения в таблице Table3
table3.Append;//Добавляем в конец таблицы новую строку
table3.FieldByName('reg').AsInteger:=table2.FieldByName('reg').AsInteger;//копируем в поле "REG" таблицы Table3 значение поля "REG" таблицы Table2
table3.FieldByName('date').Asdatetime:=table2.FieldByName('date').Asdatetime;//копируем в поле "DATE" таблицы Table3 значение поля "DATE" таблицы Table2
Характеристики
Тип файла документ
Документы такого типа открываются такими программами, как Microsoft Office Word на компьютерах Windows, Apple Pages на компьютерах Mac, Open Office - бесплатная альтернатива на различных платформах, в том числе Linux. Наиболее простым и современным решением будут Google документы, так как открываются онлайн без скачивания прямо в браузере на любой платформе. Существуют российские качественные аналоги, например от Яндекса.
Будьте внимательны на мобильных устройствах, так как там используются упрощённый функционал даже в официальном приложении от Microsoft, поэтому для просмотра скачивайте PDF-версию. А если нужно редактировать файл, то используйте оригинальный файл.
Файлы такого типа обычно разбиты на страницы, а текст может быть форматированным (жирный, курсив, выбор шрифта, таблицы и т.п.), а также в него можно добавлять изображения. Формат идеально подходит для рефератов, докладов и РПЗ курсовых проектов, которые необходимо распечатать. Кстати перед печатью также сохраняйте файл в PDF, так как принтер может начудить со шрифтами.