Кроссплатформне програмування для Linux

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

скачати

Мордовський ДЕРЖАВНИЙ УНІВЕРСИТЕТ ІМЕНІ Н.П. Огарьова
Факультет світлотехнічний
Кафедра світлотехніки
Курсова робота
Багатоплатформна ПРОГРАМУВАННЯ ДЛЯ LINUX
Автор курсової роботи А.В. Богданов
Спеціальність 100101 сервіс
Позначення курсової роботи КР-02069964-100101-05-08
Керівник роботи С.Д. Шібайкін
Саранськ 2008

Мордовський ДЕРЖАВНИЙ УНІВЕРСИТЕТ ІМЕНІ Н.П. Огарьова
Факультет світлотехнічний
Кафедра світлотехніки
ЗАВДАННЯ НА КУРСОВУ РОБОТУ (ПРОЕКТ)
Студент ______________________________________________________
1 Тема _______________________________________________________
2 Термін подання роботи (проекту) до защіте___________________
3 Вихідні дані для наукового дослідження (проектування) __________________________________________________________________
4 Зміст курсової роботи (проекту)
4.1 _________________________________________________________
4.2 _________________________________________________________
4.3 _________________________________________________________
4.4 _________________________________________________________
Керівник роботи (проекту) _______________________________
підпис, дата, ініціали, прізвище
Завдання прийняв до виконання _________________________________
дата, підпис

Реферат
Дипломна робота містить 26 сторінок, 1 таблицю, 20 використаних джерел, 2 додатки.
ПРОГРАМУВАННЯ, LINUX, DELPHI, KYLIX, CLX, ДОДАТОК.
Об'єктом дослідження є спосіб створення додатків для Linux у середовищі Delphi.
Мета роботи - проаналізувати принцип створення додатків для Linux на рівні користувача та середовища Delphi з метою виявлення основних подібностей та відмінностей його c програмуванням для Windows.
Завдання: вивчити склад стандартного проекту CLX і Кросплатформені елементи Репозиторія, ієрархію класів CLX, загальні властивості і методи компонентів, їх відмінності від компонентів VCL; особливості кросплатформного програмування, додаткові можливості кроссплатформенних додатків.
Ступінь впровадження - часткова.

Зміст
Введення
1 Проект CLX
1.1 Загальні відомості
1.2 Об'єктна концепція кросплатформного програмування
1.3 Бібліотека компонентів CLX
1.4 Подібності та відмінності візуальних компонентів CLX і VCL
2 Особливості програмування для Linux
2.1 Загальні відомості
2.2 Додатка баз даних для Linux
2.3 Internet-додатки для Linux
Висновок
Список використаних джерел
Додаток А
Додаток Б

