Borland C Builder

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.

скачати

Зміст


Робота в Borland C + + Builder 3

Середовище розробки C + + Builder 3

Компоненти C + + Builder 3

Властивості компонентів 4

Події 4

Методи 5

Менеджер проектів 5

Створення додатків в C + + Builder 6

Компоненти Borland C + + Builder 8

Вибір компонентів для групових операцій 8

Установка поділюваних властивостей компонентів 8

Зміна розміру компонентів 8

Вирівнювання компонентів 9

Робота з базами даних у Borland C + + Builder. 11

Компонент TDataSource 11

Компонент TTable 12

Компонент TField 15

Компонент TDBGrid 17

Постачання додатків, створених за допомогою С + + Builder 1919

Постачання виконуваних файлів 19

Встановлення та налаштування Borland Database Engine 19

Встановлення додаткових компонентів додатка 21

Способи створення дистрибутивів 22

Створення дистрибутивів за допомогою InstallShield Exdivss 23

Список використаної літератури 27

Робота в Borland C + + Builder


Середовище розробки C + + Builder

C + + Builder являє собою SDI-додаток, головне вікно якого містить настроювану інструментальну панель (ліворуч) і палітру компонентів (праворуч). Крім цього, за умовчанням при запуску C + + Builder з'являються вікно інспектора об'єктів (ліворуч) і форма нової програми (праворуч). Під вікном форми додатку знаходиться вікно редактора коду.

Форми є основою додатків C + + Builder. Створення користувальницького інтерфейсу програми полягає в додаванні у вікно форми елементів об'єктів C + + Builder, званих компонентами. Компоненти C + + Builder розташовуються на палітрі компонентів, виконаної у вигляді багатосторінкового блокнота. Важлива особливість C + + Builder полягає в тому, що він дозволяє створювати власні компоненти і налаштовувати палітру компонентів, а також створювати різні версії палітри компонентів для різних проектів.

Компоненти C + + Builder

Компоненти поділяються на видимі (візуальні) і невидимі (невізуальні). Візуальні компоненти з'являються під час виконання точно так само, як і під час проектування. Прикладами є кнопки і редаговані поля. Невізуальні компоненти з'являються під час проектування як піктограми на формі. Вони ніколи не видно під час виконання, але володіють певною функціональністю (наприклад, забезпечують доступ до даних, викликають стандартні діалоги Windows і ін)

Для додавання компонента у форму можна вибрати мишею потрібний компонент у палітрі і клацнути лівою клавішею миші в потрібному місці проектованої форми. Компонент з'явиться на формі, і далі його можна переміщати, змінювати розміри та інші характеристики.

Кожен компонент C + + Builder має три різновиди характеристик: властивості, події і методи.

Якщо вибрати компонент з палітри і додати його до форми, інспектор об'єктів автоматично покаже властивості та події, які можуть бути використані з цим компонентом. У верхній частині інспектора об'єктів є список, що випадає, дозволяє вибирати потрібний об'єкт з наявних на формі.

Властивості компонентів

Властивості є атрибутами компонента, що визначають його зовнішній вигляд і поведінку. Багато властивостей компонента у колонці властивостей мають значення, що встановлюється за умовчанням (наприклад, висота кнопок). Властивості компонента відображаються на сторінці властивостей (Properties). Інспектор об'єктів відображає опубліковані (published) властивості компонентів. Крім published-властивостей, компоненти можуть і частіше за все мають загальні (public), опубліковані властивості, які доступні тільки під час виконання програми. Інспектор об'єктів використовується для установки властивостей під час проектування. Список властивостей розташовується на сторінці властивостей інспектора об'єктів. Можна визначити властивості під час проектування або написати код для видозміни властивостей компонента під час виконання програми.

При визначенні властивостей компонента під час проектування потрібно вибрати компонент на формі, відкрити сторінку властивостей в інспектора об'єктів, вибрати визначається властивість і змінити його за допомогою редактора властивостей (це може бути просте поле для введення тексту або числа, випадаючий список, список, що розкривається, діалогова панель і т.д.).

Події

Сторінка подій (Events) інспектори об'єктів показує список подій, які розпізнаються компонентом (програмування для операційних систем з графічним інтерфейсом, зокрема, для Windows 95 або Windows NT пре вважає опис реакції додатки на ті чи інші події, а сама операційна система займається постійним опитуванням комп'ютера з метою виявлення настання якої-небудь події). Кожен компонент має свій власний набір обробників подій. У C + + Builder слід писати функції, звані обробники подій, і пов'язувати події з цими функціями. Створюючи обробник тієї чи іншої події, ви доручаєте програмі виконати написану функцію, якщо ця подія відбудеться.

Для того щоб додати обробник подій, потрібно вибрати на формі за допомогою миші компонент, якому необхідний обробник подій, потім відкрити сторінку подій інспектора об'єктів і двічі клацнути лівою клавішею миші на колонці значень поруч з подією, щоб змусити C + + Builder згенерувати прототип обробника подій і показати його в редакторі коду. При цьому автоматично генерується текст порожній функції, і редактор відкривається в тому місці, де слід вводити код. Курсор позиціонується всередині операторних дужок {... }. Далі потрібно ввести код, який повинен виконуватися при настанні події. Оброблювач подій може мати параметри, які вказуються після імені функції в круглих дужках.

Методи

Метод є функцією, яка пов'язана з компонентом, і яка оголошується як частина об'єкту. Створюючи обробники подій, можна викликати методи, використовуючи наступну нотацію: ->, наприклад:

Edit1-> Show ();

Відзначимо, що при створенні форми пов'язані з нею модуль і заголовний файл з розширенням *. h генеруються обов'язково, тоді як при створенні нового модуля він не зобов'язаний бути пов'язаний з формою (наприклад, якщо в ньому містяться процедури розрахунків). Імена форми і модуля можна змінити, причому бажано зробити це відразу після створення, поки на них не з'явилося багато посилань в інших формах і модулях.

