Читаем Учебник по Delphi 4.0 онлайн бесплатно

<p>Учебник по Delphi 4.0</p><p>Оглавление</p>

Глава 1. Что нового в Delphi 4.0

Глава 2. Палитра компонентов

Глава 3. Типы данных

             Простые типы данных             Строковые типы             Структурные типы             Указательные типы             Процедурные типы

Глава 4. Создание приложений

              Работа с формами              Создание приложений SDI              Создание приложений MDI              Создание консольного приложения              Повторное использование приложений              Опции проекта              Передовые технологии программирования

Глава 5. Создание элементов управления ActiveX

               Среда разработки Delphi ActiveX (DAX)               Библиотеки типов               Элементы управления ActiveX               Регистрация и установка элемента управления ActiveX               Создание форм ActiveForm               Распространение элементов управления ActiveX и форм ActiveForm в Web

Глава 6. Тестирование и отладка

               Тестирование               Интегрированный отладчик Delphi               Силовая отладка               Обработка ошибок<p>Глава 1. Что нового в Delphi 4</p>

Delphi 4 представляет следующие новые свойства и усовершенствования:

Новые расширения языка.

Delphi 4 в язык Object Pascal включены динамические массивы, методы обработки переполнения, установка значения параметров по умолчанию, и многое другое.

Менеджер Проекта.

Новый менеджер проекта позволяет Вам объединять проекты которые работают вместе в одну проектную группу. Это позволяет Вам организовать как работу взаимозависимых проектов, таких как однозадачные и многозадачные приложения или DLL, так и совместную работу исполняемых программ.

Новый проводник.

Новый проводник содержит выполняемые классы, навигацию по модулям, и браузер кода. Проводник кода делает создание классов проще, автоматизируя многие из шагов. Введение прототипа метода в разделе интерфейса и свойства выполняемого класса сгенерирует скелетный код в разделе реализации. Также проводник позволяет быстро перемещаться через файлы модуля, а так же между интерфейсом и реализацией. Использование символа Tooltip, позволяет просматривать информацию об объявлении любого идентификатора, затем используя браузер кода, можно перейти к его объявлению.

Закрепляемые окна инструментов.

IDE (Интегрированная Среда Разработки) содержит более перенастраиваемую конфигурацию окон инструментов, которые можно закреплять с редактором кода. Просто перетащите и отпустите окно инструмента к тому месту, к которому хотите. Проводник кода и менеджер проекта можно как закреплять, так и не закреплять.

Улучшенная отладка.

Интегрированный отладчик имеет много новых свойств, включая удаленную и многопроцессорную отладку, просмотр кода центрального процессора, инспекторов, усовершенствованные точки прерывания, отладчик специфических подменю и закрепленных окон.

Поддержка MTS.

Явная поддержка для использования MTS интегрирована в поддержку многоуровневых баз данных. Кроме того, новый мастер облегчит Вам создание объектов сервера MTS.

Усовершенствования ActiveX.

Delphi 4 обеспечивает расширенную поддержку ActiveX.

Усовершенствования VCL.

Иерархия объектов Delphi была расширена, чтобы включить новый компонент для NT Service приложений. Кроме того, новый компонент выполняемого списка (на Стандартной странице палитры), позволяет Вам централизовать управление меню и команд от кнопок. Управление VCL расширено, чтобы поддерживать drag-and-drop перетаскивания, обеспечивать дополнительный контроль над размещением окна, и многое другое.

Поддержка RTL для 2000-го года.

Глобальная переменная TwoDigitYearCenturWwindow используется функциями StrtToDate и StrToTateTime, чтобы управлять интерпретацией лет с двумя цифрами при преобразовании дат.

Поддержка CORBA.

Версии Клиент/Сервер и предприятие включают поддержку для CORBA клиент и сервер приложений. Мастера помогут Вам легко создать сервер CORBA и Динамический Интерфейс Вызова (DLL), позволяя Вам записывать клиентов для существующих серверов CORBA. CORBA имеет возможность поддержки в многоуровневых баз данных. Вы можете даже создать сервер, который обрабатывает COM клиентов и CORBA клиентов одновременно.

<p>Глава 2. Палитра компонентов</p>

Размещение компонентов

Невидимые компоненты

Если вам часто приходится заниматься ремонтом какой-либо вышедшей из строя техники, то вы знаете, как приятно всегда иметь под рукой нужный винт, болт или гайку. Легко представить радость создания программ с помощью Delphi: вам не придется бегать в скобяную лавку за каждой мелочью! Палитра компонентов (component palette) будет для вас ящиком с деталями, а мышь — единственным необходимым инструментом.