Введення
Часи безроздільного панування операційних систем Windows для домашніх комп'ютерів і корпоративних робочих станцій підходять до кінця. Все більше число рядових комп'ютерів працює під управлінням інших операційних систем. Серед них по праву виділяється операційна система Linux, що поєднує в собі відкритість і хороші можливості налаштування.
У цих умовах, коли буває необхідно розробляти програмне забезпечення з одними функціями відразу для декількох операційних систем, програмістам була б дуже корисна середовище розробки, що дозволяє робити це по можливості з найменшими витратами.
Існує цілком самостійний програмний продукт Kylix, який і призначений для розробки програм для Linux. Delphi і Kylix дуже схожі, але кожен з них працює в своїй операційній системі і про перенесення програм не може бути й мови.
Однак, Delphi 7 дійсно дозволяє писати програми для Linux.
Тепер розробник, що використовує Delphi 7, може створювати додатки, вихідний код яких буде компілюватися без будь-яких додаткових зусиль не тільки в Delphi для Windows, але і в Kylix для Linux.
Для цього необхідно вибрати в Delphi відповідний тип проекту і потім написати програму. При цьому розробнику будуть доступні багато компонентів Палітри компонентів і відповідно можливості візуального програмування в Delphi.
Безсумнівна перевага кросплатформного програмування в Delphi полягає в тому, що для спільного використання доступні не тільки звичайні конструкції і оператори мови програмування, але і безліч високорівневих компонентів для візуального програмування.
Кроссплатформенная розробка додатків в Delphi стала можливою завдяки створенню спеціального варіанту бібліотеки VCL, яка називається Component Library for Cross Platform (CLX). В основі CLX лежить ієрархія спеціально створених базових класів, що забезпечують працездатність візуальних компонентів - нащадків відразу в двох операційних системах. Звичайно, набір компонентів CLX не настільки багатий порівняно з нинішнім різноманітністю VCL, проте цілком порівняний з Палітрою компонентів Delphi або Delphi 2.
Звичайно ж, серйозне кроссплатформне програмування, що включає, наприклад, взаємодія з пам'яттю, обробку процесів з урахуванням їх пріоритетів і т. д., зажадає скрупульозною і вдумливої ​​роботи. Але це неминуче - поєднання можливостей двох операційних систем в одній програмі - справа нелегка, і проблема тут не стільки в недоліках середовища розробки, скільки в складності самої задачі. Delphi бере на себе всі турботи по створенню інтерфейсу кроссплатформенной програми.
У моїй роботі розглядаються такі питання:
складу стандартного проекту CLX і Кросплатформені елементи Репозиторія;
CLX - бібліотека компонентів кросплатформного програмування;
ієрархія класів CLX, загальні властивості і методи компонентів, їх відмінності від компонентів VCL;
особливості кросплатформного програмування Windows - Linux;
додаткові можливості кроссплатформенних додатків.

1 Проект CLX
1.1 Основні відомості
Створення кросплатформного додатки в Delphi вимагає виконання абсолютно стандартних дій. Досить створити новий проект, вибравши для цього в Репозиторії пункт CLX Application.
На перший погляд новий проект нічим не відрізняється від звичайного, але це не так. Середовище розробки теж зазнала деяких змін. У Палітрі компонентів тепер представлені компоненти з бібліотеки CLX, тієї самої, яку використовує Kylix. Інші нечисленні зміни у складі проекту також пов'язані з необхідністю поєднання з Kylix.
Проект CLX відрізняється від звичайного типом файлу, який містить інформацію про форму. Якщо в звичайному проекті файл форми має розширення *. dfm, то в проекті CLX це файл з розширенням *. xfm, однаково зрозумілий і для Delphi, і для Kylix, тому що і ті й інші файли є звичайними текстовими файлами і відомості про форму представлені в них у текстовому вигляді. Приблизно те ж саме ми побачимо, переглядаючи форму в текстовому представленні у вікні Редактора Delphi (команда View as Text із спливаючого меню форми) [1].
Форма і модуль CLX зв'язуються за допомогою директиви {$ R *. xfm}.
Крім цього, в проектах Delphi і Kylix розрізняються розширення файлу опцій проекту (в Delphi - *. dof, в Kylix - *. kof). Однак це не принципова проблема і при відсутності такого файлу середовище розробки створить новий з настройками за замовчуванням. Таким чином, завжди можна придумати як мінімум кілька способів перенести текстовий вміст файлу налаштувань проекту.
По синтаксису та основних елементів вихідного тексту, не відрізняється від стандартного. Файл проекту містить список модулів і секцію begin, end. Файл модуля також звичайний, за винятком списку використовуваних модулів в секції uses. Модулі з незвичними назвами QControis, QForms та ін містять базові класи бібліотеки CLX.
У іншому проект CLX подібний стандартному проекту Delphi і в ньому можна використовувати весь інструментарій середовища розробки і прийоми візуального програмування.
На підтвердження цього за допомогою кількох змін у проекті VCL можна легко перетворити проект VCL в CLX і назад. Для цього знадобиться будь-який текстовий редактор. І звичайно проект не повинен містити компонентів, які не входять до складу бібліотеки CLX.
У файлі проекту в секції uses розсилання на модуль Forms замінюється на QForms.
У файлах модулів замінюються посилання на модулі VCL на модулі CLX. Наприклад, секція uses може виглядати так:
uses SysUtils, Types, Classes, QGraphics, QControls, QForms;
У файлах модулів замінюється директива {$ R *. dfm} на {$ R *. xfm}.
У файлах форм змінюється розширення з dfm на xfm.
Зберігши зроблені зміни і відкривши проект у середовищі розробки, можна переконатися, що Delphi прийняла його за проект CLX, змінила відповідним чином Палітру компонентів і з готовністю компілює його.
При необхідності розробник може додавати до проекту нові шаблони, використовуючи для цього Репозиторій. При цьому в Репозиторії доступні тільки ті шаблони, які можна використовувати в проекті CLX (наприклад, форма, модуль або модуль даних). Відсутні шаблони, використання яких в Linux неможливо або підтримку яких не забезпечує бібліотека CLX (наприклад, шаблон однодокументних програму або шаблони друкарських форм Quick Report).

1.2 Об'єктна концепція кросплатформного програмування
Програмування в Delphi увазі використання тих чи інших класів, будь то форми, невізуальні компоненти або списки. Концепція кросплатформного програмування в рамках одного середовища розробки має на увазі наявність спільного ядра, що забезпечує функціонування залежною від операційної системи програмної надбудови. У Delphi таким ядром стала бібліотека часу виконання (RunTime Library - RTL), з використанням класів якої створені бібліотеки компонентів VCL і CLX.
Відповідно з цим для забезпечення кроссплатформенной розробки у вихідні коди базових класів Delphi були внесені зміни. Спільним ядром бібліотек компонентів VCL і CLX є ієрархія класів TObject - TFersistent - TComponent, які входять до складу RTL. Це дозволяє середовищі розробки легко інтегрувати Кросплатформені проекти і працювати зі стандартними проектами для Windows.
Розбіжності двох гілок починаються з класу TControl, який забезпечує функціональність всіх візуальних компонентів. Починаючи з цього класу і далі, бібліотеки компонентів мають власні початкові коди. Багато модулі CLX мають назви, аналогічні модулям VCL, але з додаванням першої літери Q, наприклад QControls.pas.
У бібліотеці VCL класи TControl і Twincontrol є предками всіх компонентів, які повинні вміти відображати себе на екрані за допомогою графічних засобів операційної системи. У бібліотеці CLX аналогічне завдання виконують класи TControl і TWidgetControl. Вони забезпечують працездатність компонентів-нащадків як екранних об'єктів widget.
Більшість властивостей і методів класів Twincontrol і TWidgetControl збігаються. Однак є й відмінності, викликані особливостями графічних інтерфейсів операційних систем Windows і Linux.
Для забезпечення працездатності кроссплатформенних класів CLX застосовується динамічна бібліотека Qt. Для використання її методів у класах CLX у складі Delphi є заголовний файл Qt.pas. При створенні об'єкту CLX конструктором create у вихідному коді або перенесенням компонента на форму автоматично створюється спеціальний об'єкт - widget. Widget пов'язаний з об'єктом CLX, забезпечує взаємодію об'єкта CLX з операційною системою і знищується разом з ним.
Widget може бути створений і безпосередньо. Така ситуація може виникнути, наприклад, при створенні власних компонентів. Для цього застосовується функція QWidget_Create динамічної бібліотеки Qt. У цьому випадку widget не прив'язаний до об'єкта CLX і, відповідно, не знищується разом з ним [2].
1.3 Бібліотека компонентів CLX
Бібліотека компонентів CLX більш бідна порівняно з VCL. Тим не менш, її компоненти дозволяють створювати повноцінні додатки. У цілому склад компонентів CLX нагадує Палітру компонентів ранніх версій Delphi. Бібліотека CLX завантажується в Палітру компонентів при відкритті існуючого або створення нового проекту CLX.
Всі компоненти CLX, що мають аналоги в VCL, а таких більшість, мають ті ж імена, що й компоненти VCL. Так як при перенесенні компонентів з Палітри компонентів на форму відповідні модулі підключаються в проект автоматично.
Вихідні модулі бібліотеки CLX містяться в папці \ Delphi7 \ Source \ С1х [3].
Перші три сторінки Палітри компонентів (Standard, Additional, Common Controls), а також сторінка Dialogs містять візуальні і невізуальні компоненти для конструювання користувальницького інтерфейсу додатку.
З-за деяких відмінностей стандартів користувальницького інтерфейсу Windows і Linux частина візуальних компонентів CLX мають невластиві для Windows додаткові функції.
Більшість компонентів на цих сторінках добре знайомі розробникам (правда, деякі з них перекочували з інших сторінок VCL - наприклад TTimer і TSpinEdit). Однак існують деякі новинки. Це компоненти TLCDNumber, TTextviewer і TTextBrowser. Їх коротка анотація представлена ​​в таблиці 1.
Таблиця 1 - Унікальні візуальні компоненти CLX
Компонент
Сторінка палітри компонентів
Опис
TLCDNumber
Additional
Компонент відображає сукупність символів (букв та цифр), які можна представити у режимі цифрового дисплея. Відповідно, не всі літери можна показати в цьому компоненті. Наприклад, букви J, Q, Z і т. д. Рядок символів міститься у властивості Value
TTextviewer
Common Controls
Компонент є аналогом компонента VCL TRichEdit. Призначений для редагування текстів
TTextBrowser
Common Controls
Компонент розвиває можливості компонента TTextviewer, надаючи функції гіпертекстової розмітки
Додаткові можливості по створенню кроссплатформенних додатків баз даних дають компоненти на сторінках Data Access, DataControIs, DBExdivss, InterBase. Безумовно, механізми доступу до даних, що використовуються такими додатками, в значній мірі залежать від операційної системи. Тому вибір способів доступу до даних порівняно невеликий.