Менеджер проектів

Файли, що утворюють додаток - форми і модулі - зібрані в проект. Менеджер проектів показує списки файлів і модулів програми і дозволяє здійснювати навігацію між ними. Можна викликати менеджер проектів, вибравши пункт меню View / Project Manager. За замовчуванням знову створений проект отримує ім'я Project1.cpp.

За замовчуванням проект спочатку містить файли для однієї форми і вихідного коду одного модуля. Однак більшість проектів містять кілька форм і модулів. Щоб додати модуль або форму до проекту, потрібно клацнути правою кнопкою миші і вибрати пункт New Form з контекстного меню. Можна також додавати існуючі форми і модулі до проекту, використовуючи кнопку Add контекстного меню менеджера проектів і обираючи модуль або форму, яку потрібно додати. Форми і модулі можна видалити в будь-який момент протягом розробки проекту. Однак, через те, що форма пов'язані завжди з модулем, не можна видалити одне без видалення іншого, за винятком випадку, коли модуль не має зв'язку з формою. Видалити модуль з проекту можна, використовуючи кнопку Remove менеджера проектів.

Якщо вибрати кнопку Options у менеджері проектів, відкриється діалогова панель опцій проекту, в якій можна вибрати головну форму додатку, визначити, які форми будуть створюватися динамічно, які параметри компіляції модулів (в тому числі створених в Delphi, так як C + + Builder може включати їх у проекти) та компонування.

Важливим елементом середовища розробки C + + Builder є контекстне меню, що з'являється при натисканні на праву клавішу миші і пропонує швидкий доступ до найбільш часто використовуваних команд.

Зрозуміло, C + + Builder володіє вбудованою системою контекстно-залежної допомоги, доступної для будь-якого елемента інтерфейсу і є великим джерелом довідкової інформації про C + + Builder.

Створення додатків в C + + Builder

Першим кроком у розробці програми C + + Builder є створення проекту. Файли проекту містять згенерований автоматично вихідний текст, який стає частиною програми, коли воно скомпільовано і підготовлено до виконання. Щоб створити новий проект, потрібно вибрати пункт меню File / New Application.

C + + Builder створює файл проекту з ім'ям за умовчанням Project1.cpp, а також make-файл з ім'ям за умовчанням Project1.mak. При внесенні змін до проекту, таких, як додавання нової форми, C + + Builder оновлює файл проекту.

Проект або додаток зазвичай мають кілька форм. Додавання форми до проекту створює наступні додаткові файли:

  • Файл форми з розширенням. DFM, що містить інформацію про ресурси вікон для конструювання форми

  • Файл модуля з розширенням. CPP, що містить код на C + +.

  • Заголовний файл з розширенням. H, що містить опис класу форми.

Коли ви додаєте нову форму, файл проекту автоматично оновлюється.

Для того щоб додати одну або більше форм до проекту, виберіть пункт меню File / New Form. З'явиться порожня форма, яка буде додана до проекту. Можна скористатися пунктом меню File / New, вибрати сторінку Forms і вибрати відповідний шаблон з репозиторія об'єктів.

Для того, щоб просто відкомпілювати поточний проект, з меню Compile потрібно вибрати пункт меню Compile. Для того щоб відкомпілювати проект і створити виконуваний файл для поточного проекту, з меню Run потрібно вибрати пункт меню Run. Компонування проекту є інкрементний (перекомпілюються лише змінені модулі).

Якщо при виконанні програми виникає помилка часу виконання, C + + Builder робить паузу у виконанні програми і показує редактор коду з курсором, встановленим на операторі, що є джерелом помилки. Перш ніж робити необхідну корекцію, слід перезапустити програму, вибираючи пункт меню Run з контекстного меню або з меню Run, закрити програму і лише потім вносити зміни в проект. У цьому випадку зменшиться ймовірність втрати ресурсів Windows.


Компоненти Borland C + + Builder


Вибір компонентів для групових операцій

Для ефективної розробки користувальницьких інтерфейсів додатків C + + Builder нерідко виникає необхідність у маніпулюванні компонентами на формах. Більшість операцій для маніпулювання компонентами знаходяться в меню Edit: До різних опцій цього меню слід звертатися після того, як на формі ви ран один або кілька компонентів, властивості яких потрібно змінити.

Вибрати один компонент можна наступними способами:

  • Вибравши з допомогою миші компонент на формі

  • Вибравши ім'я компонента в селекторі об'єктів.

  • Переходом до компонента на формі, натиснувши клавішу Tab.

Вибрати декілька компонентів можна наступними способами:

  • Утримуючи Shift, клацнути мишею на кожному компоненті.

  • Натиснути ліву клавішу миші і оточити потрібні компоненти прямокутним контуром.

Установка поділюваних властивостей компонентів

Більшість візуальних компонентів мають загальні властивості, (наприклад, Visible, Width, Left). Для установки однакових значень загальних властивостей для декількох компонентів необхідно виконати наступні дії:

1. Вибрати декілька настроюваних компонентів. При цьому сторінка властивостей об'єктів буде відображати тільки ті властивості, які є у всіх обраних компонентів.

2. Встановити значення властивостей, загальних для виділених компонентів.

Зміна розміру компонентів

Зміна розміру компонента можна проводити як при додаванні його на форму, так і після цього.

При додаванні компонента слід вибрати його на палітрі компонентів. Далі потрібно помістити курсор миші на форму, натиснути ліву клавішу і переміщати мишу, в результаті чого на формі з'явиться прямокутник, що зображає межу майбутнього компонента. Коли прямокутник придбає необхідні розміри, потрібно відпустити кнопку миші.

Якщо перевести курсор миші на один з що з'явилися навколо компонента маленьких чорних квадратиків, курсор миші змінює форму. Переміщуючи цей курсор і разом з ним кордон компонента, можна змінювати його розміри.

