- •Методичні вказівки
- •Лабораторна робота №1
- •Хід роботи
- •Короткі теоретичні відомості
- •Контрольні питання
- •Лабораторна робота №2
- •Короткі теоретичні відомості
- •Котрольні питання
- •Лабораторна робота №3 Тема: Використання масивів
- •Хід роботи
- •Котрольні питання
- •Лабораторна робота №4
- •Хід роботи
- •Котрольні питання
- •Лабораторна робота №5
- •Котрольні питання
- •Лабораторна робота №6 Тема: Розробка мультимедійних програм
- •Хід роботи
- •Завдання для самостійного виконання:
- •Контрольні питання
- •Лабораторна робота №7 Тема: Створення нової компоненти
- •Хід роботи
- •1. Вибір базового класу
- •2. Створення модуля компоненту
- •3. Встановлення компоненту
- •4. Ресурси компоненту
- •5. Установка
- •6. Перевірка компоненти
- •Контрольні питання
- •Лабораторна робота №8 Тема: Створення довідкової системи
- •1. Підготовка довідкової інформації
- •2. Проект довідкової системи
- •2. Використання Microsoft Word
- •3. Використання html Help Workshop
- •4. Створення файлу довідки
- •5. Компіляція
- •6. Вивід довідкової інформації
- •Контрольні питання
- •Лабораторна робота №9 Тема: Створення інсталяційного пакету
- •1. Новий проект
- •2. Структура
- •3. Вибір встановлюваних компонентів
- •4. Конфігурування системи користувача
- •5. Настройка діалогів
- •6. Системні вимоги
- •7. Створення образу установчого диску
- •Котрольні питання
- •Лабораторна робота №10
- •Завдання для самостійної роботи:
- •Короткі теоретичні відомості Компонент tTable
- •Контрольні питання
- •Лабораторна робота №11
- •Хід роботи
- •12. Змінити дану програму так, щоб всі невізуальні компоненти мітились на модулі даних. Короткі теоретичні відомості
- •Модулі даних
- •Контрольні питання
- •Лабораторна робота №12 Тема: Налаштування та робота з базами даних
- •Хід роботи
- •Короткі теоретичні відомості
- •Контрольні питання
- •11. Розмітити на першій формі дві кнопки для перегляду створених звітів. Короткі теоретичні відомості Створення простого звіту
- •Створення звітів "master-detail"
- •Відображення графічних і мемо-полів в звітах
- •Попередній перегляд звітів
- •Котрольні питання
- •Лабораторна робота № 14
- •Хід роботи
- •Короткі теоретичні відомості
- •Контрольні питання
- •Література:
- •Студентами денного відділення спеціальності
- •5.05010301 «Розробка програмного забезпечення»
- •8 2100, Вул.Раневицька, 12, м.Дрогобич Львівської обл.
12. Змінити дану програму так, щоб всі невізуальні компоненти мітились на модулі даних. Короткі теоретичні відомості
Visual Query Builder
Visual Query Builder (VQB) є візуальним засобом для побудови запитів, що базуються на SQL. За допомогою цього засобу можна будувати комплексні запити, володіючи деякими знаннями SQL або не маючи таких знань зовсім. Запити будуються крок за кроком шляхом послідовного додавання виразів, таблиць, полий і відносин, поки не вийде необхідний результат.
Visual Query Builder можна викликати, вибираючи компонент TQuery і натискуючи праву кнопку миші, після чого з'являється контекстне меню, з якого слід вибрати опцію Query Builder.
Приклади:
Обробник події OnClick для кнопки Button1:
void __fastcall TForm1::Button1Click(TObject *Sender) {if (Table1->Active) { Table1->Close(); Button1->Caption = " Відкрити список клієнтів"; } else { Table1->Open(); Button1->Caption= " Закрити список клієнтів"; } }
Обробник події OnClick для кнопки Button2:
void __fastcall TForm1::Button2Click(TObject *Sender) {if (Query1->Active) { Query1->Active = false; Button2->Caption = "Відкрити список замовлень"; } else { Query1->Active = true; Button2->Caption = "Закрити список замовлень"; } }
Обробники подій OnClick для радіокнопок RadioButton1 і RadioButton2:
void __fastcall TForm1::RadioButton1Click(TObject *Sender) {DBGrid1->DataSource = DataSource1; } //----------------------------------------------------------------------- void __fastcall TForm1::RadioButton2Click(TObject *Sender) { DBGrid1->DataSource =DataSource2; }
Тепер за допомогою цих радіокнопок можна перемикатися між списком клієнтів і списком замовлень.
Створимо обробник події OnClick для кнопки Button3:
void __fastcall TForm1::Button3Click(TObject *Sender) {if (Table1->Active) { Table1->SetRangeStart(); Table1->FieldByName("CustNo")->AsString = Edit1->Text;
Table1->SetRangeEnd(); Table1->FieldByName("CustNo")->AsString = Edit2->Text; Table1->ApplyRange(); } }
Модулі даних
Наявність на формі великої кількості невидимих компонентів у ряді випадків утрудняє проектування призначеного для користувача інтерфейсу. Крім того, нерідко буває зручно відділити компоненти, що відповідають за доступ до даних і бізнес-логіку інформаційної системи, від інтерфейсних елементів, наприклад, для полегшення її подальшої модернізації. Для цієї мети в C++ Builder є спеціальний тип, званий модулем даних - TDataModule. Компонент цього типу можна умовно вважати спеціальним видом форми, хоча він і породжений безпосередньо від TСomponent. Такий компонент-контейнер може містити компоненти із сторінки Data Access, а сам він не видимий користувачу під час виконання.
Щоб розробити програму з використанням модуля даних, потрібно -
компоненти Data Access поміщаються в модуль даних, а посилання на відповідний h-файл поміщається в модуль, пов'язаний з головною формою додатку.
Рис.4. Розміщення компонентів доступу до даних в DataModule