1.4 Подібності та відмінності візуальних компонентів CLX і VCL
Більшість властивостей і методів компонентів VCL і CLX ідентичні. А існуючі відмінності викликані необхідністю використання спеціальних об'єктів - widget та особливостями подання візуальних елементів в Linux.
Базові класи CLX - TControl і Twidgetcontrol для забезпечення промальовування звертаються до динамічної бібліотеці Qt через заголовки Qt.pas.
Таким чином, розробник позбавлений необхідності роботи з графічним інтерфейсом Linux на низькому рівні.
Для компонента CLX існує властивість property Handle: QWidgetH; яке є покажчиком на зв'язаний об'єкт widget і дозволяє викликати його методи безпосередньо.
Якщо екземпляр widget не створений, метод procedure CreateHandle; virtual; не тільки створює і ініціалізує widget, але й встановлює покажчик Handle, створює об'єкти-перехоплювачі (див. нижче) і задає параметри за замовчуванням для цього візуального компонента. При необхідності в класах-нащадках метод CreateHandle перекривається і в нього додається нова функціональність.
Знищення створеного widget здійснюється методом procedure DestroyHandle; який знищує всі дочірні widget і об'єкти-перехоплювачі, а також обнуляє властивості Handle І Hooks.
При необхідності для простого створення та ініціалізації widget можна використовувати метод procedure CreateWidget; virtual; який зробить це, викликавши зовнішню функцію Qwidget_Create, і метод procedure InitWidget; virtual; який визначає візуальні параметри widget.
Також у класах CLX доступний покажчик на батьківський widget за рахунок використання властивості property ParentWidget: QWidgetH;
Якщо це властивість не визначено, можна використовувати властивість property ChildHandle: QWidgetH; батьківського класу, наприклад, таким чином:
if Not Assigned (ParentWidget) then if Assigned (Parent) then
Result: = Parent.ChildHandle;
У класах CLX інакше реалізована обробка подій. У Linux всі події діляться на два види - системні та події widget. Системні події обробляються процедурою - аналогом процедури wndProc для компонентів VCL.
Події, що генеруються widget, перехоплюються і обробляються спеціальними об'єктами, що взаємодіють з об'єктом widget. Потім вони передаються пов'язаному об'єкту CLX, який викликає необхідні обробники подій.
Об'єкти-перехоплювачі створюються при виклику методу
procedure HookEvents; virtual;
а безпосередньо для створення перехоплювачів використовується бібліотечна функція Qwidget_hook_create. Метод HookEvents викликається автоматично при створенні widget.
Доступ до об'єкту-перехоплювачі можливий за допомогою властивості
property Hooks: QWidget_hookH;
яке оголошено в секції protected і може бути використано тільки при створенні нових компонентів.
Класи CLX мають дуже цікаве і важливе властивість
property Style: TWidgetStyle;
що дозволяє керувати зовнішнім виглядом і процесом відтворення компонента.
Властивість
type TDefaultStyle = (dsWindows, dsMotif, dsMotifPlus, dsCDE, dsQtSGI, dsPlatinum, dsSystemDefault); property DefaultStyle: TDefaultStyle;
класу TWidgetStyle визначає стиль візуального компонента, задає його зовнішній вигляд за замовчуванням. Природно, операційна система повинна підтримувати вибраний стиль.
Крім того, клас Twidgetstyle визначає деякі найбільш загальні параметри візуальних компонентів і володіє величезним числом обробників подій, які викликаються при відображенні всіх можливих компонентів і екранних елементів.
Таким чином, властивість style є прекрасним інструментом для створення власних компонентів з нестандартною функціональністю.
Для використання в Linux модернізована система контекстної допомоги для компонентів CLX. Тепер стаття підказки для візуального компонента може бути викликана двома способами.
Традиційно, шляхом визначення унікального номера статті у властивості
property HelpContext: THelpContext;
і додатково, шляхом визначення ключового слова підказки у властивості
property HelpKeyword: String;
Спосіб виклику допомоги визначається властивістю
type THelpType = (htKeyword, htContext);
property HelpType: THelpType;
Властивості контекстної підказки є новими в Delphi 7 і є у компонентів CLX і VCL.
Крім того, окремі компоненти CLX мають додаткові властивості і методи, що визначають їх додаткову функціональність у Linux.
У той же час деякі звичні для програмування в Windows властивості компонентів відсутні в компонентах CLX. Це властивості обрамлення компонента (BevelEdges, Bevellnner, BevelKind, BevelOuter); можливість двобічної друку текстів (властивість BioiMode); властивості для забезпечення сумісності з Windows 3.x (Ctl3D і ParentCtl3D); механізм приєднання і властивості Drag-and-Drop, хоча сам механізм Drag-and-Drop залишився (властивості DockSite, DragKind, DragCursor). [4]

