
- •Розділ №1: «Побудова простого додатку.»
- •Розділ II: «Створення бази даних.»
- •Розділ№3: «Розробка елементів інформаційної системи на основі таблиць бази даних.»
- •Розділ №4: «Розробка елементів інформаційної системи на основі реляційної бази даних.»
- •Розділ 5: «Побудова додатку з багато сторінковим інтерфейсом.»
- •Розділ 6: «Розробка додатків з багатовіконним інтерфейсом.»
- •Розділ 8: «Створення запитів sql для таблиць баз даних.»
- •Виновки:
- •Література
Розділ 6: «Розробка додатків з багатовіконним інтерфейсом.»
Створюю нову форму. На новій формі розташувати компоненти DB Grid і
DB Navigator. Для цього з меню File обираємо команду New, де вказуємо Form. На формі розташовуємо компоненти DBGrid і DBNavigator, для візуалізації таблиці «розраховані величини». Додаємо до поекту компоненту DataModule і розташовуємо на ній компоненти Table і DataSource для візуалізації двох таблиць.
Розташувати на обох формах компоненти MainMenu. Відкрити клацанням
миші MainMenu для побудови структури меню.
Рис 6.1
Меню повинно мати три команди:
Робота з таблицею.
Перехід на іншу форму.
Вихід.
Команда меню «робота з таблицею» повинна мати вложені під команди:
Видалення запису.
Додавання запису.
Наступний запис.
Попередній запис.
7. Організація обчислень в таблицях бази даних.
Рис.6.2
В цьому коді для виведення похибок у вікно ListBox1 з масиву використовується:
ListBox1->Items->Append(poh[i]);
Для отримання опорів з таблиці і введення їх у масив використовується:
rt[i]=Table1->Fields->Fields[2]->AsFloat;
Для обчислення потужності використовується:
pr[i]=pow(it[i],2)*rt[i];
Для обчислення похибки використовується:
poh[i]=abs(pr[i]-pt[i]);
Надаємо програмі більш привабливого вигляду.
Запускаємо програму. Переконуємось у адекватності її роботи. Розроблена програма має вигляд:
Рис7.2
Зберігаємо проект у власний каталог.
Розділ 8: «Створення запитів sql для таблиць баз даних.»
Завантажуємо C++Builder. Створюємо нову форму на, якій розташовуємо об’єкти Query, Data Sourse, DBGrid та Table.
Рис.8.1
В об’єкті Query вказуємо DataBase Name- ім’я власного аліасу, властивість Activate встановлюємо True. Властивість Table Name не вказуємо, так як назви підключених таблиць вказуються безпосередньо при побудові звітів і запитів.
Для Data Sourse змінюємо властивість DataSet – Queri1.
Для DBGrid- Data Sourse- Data Sourse1.
Рис.8.2
На об’єкті Query натискаємо праву кнопку миші, у контекстному меню вибираємо SQL Builder. В DataBase вказуємо ім’я власного аліасу, в вікні Table вибираємо таблицю розраховані величини.
Рис.8.3
Натискаємо
кнопку пуск
і отримуємо готовий запит:
Рис.8.4
Надаємо формі більш привабливого вигляду. Запускаємо програму і впевнюємось у адекватності її роботи (мал. 41). Зберігаємо проект у власний каталог.
Рис.8.5
Розділ №9:«Робота з графікою в середовищі C++ Builder»
Завантажуємо C++ Builder. Створюємо нову форму. Розташовуємо на формі компоненту Button, для неї пишемо код, який би малював на формі електричну схему.
Для малювання використовуються наступні функції:
1. Canvas->Pen->Color=.
Встановлення кольору пера для малювання.
2. Canvas->MoveTo(х,у).
Переміщення пера в точку з координатами х,у.
3. Canvas->LineTo(х,у).
Малювання лінії з початкової точки в точку з координатами х,у.
4. Canvas->Rectangle(х1,у1,х2,у2);
Малювання прямокутника з координатами двох вершин (х1,у1,х2,у2).
5. Canvas->Ellipse(х1,у1,х2,у2).
Малювання еліпса з координатами (х1,у1,х2,у2).
Програмні коди мають такий вигляд:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit2.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm2 *Form2;
//---------------------------------------------------------------------------
__fastcall TForm2::TForm2(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm2::Button1Click(TObject *Sender)
{
Canvas->Pen->Color=clRed;
Canvas->MoveTo(40,80);
Canvas->LineTo(120,80);
Canvas->Rectangle(120,70,160,90);
Canvas->MoveTo(80,80);
Canvas->LineTo(80,120);
Canvas->Rectangle(70,120,90,160);
Canvas->MoveTo(80,160);
Canvas->LineTo(80,200);
Canvas->LineTo(120,200);
Canvas->Rectangle(120,210,160,190);
Canvas->MoveTo(160,200);
Canvas->LineTo(240,200);
Canvas->Rectangle(240,210,280,190);
Canvas->MoveTo(280,200);
Canvas->LineTo(320,200);
Canvas->LineTo(320,160);
Canvas->Rectangle(330,160,310,120);
Canvas->MoveTo(320,120);
Canvas->LineTo(320,80);
Canvas->LineTo(280,80);
Canvas->Rectangle(280,90,240,70);
Canvas->MoveTo(240,80);
Canvas->LineTo(160,80);
Canvas->MoveTo(200,80);
Canvas->LineTo(200,124);
Canvas->Rectangle(190,120,210,160);
Canvas->MoveTo(200,160);
Canvas->LineTo(200,240);
Canvas->LineTo(40,240);
Canvas->Ellipse(35,75,45,85);
Canvas->Ellipse(35,235,45,245);
Canvas->MoveTo(30,88);
Canvas->LineTo(50,72);
Canvas->MoveTo(30,248);
Canvas->LineTo(50,232);
Canvas->TextOutA(135,55,"R2");
Canvas->TextOutA(255,55,"R5");
Canvas->TextOutA(135,175,"R3");
Canvas->TextOutA(255,175,"R6");
Canvas->TextOutA(95,135,"R1");
Canvas->TextOutA(215,135,"R4");
Canvas->TextOutA(335,135,"R7");
Canvas->Rectangle(400,80,610,240);
Canvas->MoveTo(400,100);
Canvas->LineTo(610,100);
Canvas->MoveTo(400,120);
Canvas->LineTo(610,120);
Canvas->MoveTo(400,140);
Canvas->LineTo(610,140);
Canvas->MoveTo(400,160);
Canvas->LineTo(610,160);
Canvas->MoveTo(400,180);
Canvas->LineTo(610,180);
Canvas->MoveTo(400,200);
Canvas->LineTo(610,200);
Canvas->MoveTo(400,220);
Canvas->LineTo(610,220);
Canvas->MoveTo(440,80);
Canvas->LineTo(440,240);
Canvas->MoveTo(480,80);
Canvas->LineTo(480,240);
Canvas->MoveTo(520,80);
Canvas->LineTo(520,240);
Canvas->MoveTo(560,80);
Canvas->LineTo(560,240);
}
//---------------------------------------------------------------------------
Компілюємо програму і отримаємо: