Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
zvit.doc
Скачиваний:
2
Добавлен:
09.09.2019
Размер:
1 Мб
Скачать
☆

2.3. Форми та їхнє призначення

В моїй БД я використав форми для вводу даних в таблиці:

- „MyStartForm” – це головне вікном моєї програми. Створена вона в режимі конструктора створення форм в середовищі Borland C++ Builder 6. Моя головна форма складається з таких компонентів: Button1-8 (TButton), які використовуються для виклику дії яка буде виконуватися, та компоненту MainMenu1 (TMainMenu) який дозволяє вийти з програми і переглянути розробника. На рис. 7 зображено форму в середовищі Borland С++ Builder 6 з усіма компонентами.

Рис. 7. Форма „MyStartForm” в Borland С++ Builder 6

В меню є кнопки, які викликають на виконання інші форми проекту. У лістингу 1 представлені всі функції цієї форми.

Лістинг 1

Функції форми „MyStartForm”

void __fastcall TMyStartForm::Button1Click(TObject *Sender)

{

DataModule1->Table3->Active=true;

DataModule1->Table2->Active=true;

DataModule1->Table1->Active=true;

MyChild1->ShowModal();

}

//---------------------------------------------------------------------------

void __fastcall TMyStartForm::N1Click(TObject *Sender)

{

ShowMessage("Базу даних розробив \nстудент групи 1П-09 \nЧмир Володимир");

}

//---------------------------------------------------------------------------

void __fastcall TMyStartForm::Exit1Click(TObject *Sender)

{

Close();

}

//---------------------------------------------------------------------------

void __fastcall TMyStartForm::Button8Click(TObject *Sender)

{

DataModule1->Table3->Active=true;

DataModule1->Table2->Active=true;

DataModule1->Table1->Active=true;

MyChild8->ShowModal();

}

//---------------------------------------------------------------------------

void __fastcall TMyStartForm::Button7Click(TObject *Sender)

{

DataModule1->Table3->Active=true;

DataModule1->Table2->Active=true;

DataModule1->Table1->Active=true;

MyChild7->ShowModal();

}

//---------------------------------------------------------------------------

void __fastcall TMyStartForm::Button5Click(TObject *Sender)

{

DataModule1->Table3->Active=true;

DataModule1->Table2->Active=true;

DataModule1->Table1->Active=true;

MyChild5->ShowModal();

}

//---------------------------------------------------------------------------

void __fastcall TMyStartForm::Button3Click(TObject *Sender)

{

DataModule1->Table3->Active=true;

DataModule1->Table2->Active=true;

DataModule1->Table1->Active=true;

MyChild3->ShowModal();

}

//---------------------------------------------------------------------------

void __fastcall TMyStartForm::Button4Click(TObject *Sender)

{

DataModule1->Table3->Active=true;

DataModule1->Table2->Active=true;

DataModule1->Table1->Active=true;

MyChild4->ShowModal();

}

//---------------------------------------------------------------------------

void __fastcall TMyStartForm::Button2Click(TObject *Sender)

{

DataModule1->Table3->Active=true;

DataModule1->Table2->Active=true;

DataModule1->Table1->Active=true;

MyChild2->ShowModal();

}

//---------------------------------------------------------------------------

void __fastcall TMyStartForm::Button6Click(TObject *Sender)

{

DataModule1->Table3->Active=true;

DataModule1->Table2->Active=true;

DataModule1->Table1->Active=true;

DataModule1->Query1->Active=true;

MyChild6->ShowModal();

}

- „ DataModule1” – в цій формі (модулі) містяться всі не візуальні компоненти зв’язку з базою даних та таблицями. На рис. 8 зображено форму в середовищі Borland C++ Builder 6 з усіма компонентами.

У компонента Database1 (TDataBase) встановив властивість AliasName у ім’я аліасу, який я створив за допомогою BDE Administrator.

В компонентах TTable таблиці підключив за допомогою властивості DataBase встановивши Database1 та вибрав таблиці за допомогою властивості TableName. Активував за допомогою властивості Active.

Рис. 8. Форма „DataModule1” в Borland C++ Builder 6

„MyChild1” – задачею цієї форми є вивод на єкран таблиць які існують. Створена за допомогою можливостей середовища програмування Borland C++ Builder 6. Складається з компонентів DBGrid1, DataSource1, DataSource2, DataSource3, Button1, Button2, Button3, Button4, DBNavigator1. На рис. 9 зображено форму в середовищі Borland C++ Builder 6 з усіма компонентами.

Рис. 9. Форма „MyChild1” в Borland C++ Builder 6.

В таблиці 6 представленні компоненти та їх властивості, які змінювались під час розробки форми.

Таблиця 6

Таблиця компонентів та їх властивостей форми Mychild1