Для зміни розмірів декількох компонентів слід вибрати їх одним з описаних вище способів. Далі потрібно вибрати пункт меню Edit / Size. З'явиться діалогове вікно Size. Виберіть опції розміру. Для точної установки розміру в пікселях можна ввести числа в поля Width і Height. Далі потрібно натиснути кнопку OK.

Можна додати кілька копій компонента одного типу, вибираючи компонент з палітри при натиснутій клавіші Shift. У цьому випадку навколо компонента з'являється прямокутник, що оточує цей компонент. Після цього кожен клацання мишею на формі приводить до появи на ній копії компонента. Закінчивши режим багаторазового копіювання, слід клацнути мишею на інструменті вибору курсору (перша кнопка на палітрі компонентів з зображенням стрілки).

Вирівнювання компонентів

Для вирівнювання компонентів на формі можна використовувати такі комбінації клавіш:

Shift + стрілки Змінює розмір компонента на один піксель в напрямку вибраної стрілки
Shift + Ctrl + стрілки Переміщує компонент на одну одиницю сітки в напрямку вибраної стрілки
Ctrl + стрілки Переміщує компонент на один піксель в напрямку вибраної стрілки

Можна також вирівняти компоненти, використовуючи пункт меню View / Alignment Palette. Для цього потрібно:

  1. Вибрати компоненти для вирівнювання.

  2. Вибрати пункт меню View / Alignment Palette.

  3. Вибрати потрібну кнопку.

Можна вирівняти компоненти, використовуючи пункт меню Edit / Align. Для цього потрібно:

  1. Вибрати компоненти для вирівнювання.

  2. Вибрати пункт меню Edit / Align. З'явиться діалогове вікно Alignment.

  3. Вибрати потрібну опцію і натиснути на кнопку OK.

Можна змінити умови вирівнювання компонент, використовуючи пункт меню Options / Environment. Для цього потрібно:

1. Вибрати пункт меню Options / Environment. Діалогове вікно Environment з'явиться відкритим на сторінці Preferences.

2. У групі Form designer можна вибрати наступні опції:

  • Display grid - зробити сітку з точок на формі видимої для вирівнювальних компонентів

  • Snap to grid - змусити ліві і верхні боку компонентів розташуватися на лініях сітки.

3. Для того, щоб змінити відстань між вузлами сітки, потрібно ввести нові значення замість наявних. Значення за замовчуванням - 8 пікселів по осі X (по горизонталі) і по осі Y (по вертикалі).

4. Натиснути OK.

Робота з базами даних у Borland C + + Builder.


Використовуючи Borland C + + Builder, можна створити програми, що працюють як з однокористувацький базами даних (БД), так і з серверними СУБД, такими як Oracle, Sybase, Informix, Interbase, MS SQL Server, DB2, а також з ODBC-джерелами. Можливості C + + Builder, пов'язані зі створенням додатків, що використовують бази даних, досить великі для того, щоб описати їх в одній статті. Тому сьогодні ми розглянемо лише найпростіші можливості роботи з таблицями баз даних.

Набір даних в C + + Builder - це об'єкт, який складається з набору записів, кожна з яких, у свою чергу, складається з полів, і покажчика поточного запису. Набір даних може мати повну відповідність з реально існуючої таблицею або бути результатом запиту, він може бути частиною таблиці або об'єднувати між собою декілька таблиць.