Основная палитра компонентов Delphi имеет двенадцать страниц.

Standard. Большинство компонентов на этой странице являются аналогами экранных элементов самой Windows. Меню, кнопки, полосы прокрутки — здесь есть все. Но компоненты Delphi обладают также некоторыми удобными дополнительными встроенными возможностям.

Additional. Эта страница содержит более развитые компоненты.

Например, компонент Outline удобен для отображения информации с иерархической структурой, а удивительный MediaPlayer позволит вашим программам воспроизводить звук, музыку и видео. Данная страница также содержит компоненты, главное назначение которых — отображение графической информации. Компонент Image загружает и отображает растровые изображения, а компонент Shape, украсит ваши формы окружностями, квадратами и т. д.

System. Поскольку не каждая потребность, связанная с обработкой файлов, может быть удовлетворена с помощью стандартных диалоговых окон, страница System предоставляет возможность комбинировать отдельные элементы, такие как списки дисков, каталогов и файлов. Страница System также содержит компоненты, обрабатывающие обмен высокого уровня между программами посредством OLE (Object Linking and Embedding). А компонент Timer может генерировать события через определенные, заранее установленные промежутки времени.

Win32. Эта страница содержит компоненты, позволяющие созданным с помощью Delphi программам использовать такие нововведения в пользовательском интерфейсе 32-разрядной Windows, как просмотр древовидных структур, просмотр списков, панель состояния, присутствующая в интерфейсе программы Windows Explorer (Проводник), расширенный текстовый редактор и др.

Dialogs. Windows 3.1 ввела в употребление стандартные диалоговые окна для операций над файлами, выбора шрифтов, цветов и т. д. Однако для использования их в обычной программе Windows может потребоваться написать немало вспомогательного кода.

Страница, Dialogs предоставляет программам Delphi простой доступ к этим стандартным диалоговым окнам.

Data Access и Data Controls. Delphi использует механизм баз данных компании Borland (Borland Database Engine, BDE) для организации доступа к файлам баз данных различных форматов.

Компоненты этих двух страниц облегчают программам Delphi использование сервиса баз данных, предоставляемого BDE, например многопользовательского считывания, записи, индексации и выдачи запросов для таблиц dBASE и Paradox.

С использованием этих компонентов создание программы просмотра и редактирования базы данных почти не требует программирования.

Win 3.1. На этой странице, как в сибирской ссылке, находятся компоненты Delphi 1.0, возможности которых перекрываются аналогичными компонентами Windows 95.

Internet. Эта страница предоставляет компоненты для разработки приложений, позволяющих создавать HTML-файлы непосредственно из файлов баз данных и других типов, взаимодействующих с другими приложениями для Internet. Delphi 4 дает вам возможность создавать приложения для Web-сервера в виде DLL-файлов: (Dynamic Link Library — Динамически компонуемая библиотека), способных содержать невизуальные компоненты. С помощью компонентов страницы Internet довольно просто создавать обработчики событий для обращения к определенному URL (Uniform Resource Locater — Унифицированный локатор ресурса), представлению документов в HTML-формате и пересылки их клиент-программе.

Samples. Эта отличающаяся полнотой страница содержит компоненты, которые не встроены в Delphi, но демонстрируют мощь системы компонентов. Для этих компонентов нет встроенной интерактивной справки. Все же они не менее полезны, чем компоненты с других страниц.

ActiveX. Эта страница содержит компоненты ActiveX, разработанные независимыми производителями программного обеспечения: сетка, диаграмма, средство проверки правописания.

QReport. Эта страница предоставляет компоненты баз данных.

Здесь содержатся особые версии надписей, полей, примечаний и других элементов управления.

Midas и Decision Cube. Здесь собраны компоненты для доступа к удаленным серверам и осуществления SQL — запросов.

Размещение компонентов

Размещать компоненты на форме очень просто. Требуется только щелкнуть на нужной вкладке палитры компонентов, затем на кнопке с пиктограммой соответствующего компонента и после этого щелкнуть в окне формы. Все! Или, если вам так больше нравится, можно щелкнуть на компоненте, а затем нарисовать прямоугольник с помощью мыши на форме — компонент появится внутри этого прямоугольника. Если размеры компонента поддаются изменению, при появлении на форме он заполнит собой прямоугольник.

Если вы забыли, на какой странице расположен конкретный компонент, выберите пункт Component List (Компоненты) из меню View (Вид), и на экране появится список компонентов в алфавитном порядке.