Ім’я компоненту

Властивість

Значення

Button1

Caption

Фамилия

Button2

Caption

Номер квартиры

Button3

Caption

Дата прописки

Button4

Caption

Количество членов семьи

DataSource1

Data Set

DataModule1->Table1

DataSource2

Data Set

DataModule1->Table2

DataSource3

Data Set

DataModule1->Table3

DBNavigator1

Data Source

DataSource1

DBGrid1

Data Source

DataSource1

Кнопки тут створені для виводу таблиць на єкран у лістингу 3 показаний код.

Лістинг 3

Код процедури Click для кнопок „ produk.db ” , „SG pidriemstva.DB”, „tip.db” , „перейти до іншої функції”

void __fastcall TMyChild1::Button1Click(TObject *Sender)

{

DBGrid1->DataSource=DataSource1;

DataModule1->Table1->Active=true;

DataModule1->Table2->Active=false;

DataModule1->Table3->Active=false;

DBNavigator1->DataSource=DataSource1;

}

void __fastcall TMyChild1::Button2Click(TObject *Sender)

{

DBGrid1->DataSource=DataSource2;

DataModule1->Table2->Active=true;

DataModule1->Table1->Active=false;

DataModule1->Table3->Active=false;

DBNavigator1->DataSource=DataSource2;

}

//---------------------------------------------------------------------------

void __fastcall TMyChild1::Button3Click(TObject *Sender)

{

DBGrid1->DataSource=DataSource3;

DataModule1->Table3->Active=true;

DataModule1->Table2->Active=false;

DataModule1->Table1->Active=false;

DBNavigator1->DataSource=DataSource3;

}

void __fastcall TMyChild1::Button4Click(TObject *Sender)

{

DataModule1->Table3->Active=true;

DataModule1->Table2->Active=true;

DataModule1->Table1->Active=true;

Close();

}

„MyChild2” – задачею цієї форми є зміна даних в таблиці. Створена за допомогою можливостей середовища програмування Borland C++ Builder 6. Ця форма замінює дані на нові в таблицю „ SG_pidpriemstva ”. Складається з трьох полів для вводу Edit(TEdit) які використовуються для редагування даних у таблицю. На рис. 10 зображено форму в середовищі Borland C++ Builder 6 з усіма компонентами.

Рис. 10. Форма „MyChild2” в Borland C++ Builder 6

В таблиці 7 представленні компоненти та їх властивості, які змінювались під час розробки форми.

Таблиця 7

Таблиця компонентів та їх властивостей форми Mychild2

Ім’я компоненту

Властивість

Значення

Button1

Caption

Змінити

Edit1

Text

Назва

Edit2

Text

Власність

Edit3

Text

Тип продукції

DataSource1

DataSet

DataModule1->Table2

DBGrid1

DataSource

DataSource1

DBNavigator1

DataSource

DataSource1

Кнопка тут створена для зміни інформації в таблиці „ SG_pidriemstva ” у лістингу 5 показаний код.

Лістинг 5

Код процедури Click для кнопки „Змінити”

void __fastcall TMyChild2::Button1Click(TObject *Sender)

{

String str;

DataModule1->Table2->Edit();

str = Edit1->Text;

str = str.Trim();

DataModule1->Table2->Fields->Fields[1]->AsString = str;

str = Edit2->Text;

str = str.Trim();

DataModule1->Table2->Fields->Fields[3]->AsString = str;

str = Edit3->Text;

str = str.Trim();

DataModule1->Table2->Fields->Fields[5]->AsString = str;

DataModule1->Table2->Post();

}

„MyChild3” – за допомогою цієї форми можна фільтрувати дані із таблиці „SG_pidriemstva ” по полю «Прибуток». Складається з таких компонентів для роботи з базою даних, це поле Edit1(TEdit) для вводу даних. На рис. 12 зображено форму в середовищі Borland С++ Builder 6 з усіма компонентами.

Рис. 12. Форма „MyChild3” в Borland С++ Builder 6

В таблиці 8 представленні компоненти та їх властивості, які змінювались під час розробки форми.

Таблиця 8

Таблиця компонентів та їх властивостей форми Mychild3

Ім’я компоненту

Властивість

Значення

Label1

Caption

Програма для фільтрування прибутку

DBGrid1

DataSource

DataSource1

DataSource1

DataSet

DataModule1->Table2

Edit1

Text

Button1

Caption

Відфільтрувати

BitBtn1

Kind

bkClose

„MyChild4” – за допомогою цієї форми можна добавляти і редагувати дані з таблиці „SG_pidriemstva”. Складається з таких компонентів для роботи з базою даних як: поля для вводу інформації Edit(TDBEdit) та надписів, які використовуються для підписів полів вводу. Також використовується компонент для добавлення і видалення даних – Button1(TButton).. На рис. 13 зображено форму в середовищі Borland С++ Builder 6 з усіма компонентами.