Набір даних в C + + Builder є нащадком абстрактного класу TDataSet (абстрактний клас - це клас, від якого можна породжувати інші класи, але не можна створити екземпляр об'єкта даного класу). Наприклад, класи TQuery, TTable і TStoredProc, що містяться на сторінці палітри компонентів Data Access, - спадкоємці TDBDataSet, який, у свою чергу, є спадкоємцем TDataSet. TDataSet містить абстракції, необхідні для безпосереднього управління таблицями або запитами, забезпечуючи засоби для того, щоб відкрити таблицю або виконати запит і переміщатися по рядках.

Компонент TDataSource

Компонент DataSource діє як посередник між компонентами TDataSet (TTable, TQuery, TStoredProc) і компонентами Data Controls - елементами управління, що забезпечують представлення даних на формі. Компоненти TDataSet управляють зв'язками з бібліотекою Borland Database Engine (BDE), а компонент DataSource управляє зв'язками з даними в компонентах Data Controls.

У типових додатках БД компонент DataSource, як правило, пов'язаний з одним компоненом TDataSet (TTable або TQuery) і з одним або більше компонентами Data Controls (такими, як DBGrid, DBEdit та ін.) Зв'язок цього компоненту з компонентами TDataSet і DataControls здійснюється з використанням наступних властивостей і подій:

  • Властивість DataSet компонента DataSource ідентифікує ім'я компонента TDataSet. Можна привласнити значення властивості DataSet на етапі виконання або за допомогою інспектора об'єктів на етапі проектування.

  • Властивість Enabled компонента DataSource активізує або зупиняє взаємозв'язок між компонентами TDataSource і Data Controls. Якщо значення властивості Enabled одно true, то компоненти Data Controls, пов'язані з TDataSource, сприймають зміни набору даних. Використання властивості Enabled дозволяє тимчасово роз'єднувати візуальні компоненти Data Controls і TDataSource, наприклад, для того, щоб у разі пошуку в таблиці з великою кількістю записів не відображати на екрані гортання всієї таблиці.

  • Властивість AutoEdit компонента DataSource контролює, як ініціюється редагування для компонентів Data Controls. Якщо значення властивості AutoEdit одно true, то режим редагування починається безпосередньо при отриманні фокусу компонентом Data Controls, пов'язаних з даним компонентом TDataSet. В іншому випадку режим редагування починається, коли викликається метод Edit компонента TDataSet, наприклад, після натиснення користувачем кнопки Edit на компоненті DBNavigator. · Подія OnDataChange компонента DataSource настає, коли відбувається зміна значення поля, записи, таблиці, запиту.

  • Подія OnUpdateData компонента DataSource настає, коли користувач намагається змінити поточну запис у TDataSet. Оброблювач цієї події слід створювати, коли потрібно дотриматися умов посилальної цілісності або обмеження, що накладаються на значення полів змінною бази даних.

Компонент TTable

Найбільш простим способом звернення до таблиць баз даних є використання компонента TTable, що надає доступ до однієї таблиці. Для цієї мети найбільш часто використовуються наступні властивості:

  • Active - вказує, відкрита (true) чи ні (false) дана таблиця.

  • DatabaseName - ім'я каталогу, що містить шукану таблицю, або псевдонім (alias) віддаленої БД (псевдоніми встановлюються за допомогою утиліти конфігурації BDE, опис якої присутня в багатьох джерелах, присвячених продуктам Borland, або за допомогою SQL Explorer, що викликається за допомогою пункту меню Database / Explore ). Ця властивість може бути змінено тільки в разі, якщо таблиця закрита (її властивість Active одно false), наприклад:

Table1-> Active = false;
Table1-> DatabaseName = "BCDEMOS"
Table1-> Active = true;

  • TableName - ім'я таблиці.

  • Exclusive - якщо це властивість приймає значення true, то ніякий інший користувач не може відкрити таблицю, якщо вона відкрита даними додатком. Якщо це властивість одно false (значення за замовчуванням), то інші користувачі можуть відкривати цю таблицю.

  • IndexName - ідентифікує вторинний індекс для таблиці. Цю властивість не можна змінити, поки таблиця відкрита.

  • MasterFields - визначає ім'я поля для створення зв'язку з іншою таблицею.

  • MasterSource - ім'я компоненту TDataSource, за допомогою якого TTable буде отримувати дані з пов'язаної таблиці.

  • ReadOnly - якщо це властивість одно true, таблиця відкрита в режимі "тільки для читання". Не можна змінити властивість ReadOnly, поки таблиця відкрита.

  • Eof, Bof - ці властивості приймають значення true, коли покажчик поточного запису розташований на останній або відповідно першого запису таблиці.

  • Fields - масив об'єктів TField. Використовуючи цю властивість, можна звертатися до полів за номером, що зручно, коли заздалегідь невідома структура таблиці:

Edit1-> Text = Table1-> Fields [2] -> AsString;

Найбільш часто при роботі з компонентом TTable використовуються наступні методи:

  • Open і Close встановлюють значення властивості Active рівними True і False відповідно.

  • Refresh дозволяє заново вважати набір даних з БД.

  • First, Last, Next, Prior переміщують покажчик поточного запису на першу, останню, наступну і попередню запису відповідно, наприклад:

Table1-> First ();
while (! Table1-> Eof)
{
/ / Щось робимо ...
Table1-> Next ();
};

  • MoveBy переміщає покажчик на вказане число рядків (воно може бути і негативним) в межах таблиці

  • Insert, Edit, Delete, Append - переводять таблицю в режими вставки запису, редагування, видалення, додавання запису відповідно.

  • Post - здійснює фізичне збереження змінених даних. Наприклад:

Table2-> Insert ();
Table2-> Fields [0] -> AsInteger = 100;
Table2-> Fields [1] -> AsString = Edit1-> Text;
Table2-> Post ();

  • Cancel - відміняє внесені зміни, не збережені фізично.

  • FieldByName - надає можливість звернення до даних у полях на ім'я поля:

S = Table1-> FieldByName ("area") -> AsString;

  • SetKey перемикає таблицю в режим пошуку.

  • GotoKey починає пошук рядка, значення Fields [n] якої одно вибраному, де n - номер колонки таблиці, починаючи з 0:

Table1-> SetKey ();
Table1-> Fields [0] -> AsString = Edit1-> Text;
Table1-> GotoKey ();

  • SetRangeStart, SetRangeEnd, ApplyRange дозволяють вибрати потрібні рядки на основі діапазону значень якого-небудь поля.

Table1-> SetRangeStart ();
Table1-> Fields [0] -> AsString = Edit1-> Text;
Table1-> SetRangeEnd ();
Table1-> Fields [0] -> AsString = Edit2-> Text;
Table1-> ApplyRange ();

  • FreeBookmark, GetBookmark, GotoBookmark-дозволяють створити позначену рядок у таблиці і потім повернутися до неї пізніше. Методи Bookmark використовують клас TBookmark. Метод GetBookmark встановлює закладку на поточному Рядок таблиці. GotoBookmark здійснює переміщення в таблиці до рядка, раніше зазначеної закладкою. Метод FreeBookmark використовується для знищення об'єкту типу TBookmark:

TBookmark Marker = Table1-> GetBookmark ();
Table1-> GotoBookmark (Marker);
Table1-> FreeBookmark (Marker);

Події компонента TTable дозволяють будувати і контролювати поведінку додатку ий БД. Наприклад, подія BeforePost настає перед вставкою або зміною запису, подія AfterPost - після збереження вставленої або зміненої запису, подія AfterDelete - після видалення запису і т.д.

Щоб внести компонент TTable у форму, потрібно виконати наступне:

1. Використовуючи сторінку Data Access палітри компонентів, розмістити компонент TTable на формі або в модулі даних.

2. Властивості DatabaseName присвоїти ім'я каталогу, де знаходиться БД, або псевдо има БД.

3. Властивості TableName привласнити ім'я таблиці або вибрати таблицю зі списку.

4. Внести до форму компонент DataSource і встановити значення властивості DataSet рівним імені компонента TTable.

5. Внести компоненти Data Controls і пов'язати їх з компонентом DataSource для того, щоб відобразити на екрані дані з таблиці БД.

Компонент TField

Об'єкти класу TField є властивістю об'єкта TDataSet (нагадаємо, що деякі властивості об'єктів самі є об'єктами з їх власними наборами властивостей, і TField - один з них).

Властивість Fields об'єкта типу TDataSet дозволяє звертатися до окремих полів набору даних. Властивість Fields є масивом або набором об'єктів TField, динамічно створюються під час виконання програми. Елементи масиву відповідають колонкам таблиці.

Об'єкт TField не робить ніяких припущень щодо типів даних, з якими він пов'язаний. Він має кілька властивостей, що дозволяють встановити або повернути назад значення поля, наприклад, AsString, AsBoolean, AsFloat, AsInteger. Найбільш часто використовуються властивості Text (дані для тексту, що виводиться в пов'язаний з даним полем інтерфейсний елемент) і FieldName (ім'я поля бази даних).

Fields Editor дозволяє створити так званий статичний список полів таблиці, що додаються до опису класу форми. Коли вперше використовуються такі компоненти TDataSet, як компонент TTable або TQuery, список полів для них динамічно генерується в процесі виконання програми на основі наявних стовпців таблиць або результатів SQL-запиту. Fields Editor дозволяє визначити і потім модифіковані статичний список компонентів Field на етапі проектування програми. При внесенні колонок з використанням Fields Editor для кожного з полів, доданих до TDataSet, виникають об'єкти TField, після чого можна побачити ці поля в інспекторі об'єктів і використовувати у програмах їх властивості, події і методи.

Використовувати Fields Editor потрібно таким чином:

  1. Розмістити компонент TTable або TQuery на формі.

  2. Встановити властивість DatabaseName для TTable або TQuery.

  3. Встановити властивість TableName компонента TTable або властивість SQL компонента TQuery.

  4. Вибрати компонент TDataSet на формі і натиснути праву клавішу миші, після чого з'явиться контекстне меню.

  5. З контекстного меню вибрати Fields Еditor. З'явиться порожнє вікно із заголовком, що збігається з ім'ям компонента TTable.

  6. Знову натиснути праву клавішу миші над порожнім вікном і з контекстного меню виб ати опцію Add Fields.Імена всіх колонок таблиці або запиту з'являться в діалоговій панелі Add Fields.

  7. Вибрати поля, які потрібно внести до списку об'єктів, і натиснути OK.

  8. Якщо потрібно створити обчислюване поле на основі наявних полів, натиснути праву клавішу миші і з контекстного меню вибрати New Field для створення нового поля на основі існуючого або для створення обчислюваного поля (в подальшому слід створити код обробника події OnCalcFields компонента TTable, де і проводяться необхідні обчислення ).

  9. Якщо необхідно видалити статичне поле зі списку полів в наборі даних, потрібно натиснути праву клавішу миші і з контекстного меню вибрати Delete.

Після того, як у Fields Editor додані поля, вони з'являться в інспектора об'єктів, а посилання на них - у h-файлі форми.

Якщо тепер застосувати операцію drag-and-drop до виділених в Fields Editor полях, перенісши їх на форму, то можна отримати готову форму з необхідним набором інтерфейсних елементів (у нашому випадку - DBEdit, що дозволяє відображати і редагувати рядкові, числові, грошові та інші поля , чиї значення представимо у вигляді рядка символів, і DBImage, що дозволяє відображати графічні поля і використовувати Clipboard для їх редагування). Якщо до такої форми додати компонент TDBNavigator (цей компонент реалізує основні методи TTable і TQuery, пов'язані з редагуванням даних) і пов'язати його з наявним компонентом TDataSource, а потім скомпілювати проект, отримаємо додаток для перегляду і редагування даних в таблиці.

При роботі Fields Editor створюються об'єкти, відповідні дивись в інспекторі об'єктів полях. Ці об'єкти є нащадками об'єктного типу TField. Таблиця 1 описує існуючі класи таких об'єктів:

Таблиця 1. Нащадки TField

Нащадок Опис
TStringField Текстові дані фіксованої довжини до 8192 символів.
TAutoIncField Цілі числа від -2,147,483,648 до 2,147,483,647. Призначений для нумерації ст ок в наборі даних. Нащадок TIntegerField.
TIntegerField Цілі числа від -2,147,483,648 до 2,147,483,647.
TSmallIntField Цілі числа від -32768 до 32767.
TWordField Цілі числа від 0 до 65535.
TFloatField Дійсні числа з абсолютною величиною від 1.2x10e-324 до 1.7x10e308 з точністю до 15-16 цифри.
TCurrencyField Дійсні числа з абсолютною величиною від 1.2x10e-324 до 1.7x10e308 з точністю до 15-16 цифри.
TBooleanField Значення true або false.
TDateTimeField Значення дати й часу.
TDateField Значення дати.
TTimeField Значення часу.
TBlobField Довільне поле даних без обмежень розміру.
TBytesField Довільне поле даних без обмежень розміру.
TVarBytesField Довільне поле даних до 65535 символів з фактичною довжиною, представленої в перших двох байтах.
TMemoField Текст довільної довжини.
TGraphicField Графічне поле довільної довжини, наприклад, бітовий масив.

Компонент TDBGrid

Компонент TDBGrid забезпечує табличний спосіб відображення на екрані рядків даних з компонентів TTable або TQuery. Програма може використовувати TDBGrid для відображення, вставки, знищення, редагування даних БД. Зазвичай DBGrid використовується в поєднанні з DBNavigator, хоча можна використовувати й інші інтерфейсні елементи, включивши до їх обробники подій методи First, Last, Next, Ptior, Insert, Delete, Edit, Append, Post, Cancel компонента TTable.

Зовнішній вигляд таблиці (наприклад, написи в заголовках стовпців) може бути змінено за допомогою редактора властивостей Columns Editor. Для виклику Columns Editor потрібно або вибрати відповідну опцію в контекстному меню компонента DBGrid або клацнути мишею в колонці значень навпаки властивості Columns в інспектора об'єктів.

Другим способом отримання контролю над характеристиками DBGrid або іншими компонентами є створення описаним вище способом статичного набору компонентів TField. Маючи компонент типу TField, створений для кожного з полів у наборі даних, можна встановити ширину, формат, маску, розташування, позначку для відображення в DBGrid та інші характеристики.

Поля Float, Integer і Date володіють властивістю DisplayMask. Цю властивість можна використовувати, щоб форматувати дані в компоненті DBGrid або іншому компоненті Data Controls. Наприклад, екранний формат mm-dd-yy може використовуватися для розміщення полів типу дата.

Деякі компоненти TField (наприклад, TStringField) мають властивість EditMask, яке можна встановити, вводячи дані в DBGrid та інші компоненти Data Controls. Для установки властивості EditMask потрібно встановити компонент Field в Object Inspector і вибрати властивість EditMask, після чого з'явиться діалогова панель Input Mask Editor,. Щоб перевірити маску редагування, потрібно ввести значення в полі Test Input.

Постачання додатків, створених за допомогою С + + Builder




















Однією з найважливіших проблем при розробці замовних програмних продуктів є остаточне складання проекту і постачання додатків. Ця проблема може бути вирішена різними способами залежно від умов поставки, кількості установок, складу поставленого продукту.

Постачання виконуваних файлів

При остаточному складанні виконуваного файлу (тобто безпосередньо перед створенням дистрибутива) слід прибрати з виконуваного файлу налагоджувальну інформацію. Для цього слід з менеджера проектів викликати діалогову панель Project Options і натиснути кнопку Release.

Якщо в проекті використовуються модулі і форми Delphi, слід відключити всі опції в секції Debugging і включити опцію Optimization в секції Code Generation на сторінці Pascal.

У тій же діалогової панелі слід вибрати піктограму додатки (сторінка Application). Її можна створити за допомогою вхідного в комплект постачання С + + Builder графічного редактора, який можна запустити, вибравши пункт меню Tools / image Editor. Крім цього, слід вказати назву програми (тобто рядок, яка буде відображатися в панелі завдань Windows) і ім'я файлу довідки, в якому містяться екрани контекстно-залежної допомоги.

Якщо посилання на довідковий файл присутній в опціях проекту, можна зв'язати екрани допомоги з інтерфейсними елементами додатку. Для цієї мети слід встановити значення властивості HelpContext інтерфейсних елементів програми рівним номерами розділів відповідних екранів допомоги з секції [MAP] файлу проекту довідки. У цьому випадку після компіляції програми натискання на клавішу F1 буде виводити на екран вікно довідкової системи з розділом довідки, що описує інтерфейсний елемент, що має фокус вводу.

Встановлення та налаштування Borland Database Engine

Якщо програма не використовує бази даних, в більшості випадків буде достатньо просто скопіювати на комп'ютер користувача виконуваний файл і інші входять у комплект постачання файли (наприклад, файл довідки, файл змісту довідки та ін.)

Якщо програма використовує бази даних, слід, крім програми, встановити на комп'ютер користувача бібліотеку Borland Database Engine. Встановлення цієї бібліотеки полягає в копіюванні файлів цієї бібліотеки на комп'ютер користувача, внесення відомостей про неї до реєстру (розділ HKEY_LOCAL_MACHINE / / SOFTWARE / / Borland / / Database Engine), встановлення піктограми для утиліти конфігурації BDE, а також налаштування псевдонімів, необхідних для коректної роботи цього додатка.

У процесі установки BDE можуть виникнути такі проблеми. По-перше, у користувача на комп'ютері можуть бути встановлені інші програми, що використовують цю бібліотеку. Якщо скопіювати на такий комп'ютер файл конфігурації BDE поверх наявного, працездатність цих програм може бути порушена через те, що зникнуть описи псевдонімів, що використовуються ними. Тому при додаванні своїх псевдонімів краще користуватися опцією File / Merge утиліти конфігурації BDE або створити псевдоніми вручну.

Можна подивитися на цю проблему з іншого боку. Як уникнути втрати працездатності вашої програми, якщо інший програміст встановить свій файл конфігурації BDE поверх встановленого вами? Можливе рішення цієї проблеми - створювати псевдоніми динамічно під час роботи програми або аналізувати їх існування при запуску і створювати їх, якщо з якихось причин вони зникли. Багато розроблювачів зберігають інформацію про них в локальних ini-файлах поза IDAPI32.CFG.

Друга проблема може бути пов'язана з розбіжністю версій BDE. Якщо з моменту виходу використовуваної вами версії BDE пройшов якийсь час (а на даний момент після C + + Builder з'явилися такі продукти, як Delphi і IntraBuilder 1.5, що містять більш нову версію BDE, ніж С + + Builder), є ризик замінити старою версією BDE новішу, якщо на комп'ютері користувача встановлено ці засоби розробки або створені з їх допомогою програми, що може порушити їх працездатність.

Щоб уникнути подібних неприємностей, можна скористатися однією недокументованих особливостей BDE. Справа в тому, що час створення файлів цієї бібліотеки збігається з номером версії BDE, чим і можна скористатися. Шлях до файлів BDE слід шукати в реєстрі Windows (ключ HKEY_LOCAL_MACHINE \ SOFTWARE \ Borland \ Database Engine, параметри CONFIGFILE01 і DLLPATH).

Обов'язково слід переконатися, що ці каталоги і файли дійсно існують. На жаль, не всі користувачі грамотно деінсталює додатки. Часто буває, що став непотрібним каталог просто стирається, при цьому каталог з BDE може бути як видалений, а може, й ні. При цьому, швидше за все (виключення бувають дуже рідко) відповідний ключ реєстру збережеться, "збиваючи з пантелику" інсталяційне додаток.

Відзначимо, що слід також встановити на комп'ютер користувача необхідні драйвери SQL Links для доступу до серверних СУБД, якщо вони використовуються, а також клієнтське програмне забезпечення для роботи з відповідною серверної СУБД (наприклад, SQL * Net для Oracle). Крім того, користувач повинен володіти необхідними привілеями для доступу до використовуваних вашим застосуванням об'єктів бази даних - таблицями, збереженим процедур та ін Якщо ви готуєте і серверну частину програми, слід надати адміністратору бази даних так званий DDL-сценарій серверної частини (DDL - Data Definition Language), що представляє собою сценарій створення об'єктів бази даних, написаний на SQL або на його процедурному розширенні, характерному для даного сервера баз даних. Подібний сценарій може бути створений вручну або за допомогою якого-небудь CASE-засоби типу ERwin компанії Logic Works (CASE, що розшифровується як Computer-Aided Software / System Engineering, являє собою технологію проектування БД, засновану на графічному описі сутностей, атрибутів та зв'язків між ними).

