Відображення та редагування багаторядкових текстових даних використовуючи компонент TDBMemo

Delphi-компонент TDBMemo являє собою багаторядковий текстовий редактор, який, зазвичай, зв'язується з текстовими полями великих розмірів або з BLOB-полями, що спеціалізуються на збереженні текстових даних. Такі поля іноді називають MEMO-полями і вони реалізовані в таблицях формату dBase і Paradox. Нагадаємо, що при проектуванні таблиці за допомогою утиліти Database Desktop поле такого типу позначається символом «M».

Зауваження: у компоненті можна використовувати буфер обміну за допомогою стандартних засобів операційної системи або успадкованими від предка TCustomMemo методами CopyToClipBoard, CutToClipBoard і PasteFromClipBoard.

Як уже зазначалося, при розгляді основних характеристик візуальних компонентів призначених для роботи з базами даних, серед властивостей компонентів такого типу, і зокрема компонента TDBMemo, виділяють дві, що забезпечують зв'язок з даними. Це властивість DataSource типу TDataSource (вказує на джерело даних, з яким пов'язаний компонент TDBMemo) і властивість DataField типу TDataField (вказує на поле набору даних, з яким пов'язаний компонент TDBMemo). Скориставшись даними властивостями пов'яжемо компонент TDBMemo з полем description таблиці cars («Автомобілі») бази даних autobazar («Автобазар»). Для цього, відкриємо delphi-проект, який ми створювали при розгляді однорядкового текстового редактора TDBEdit та доповнимо головну форму одним компонентом DBMemo1 типу TDBMemo та ще одним компонентом типу TLabel (містяться на закладках Data Controls та Standard палітри компонентів Delphi відповідно).

Читати повністю

Виведення записів набору даних в табличному вигляді використовуючи компонент TDBGrid

Для виведення записів набору даних в табличному вигляді зручно використовувати сітку, представлену delphi-компонентом типу TDBGrid. Зовнішній вигляд сітки відповідає внутрішній структурі таблиці бази даних і набору даних. При цьому, рядкам сітки відповідають записи, а стовпцям — поля.

Об'єкт TDBGrid зв'язується з джерелом даних через свою властивість DataSource, яке, в свою чергу, посилається на набір даних. Тобто, якщо на форму, де вже відповідним чином налаштовані невізуальні компоненти, наприклад, Table1 та DataSource1 помістити таблицю DBGrid1, і у властивості DataSource даної таблиці вказати значення DataSource1, то ми відразу ж побачимо вміст таблиці бази даних, що пов'язується з набором даних Table1. В нашому випадку це таблиця cars («Автомобілі») бази даних dbautobazar («Автобазар»).

tdbgrid_komponent1

Вивід вмісту таблиці cars в компоненті DBGrid1

Зауваження: у процесі виконання програми значення властивості DataSource можна змінювати, і таким чином, використовуючи одну таблицю TDBGrid, здійснювати відображення даних від декількох джерел.

Читати повністю

Побудова дерева обходу в глибину для орієнтованого графа в середовищі програмування delphi

Розглядуваний в даному параграфі delphi-проект реалізує процес побудови дерева обходу в глибину для орієнтованого графа. Головна форма проекту, як і у випадку з глибинним обходом неорієнтованого графа, ділиться на дві частини і складається з панелі інструментів та графічного редактора.

Головне вікно проекту "Побудова дерева обходу в глибину для орієнтованого графа"

  1. Панель інструментів (компонент типу TPanel): містить чотири кнопки: «Додати вершину» (типу TSpeedButton), «Додати ребро» (типу TSpeedButton), «Видалити граф» (типу TButton) та «Побудувати дерево обходу в гибину» (типу TButton). Відмітимо, що три кнопки з даного списук призначенні для побудови та видалення орієнтованого графа і четверта — реалізує його глибинний обхід.
  2. Графічний редактор (компонент типу TImage): призначений для побудови і візуалізації орієнтованого графа, а також візуалізації відповідного йому дерева обходу в глибину. Для того, щоб намалювати вершини графа потрібно, на першому кроці, активізувати кнопку панелі задач «Додати вершину». На наступному кроці, з допомогою лівої кнопки мишки, розставити їх у відповідній області форми. Після того, як вершини створено потрібно пов'язати їх відповідним орієнтованим ребром. Орієнтоване ребро в даній програмі створюється наступним чином: активізувавши кнопоку «Додати ребро» лівою кнопокою миші поєднюємо необхідні вершини. Для видалення графа чи побудови його дерева обходу в глибину необхідно скористатися однойменними кнопками що містяться на панелі задач.

В якості демонстрації можливостей роботи програми, наведемо приклад рішення задачі, яка полягає у побудові дерева обходу в глибину для орієнтованого графа, що міститься на настуному малюнку:

Читати повністю