2 Особливості програмування для Linux
2.1 Загальні відомості
Операційні системи Windows і Linux мають досить серйозних відмінностей, щоб зробити кроссплатформенную розробку справою складною і копіткою. У першу чергу необхідно добре знати обидві операційні системи і мати досвід роботи з ними.
Створення вихідного коду для кроссплатформенних додатків - це трудомісткий процес, який ускладнюється в міру використання специфічних можливостей операційних систем. Найпростішим шляхом в даному випадку буде застосування тільки стандартних властивостей і методів компонентів CLX. Але такий шлях можливий для порівняно нескладних додатків.
Більшість додатків мають функції для роботи з файлами. Файлові системи Windows і Linux відрізняються настільки, що кроссплатформенная реалізація будь-яких складних операцій з файлами вимагає серйозної уваги і зусиль.
Linux чутлива до регістру символів в іменах файлів і шляхах, тому не варто використовувати в вихідному коді імена файлів безпосередньо, а при необхідності робити це потрібно акуратно. У багатьох компонентах для вирішення проблеми великих і малих літер можна використовувати властивість
property CaseSensitive: Boolean;
Після присвоєння властивості значення True компонент виробляє всі рядкові операції з урахуванням регістру символів.
Для формування повного шляху файлу використовуються константи з модуля SysUtils. Це PathDelim (символ роздільника каталогів в дорозі файлу), DriveDelim (символ логічного диска), pathsep (символ роздільника між кількома шляхами файлів в одному рядку).
При роботі з текстовими файлами необхідно пам'ятати про розходження керуючих символів в Windows і Linux. Для позначення кінця рядка в Windows використовуються символи CR / LF, а в Linux - лише символ LF. У Windows закінчення тексту визначається символом Ctrl-Z, а в Linux - просто кінцем файлу [4].
Так як в Linux відсутній системний реєстр, то для збереження налаштувань програми використовується клас TMeminiFile, що забезпечує збереження змінних середовища в INI-файлі.
При створенні кроссплатформенних додатків необхідно використовувати тільки властивості і методи класів CLX. У бібліотеці CLX також доступні для застосування такі важливі для написання бізнес-логіки додатка класи, як TList, TStringList, TCollection, TAction та ін
Якщо це обмеження є дуже жорстким, і в програмі потрібно використовувати функції системних API, застосовуються директиви умовного переходу:
{$ IFDEF MSWINDOWS}
{Код для Windows}
{$ ENDIF}
{$ IFDEF LINUX}
{Код для Linux}
{$ ENDIF}
2.2 Додатка баз даних для Linux
Головною складовою частиною будь-якої програми баз даних є механізм доступу до даних. Для традиційних додатків баз даних, що створюються в Delphi, вибір способів доступу до даних досить широкий. Однак про Кросплатформені докладання цього сказати не можна. По суті, розробник може вибрати тільки набір компонентів dbExdivss.
На жаль, компоненти dbExdivss обмежені за своїми функціональними можливостями, забезпечуючи односпрямоване переміщення курсору і перегляд даних в режимі «тільки для читання».
Перевагою цього способу доступу до даних є простота і відсутність багатомегабайтного допоміжних бібліотек. Зокрема, для кожного з чотирьох підтримуваних dbExdivss серверів баз даних необхідна лише одна динамічна бібліотека Windows і тільки один розділяється об'єкт (shared object) Linux [5].
2.3 Internet-додатки для Linux
Для Internet-додатків цілком звичайною є ситуація, коли клієнтська частина повинна працювати на комп'ютерах з різними операційними системами, наприклад Windows і Linux. У цьому випадку кроссплатформне програмування клієнтської частини стає вельми привабливим способом зменшення витрат на процес розробки.
У складі бібліотеки CLX є достатньо великий набір компонентів для розробки Internet-додатків. Однак в Linux можна використовувати лише сервер Apache або CGI. Це накладає суттєві обмеження на новостворювані Кросплатформені програми і вимагає серйозних зусиль при переробці додатків Windows, що використовують ISAPI або NSAPI.