Якщо ваш додаток використовує ODBC, слід встановити відповідний ODBC-драйвер і, можливо, 32-розрядний ODBC-адміністратор - він у загальному випадку не зобов'язаний бути присутнім на комп'ютері користувача.

Встановлення додаткових компонентів додатка

Якщо ваш додаток використовує ActiveX-компоненти, слід встановити в каталог Windows \ System відповідний файл *. OCX і внести до реєстру відповідні гілки (HKEY_CLASS_ROOT \ CLSID \ ....) для реєстрації відповідних OLE-серверів.

Якщо ваш додаток використовує будь-які продукти третіх фірм (наприклад, Run-time-версії генераторів звітів сторонніх виробників, наприклад, Crystal Reports), слід встановити їх на комп'ютер користувача у відповідності з інструкціями з поставки, наданими компанією-виробником.

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

Найпростіший спосіб - не використовувати екзотичних шрифтів. Шрифти типу Arial, Courier і Times New Roman, як правило, є на всіх комп'ютерах. Якщо ж такої впевненості немає, можна або запропонувати користувачеві вибирати шрифти для застосування при його запуску та зберігати налаштування в файлах (це незручно, тому що при цьому написи можуть не вміститися на кнопках, мітки можуть "наїхати" один на одного і т.д. ), або інсталювати потрібні шрифти разом з додатком. У випадку Windows 95 достатньо скопіювати їх до каталогу Fonts. Можна також присвоїти "своїм" шрифтам унікальні нестандартні імена, щоб випадково не замінити ними шрифти, використовувані іншими додатками (замінивши в англомовній версії Windows шрифт Arial його російськомовною версією, ви в деяких випадках можете позбавити вашого користувача можливості писати в текстових процесорах по-французьки або по-німецьки цим шрифтом).