Если щелкнуть на компоненте в палитре компонентов, его кнопка окажется нажатой. Если щелкнуть на другом компоненте, первая кнопка вернется в исходное состояние — только один компонент может быть выбран в один момент времени. Для того чтобы все кнопки оказались в исходном состоянии и было восстановлено нормальное использование мыши, следует щелкнуть на кнопке со стрелкой выбора, которая появляется с левой стороны каждой страницы палитры (рис. 4.1).

Рис. 4.1. Для того чтобы после добавления компонентов восстановить нормальное функционирование мыши, следует щелкнуть на кнопке со стрелкой выбора.

1. Выберите страницу Standard палитры компонентов.

2. Поместите указатель мыши на компонент с изображением кнопки ОК. После того как мышь побудет в недвижимом состоянии секунду или две, появится поле помощи, идентифицирующее этот компонент как Button (см. рис. 4.1).

3. Щелкните на кнопке, затем щелкните на вашей форме. Появится кнопка среднего размера, озаглавленная Button 1.

4. Щелкните на компоненте Button опять, но на этот раз, удерживая левую кнопку мыши, нарисуйте прямоугольник большого размера прямо на форме. Текст Button 2 заполнит прямоугольник. Обратите внимание, что кнопка имеет небольшие квадратные маркеры (угловые и боковые), позволяющие изменять размер. Используйте их, чтобы с помощью мыши изменить размер кнопки.

5. Теперь щелкните на кнопке Button 1 и перетащите ее в новое место.

Вы заметите, что при перемещении и изменении размера компоненты выравниваются по точкам координатной сетки формы. Как правило, это хорошо — такая возможность помогает поддерживать порядок в формах. Если вы захотите отменить эту возможность или изменить плотность точек координатной сетки, выберите пункт Options из меню Tools. Первая страница параметров предназначена для настройки пользователем параметров среды. На этой странице имеется группа Form designer (Конструктор форм), флажки опций Display grid (Отображение сетки) и Snap to grid (Привязка к сетке) которой определяют, видна ли координатная сетка и активна ли она.

Можно также изменить значения параметров Grid Size X (Шаг по оси X) и Grid Size Y (Шаг по оси Y), что приведет к изменению шага координатной сетки по горизонтали и вертикали, соответственно.

Совет: Для лучшего управления размещением и размерами своих компонентов попробуйте следующее. Установите значение шага координатной сетки равным 4 вместо 8, отключите изображение координатной сетки, но оставьте включенным параметр Snap To grid.

Невидимые компоненты

Не каждый компонент виден на форме во время запуска программы.

Например, размещение на форме компонента MainMenu приводит к появлению в разрабатываемом приложении меню, но соответствующая пиктограмма во время запуска программы не отображается.

Компоненты, представляющие диалоговые окна общего назначения, вообще никак не визуализируются во время работы программы. Размеры невидимого компонента в процессе разработки не изменяются — он всегда отображается в виде пиктограммы.

<p>Глава 3.Типы данных</p>

С помощью типов данных программист указывает компилятору, как хранить информацию в программе. При объявлении переменной необходимо указать ее тип. Одни типы уже определены в языке, другие программисту приходится задавать самому. В ранних языках программирования допускалось ограниченное число типов данных, и Pascal оказался одним из первых языков, допускающих определение в программе новых типов.

Типы данных, определяемые пользователем, обычно задаются в разделе определения типов программы или модуля (unit), однако это можно делать и внутри процедур или функции. Объявления типов действуют в пределах того блока, в котором они размещены. Вне этого блока ссылаться на такие типы нельзя. Внутри же они заменяют все внешние типы с тем же именем. Объявленные типы данных можно применять в любом месте области их видимости; запрещена только ссылка определяемого типа на самого себя (тут, однако, есть одно исключение, касающееся указателей).

Объявления типов в Pascal являются для компилятора чем-то вроде схем, которые он должен запомнить на случай, если вдруг встретит в программе ссылки на тот или иной тип. Само по себе объявление типа не вносит в программу никаких изменений.

Что же касается объявлений var, то они задают компилятору некоторые действия, связанные с ранее объявленными типами. Тип переменной ограничивает как ее значения, так и операции, которые можно выполнять с этими значениями.

Определения типов и переменных могут размещаться в нескольких местах компонентов программы. Выглядят же они следующим образом.

type

type1 = type definition; //Новые типы данных определяются в разделе //«type».

//Каждому новому

// типу присваивается имя, затем он определяется через уже

//существующие типы.

type2 = typedefinition2; // В одном разделе «type» можно

//объявить несколько типов.

//Самое простое определение типа состоит из имени типа,

type3 = type1; // определенного ранее.

// Новые переменные объявляются в

var // разделе «var». Каждой новой

Похожие книги