Висновок
Кроссплатформне програмування стало доступним в Delphi 7 завдяки використанню бібліотеки компонентів CLX. Маючи спільне з бібліотекою компонентів VCL ядро ​​базових компонентів, бібліотека CLX забезпечує сумісність додатків Delphi для Windows і Kylix для Linux.
При неминучих для кросплатформного програмування труднощі реалізації складного коду, що використовує системні виклики і технології віддаленого доступу, в Delphi вирішена завдання швидкого візуального проектування користувальницького інтерфейсу і створення бізнес - логіки додатка. Для цього застосовується набір спеціальних компонентів, що мають практично ідентичну функціональність і схожий програмний інтерфейс, але їх кількість значно відрізняється від стандартного набору компонентів.
Розглянуто наступні питання:
складу стандартного проекту CLX і Кросплатформені елементи Репозиторія;
CLX - бібліотека компонентів кросплатформного програмування;
ієрархія класів CLX, загальні властивості і методи компонентів, їх відмінності від компонентів VCL;
особливості кросплатформного програмування Windows - Linux;
додаткові можливості кроссплатформенних додатків.

Список використаних джерел
1. Шупрута, В.В. Delphi 2005. Вчимося програмувати: NT Press. - М., 2005.
2. Дарахвелідзе, І.В. Програмування в Delphi 7: BHV-СПб. - Санкт-Петербург, 2003.
3. Культін, С.Д. Delphi у завданнях і прикладах: BHV-СПб. - Санкт-Петербург, 2008.
4. Осипов, О.І. Delphi. Професійне програмування: Символ-Плюс. - М., 2006.
5. Фаронов В.В. Delphi4. Навчальний курс. - М.: Нолидж, 1999.
6. Возневіч Е. «Освой самостійно Delphi: Повне керівництво для самостійного навчання. / Под ред. В. Тимофєєва. - М.: Біном, 1996.
7. Гофман В.Е. / Хомоненко А.Д. Delphi 6. - СПБ.: БХВ, 1996.
8. Дарахвелідзе П.Г. Марков Є.П. Delphi - засоби візуального програмування. - СПБ.: BHV - С-Петербург, 1996.
9. Конопка Р. Створення оригінальних компонент в середовищі Delphi: Пер. з англ. - Київ: DiaSoftLtd, 1996.
10. Сван Том. Основи програмування Delphi для Windows 95. Київ: Діалектика, 1996.
11. Зуєв В. А.. Turbo Pascal 6.0, 7.0. М.: Веста; Радіо і зв'язок, 1998.
12. Коцюбинський А.О., Грошев С.В. Мова програмування Delphi 5 - М.: «Видавництво Тріумф», 1999.
13. Леонтьєв В. Delphi 5 - М.: Москва «Олма-Пресс», 1999.
14. Немнюгин С.А. Програмування - М.: Питер, 2000.
15. Програмування під ред. В. В. Старлова - М: Питер, 1999
16. Ремізов М. Delphi - М.: Питер, 2000.
17. Довідкова система Delphi 5.0 Help.
18. Т.А. Ільїна. Програмування на Delphi 6 - М.: Питер, 2000.
19. Фаронов В. В. Delphi 4. Навчальний курс. М.: Нолидж, 1999.
20. Федоров А. Г. Створення Windows-додатків в середовищі Delphi. М.: ТОВ «Комп'ютер Прес», 1999.
21. Хендерсон К. Посібник розробника баз даних в Delphi 2. Київ: Діалектика, 1998.
22. Ч. Куписевич. Програмування на Delphi. - М: Київ, 1986
23. Шапошников І. Delphi 5 - М.: Санкт-Петербург, 2001.