Рис. 13. Форма „MyChild4” в Borland С++ Builder 6

В таблиці 9 представленні компоненти та їх властивості, які змінювались під час розробки форми.

Таблиця 9

Таблиця компонентів та їх властивостей форми Mychild4

Ім’я компоненту

Властивість

Значення

Edit1

Text

Button1

Caption

Додати

Button2

Caption

Видалити

BitBtn1

Kind

bkClose

DBGrid1

DataSource

DataSource1

DataSource1

DataSet

DataModule1->Table2

DBNavigator1

DataSource

DataSource1

„MyChild5” – за допомогою цієї форми можна бачити діаграму залежності кількості працівників і прибутку. На формі розташований один компонент DBChart1. На рис. 14 зображено форму в середовищі Borland C++ Builder 6 з усіма компонентами.

Рис. 14. Форма „MyChild5” в Borland C++ Builder 6

„MyChild6” – за допомогою цієї форми можна бачити відсортовані дані по полю «Власність». Складається з таких компонентів для роботи з базою даних як: DBGrid1 для виведення таблиці, а також DataSource1 для зв’язку з компонентом бази даних . На рис. 15 зображено форму в середовищі Borland C++ Builder 6 з усіма компонентами.

Рис. 15. Форма „MyChild6” в Borland C++ Builder 6

В таблиці 11 представленні компоненти та їх властивості, які змінювались під час розробки форми.

Таблиця 11

Таблиця компонентів та їх властивостей форми Mychild6

Ім’я компоненту

Властивість

Значення

DBGrid1

DataSource

DataSource1

DataSource1

DataSet

DataModule1->Query1

BitBtn1

Kind

bkClose

„MyChild7” – форма для пошуку даних за Id таблиці „СГ Підприємства”. Складається з таких компонентів для роботи з базою даних як: таблиця для вводу інформації DBGrid(TDBGrid) надписів, які використовуються для підписів полів вводу. Компоненти Edit використовуються для вводу значення для пошуку в таблиці „СГ Підприємства”. Компонента :abel(TLabel) для виводу інформації Також використовується одна кнопка. На рис. 16 зображено форму в середовищі Borland C++ Builder 6 з усіма компонентами.

Рис. 16. Форма „MyChild7” в Borland C++ Builder 6

В таблиці 12 представленні компоненти та їх властивості, які змінювались під час розробки форми.

Таблиця 12

Таблиця компонентів та їх властивостей форми Mychild7

Ім’я компоненту

Властивість

Значення

Label1

Caption

Button1

Caption

Пошук

DBGrid1

DataSource

DataSource1

DataSource1

DataSet

DataModule1->Table2

BitBtn1

Kind

bkClose

Кнопка тут створена для пошуку інформації в таблиці „СГ підприемства” у лістингу 6 показаний код.

Лістинг 6

Код процедури Click для кнопки „Пошук”

void __fastcall TMyChild7::Button1Click(TObject *Sender)

{

String str;

DataModule1->Table2->IndexFieldNames = "Id";

str = Edit1->Text;

str = str.Trim();

DataModule1->Table2->FindNearest(ARRAYOFCONST((str)));

Label1->Caption = " "+DataModule1->Table2->Fields->Fields[1]->AsString;

}

„MyChild8” – форма для вибору зображення для кожного запису таблиці „СГ Підприємстваі”. Складається з таких компонентів для роботи з базою даних як: DBImage1 для відображення зображення, DBEdit1 для виводу запису на єкран, Button1 для вибору фото, OpenPictureDialog1 для відкриття діалогу На рис. 17 зображено форму в середовищі Borland C++ Builder 6 з усіма компонентами.

Рис. 17. Форма „MyChild8” в Borland C++ Builder 6

В таблиці 13 представленні компоненти та їх властивості, які змінювались під час розробки форми.

Таблиця 13

Таблиця компонентів та їх властивостей форми Mychild8

Ім’я компоненту

Властивість

Значення

DBEdit1

DataSource

DataSource1

Button1

Caption

Вибрати фото

DBGrid1

DataSource

DataSource1

DataSource1

DataSet

DataModule1->Table2

DBNavigator1

DataSource

DataSource1

BitBtn1

Kind

bkClose

Кнопка тут створена для відкриття діалогу вибору картинки у лістингу 8 показаний код.

Лістинг 8

Код процедури Click для кнопки „Вибрати фото”

void __fastcall TMyChild8::Button1Click(TObject *Sender)

{

if (OpenPictureDialog1->Execute() == true ) {

DBImage1->Picture->LoadFromFile(OpenPictureDialog1->FileName);

}

}

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]