Способи створення дистрибутивів

Перш ніж описати процес створення дистрибутива, розглянемо, що саме робить інсталяційне додаток.

По-перше, воно, як випливає з вищевикладеного, копіює файли (*. exe, *. ocx, *. dll, *. hlp, шрифти, дані тощо) у відповідні каталоги.

По-друге, воно може модифікувати реєстр.

По-третє, воно може модифікувати змінну оточення PATH.

По-четверте, воно створює програмну групу і піктограми, а також модифікує меню Windows-95 або Windows NT.

По-п'яте, відповідно до загальноприйнятих стандартів, воно повинне надавати користувачеві можливість вибору параметрів установки (каталог, вибір встановлюваних частин програми), читання ліцензійної угоди і файлу readme, що містить останню інформацію про продукт.

По-шосте, вона може при необхідності перезапустити Windows.

Як створити інсталяційне додаток? Існує кілька варіантів рішення цієї проблеми. По-перше, його можна написати на C + + Builder або Delphi, використовуючи функції Windows API для модифікації реєстру згідно з алгоритмом, викладеному вище. По-друге, такий додаток можна створити з використанням генераторів дистрибутивів (InstallShield, Wise та ін.) Відзначимо, що використання цих коштів зазвичай передбачає написання спеціалізованого скрипта на мові, що нагадує С (у разі InstalShield) або Basic (у разі Wise).