Додаток А
Програма «База даних Games»


Додаток Б
Вихідний код програми «База даних Games»
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DBTables, DB, Grids, DBGrids, StdCtrls;
type
TForm1 = class (TForm)
DataSource1: TDataSource;
Table1: TTable;
DBGrid1: TDBGrid;
Label1: TLabel;
GroupBox1: TGroupBox;
Button1: TButton;
Edit1: TEdit;
Label2: TLabel;
procedure Button1Click (Sender: TObject);
private
{Private declarations}
public
{Public declarations}
end;
var
Form1: TForm1;
implementation
{$ R *. dfm}
procedure TForm1.Button1Click (Sender: TObject);
begin
if Table1.Locate ('Game', Edit1.Text, [loCaseInsensitive, loPartialKey])
then Form1.Label2.Caption: =''
else Form1.Label2.Caption: = 'нічого не знайдено.'
end;
end.
Додати в блог або на сайт

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

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


Схожі роботи:
Інструменти необхідні для тестування Linux
Створення бази даних функціональних аналогів Windows-програм для ОС Linux і розробка методики
Програмування для математиків
Програмування для Word з Delphi
Delphi програмування для всіх
Програмування арифметичних завдань на Асемблері для мікропроцесора К580
Програма для тестування знань з дисципліни Програмування на мові С 2
Програма для тестування знань з дисципліни Програмування на мові С
Програмування циклічних та типових програм на Асемблері для мікропроцесора КР580ИК80
© Усі права захищені
написати до нас