Однак існує найпростіший спосіб створити інсталяційне додаток - використовувати вхідний в комплект постачання версій Borland C + + Builder версій Professional і Client / Server Suite спрощений генератор дистрибутивів Install Shield Exdivss, що дозволяє надати користувачеві можливість вибору варіанта інсталяції, додати дєїнсталлятор (точніше, файл з розширенням *. isu , використовуваний утилітою установки і видалення програм Windows 95), встановити BDE, додати псевдоніми баз даних, редагувати діалоги інсталяційного програми, створювати програмні групи, створювати дистрибутивні дискети.

Відразу ж відзначимо недоліки дистрибутивів, створених за допомогою цього продукту. По-перше, цей продукт припускає, що встановлювана (тобто наявна на комп'ютері, де створюється дистрибутив) версія BDE - найновіша, що може призвести до заміни наявної на комп'ютері користувача версії BDE на більш ранню. По-друге, деякі діалоги інсталяційного додатки виявляються англомовними.

Тим не менш, якщо перераховані недоліки не дуже важливі або можуть бути усунені в конкретному випадку (наприклад, шляхом вибору варіанта інсталяції), використання даного засобу може заощадити досить багато часу при створенні дистрибутива програми.

Створення дистрибутивів за допомогою InstallShield Exdivss

При запуску Install Shield Exdivss з'являється вікно з радіогрупою, що пропонує відкрити існуючий проект або створити новий.

При створенні нового проекту слід ввести ім'я проекту і вказати каталог, в якому розташовані файли програми.

Прапорець "Include custom setup type" слід вибрати, якщо ви плануєте надати користувачеві можливість вибору варіанта інсталяції Custom Setup для самостійного вибору варіанта інсталяції. Після цього з'явиться головний екран InstallShield, в якому перераховано послідовність кроків, які слід виконати для створення дистрибутива.

У розділі Set the Visual Design слід заповнити поля з відомостями про програму: назва програми, як воно буде виглядати в програмній групі, ім'я виконуваного файлу, каталог, в який слід встановити програму.

Відзначимо, що Install Shield містить кілька змінних, що ідентифікують диски і каталоги комп'ютера користувача, що дозволяє не знати реальну систему каталогів і дисків цього комп'ютера:

Клацнувши на закладці Main Window, можна встановити заголовок інсталяційного програми, колір фону і логотип.

Клацнувши на закладці Features, можна виявити одну-єдину опцію - Automatic Uninstaller. Її рекомендується залишити вибраної.

Наступний розділ - Specify InstallShield Options for Borland C + + - призначений для вибору компонентів, що часто поставляються з додатками: BDE, SQL Links та ін Вибравши потрібний компонент (у нашому випадку BDE) і натиснувши кнопку Settings, отримаємо послідовність з чотирьох діалогових вікон для вибору частин BDE, що поставляються з даними додатком, і створення псевдонімів.

При установці параметрів псевдонімів можна вибрати тип псевдоніма і місце розташування даних. Інші параметри псевдоніма (у тому числі і мовні драйвери) можна вказати в текстовому редакторі у нижній частині вікна.

Натиснувши на закладці Advanced Options, можна ознайомитися зі списком файлів додаткових компонентів (у нашому випадку BDE) та відомостями про них.

Наступний розділ - Specify Components and Files - призначений для визначення груп файлів, компонентів програми та типів установки. Клацнувши на закладці Groups, можна створити групи файлів для створення з них компонентів дистрибутива. Можна також використовувати Explorer і переносити з нього потрібні файли методом drag-and-drop (для цього потрібно натиснути кнопку Launch Explorer). Не рекомендується залишати групи порожніми.

Клацнувши на закладці Components, можна визначити компоненти дистрибутива (їх зможе вибирати користувач у разі вибору варіанта інсталяції Custom, тому можна дати їм російськомовні назви) та вказати, з яких груп файлів вони складаються. Не слід залишати компоненти, що не містять груп.

Наступна закладка - Setup Types - призначена для визначення варіантів установки. Якщо клацнути на ній, може виявитися, що варіант інсталяції його один - Typical (наприклад, ви забули відзначити прапорець "Include custom setup type"). У цьому випадку слід вибрати розділ Select User Interface Components і, клацнувши на закладці Components, у списку Dialog Boxes відзначити опції Setup Type і Custom Setup. Після цього можна повернутися до закладки Setup Types і визначити варіанти інсталяції. Як правило, варіанти Custom і Typical містять всі можливі компоненти, а варіант Compact - мінімальний набір компонентів, придатний для нормальної роботи програми.

У розділі Select User Interface Components можна вибрати діалоги, в яких користувач вводить необхідну інформацію під час інсталяції (наприклад, відомості про себе і компанії, серійний номер продукту), знайомиться з ліцензійною угодою і файлів readme, вказує каталог для інсталяції, вибирає тип установки і т.д. Можливий також попередній перегляд діалогів при натисканні кнопки Preview.

Наступний розділ - Make Registry Changes - дозволяє створювати на комп'ютері користувача нові ключі реєстру (закладка Keys) і значення ключів (Values). Це може виявитися корисним, якщо ви використовуєте у вашому додатку компоненти ActiveX або створюєте OLE-сервер. Ключі і їх значення можна копіювати з редактора реєстру, якщо він підтримує таку опреації.

Наступний розділ - Specify Folders and Icons - дозволяє визначити склад майбутньої програмної групи, а також визначити параметри командного рядка (закладка Advanced).

Нарешті, останній розділ - Run Disk Builder. Після збереження інсталяційного скрипта (за допомогою натиснення на кнопку з зображенням дискети на панелі інструментів головного вікна InstallShield) і вибору типу носіїв відбувається створення на жорсткому диску образів дистрибутивних дискет. Вибравши потім розділ Create Distribution Media, можна записати на дискети створений дистрибутив.

Опцію Test Run можна використовувати для перевірки роботи інсталяційного додатка. Проте не рекомендується робити це на комп'ютері, де виробляється розробка додатків. Краще провести тестові випробування на комп'ютері, схожому на комп'ютери ваших користувачів. Крім того, рекомендується створити на цьому комп'ютері копію Windows, щоб у випадку некоректної роботи інсталятора можна було повернути програмне забезпечення в початковий стан.

Запуск інсталяційної програми призводить до послідовного появи вибраних у розділі Select User Interface Components діалогів.

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

Якщо при створенні дистрибутива ви вибрали опцію Automatic Uninstaller, то у випадку виникнення необхідності деінсталяції встановленого додатка треба використовувати утиліту "Установка і видалення програм" на панелі керування Windows.

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

На закінчення відзначимо, що поставка додатків, створених за допомогою Delphi, здійснюється практично точно так само, як і постачання додатків, створених за допомогою C + + Builder.

Список використаної літератури


27



Додати в блог або на сайт

Цей текст може містити помилки.

Програмування, комп'ютери, інформатика і кібернетика | Реферат
87.3кб. | скачати


Схожі роботи:
Borland C Builder - основні моменти
Розробка програми на мові Borland Object Pascal Ide Borland Delphi
Розробка електронного органайзера засобами C Builder 6
VB MS Access VC Delphi Builder C прінціпитехнологія алгоритми програмування
Розробка візуальних компонентів для середовища З Builder
Borland C для Windows
Программа на С Builder для знаходження оберненої матриці з використання елементарних перетворень
Середовище програмування Borland Delphi
Об`єктно-орієнтоване програмування на Borland C
© Усі права захищені
написати до нас