Менеджер проектов и файлы проекта Delphi. Урок №2

В этом уроке мы детально рассмотрим окно «Менеджер проектов» интегрированной среды разработки Delphi. А также узнаем какие файлы формирует Delphi IDE при создании проекта и зачем эти файлы нужны.

Откройте в Delphi проект из нашего прошлого урока, или создайте новый проект. Как это делается вы должны помнить, но если кто-то забыл, то я напомню File — New — VCL Forms Application – Delphi.

Давайте теперь посмотрим на «Менеджер проектов». И, чтобы раскрыть все ветви дерева, выберите первый элемент в менеджере проектов и нажмите <*> на дополнительной цифровой клавиатуре.

Менеджер проектов и файлы проекта Delphi. Видео

Давайте подробно рассмотрим каждый пункт менеджера проектов

  1. ProjectGroup1 (Заголовок дерева) — имя группы проектов. В одной группе проектов может быть несколько приложений. Но так как у нас создано сейчас только одно приложение, то здесь оно у нас одно. Если нажать на кнопку «Add new project…», то перед нами появится окно, в котором мы можем выбрать какой новый проект добавить в эту группу.
  2. Project.exe — имя проекта (приложения). Когда мы создаем новое приложение, Delphi дает ему имя Project плюс порядковый номер 1, 2, 3 и т.д.
  3. В разделе Build Configurations (Debug) перечислены различные конфигурации сборки, которые доступны для вашего проекта. Более новые версии Delphi имеют три конфигурации сборки по умолчанию: Debug, Release и All configurations. Debug — устанавливают для отладки и тестирования. Release — это уже готовая версия. И All configurations — родительская конфигурация для всех остальных конфигураций.
    Конфигурации можно добавлять и удалять (в том числе Debug и Release). Конфигурация All configurations не удаляемая, в ней указываются общие для всех конфигураций настройки.
  4. В разделе Target Platforms (Целевые платформы) можно добавить, или удалить целевую платформу. Например, сейчас наше приложение разрабатывается под Windows 32 бит. Если мы хотим разрабатывать приложение для Windows 64 бит, то правой кнопкой мыши вызываем контекстное меню и в нем выбираем Add Platform…
  5. Unit1.pas — модуль. Проект состоит из модулей. Каждое окно программы хранится в отдельном модуле. Так как у нашего приложения есть окно, то именно оно и хранится в модуле Unit1.pas. Файлы с расширением pas содержат исходный код модуля. Имя этих файлов такое же, как и имя модуля в менеджере проектов.
  6. Unit.dfm — это визуальная форма. Она сохраняется с тем же именем, что и модуль, только с расширением dfm.

Если в вашем проекте будет несколько приложений, то только одно из них может быть активным. И только активное приложение мы можем выполнять и отлаживать в среде разработки. Имя активного приложения выделяется жирным шрифтом. Чтобы изменить активное приложение, достаточно дважды кликнуть по его имени левой кнопкой мыши. Также можно вызвать контекстное меню, кликнув по имени приложения правой кнопкой мыши и затем выбрать Activate (Активировать).

Но пока давайте будем работать только с одним приложением. Поэтому если вы создали второе приложение, то его можно удалить. Для этого выделяем имя второго приложения и нажимаем клавишу Del, или Delete (у кого какая клавиатура). В появившемся окне о подтверждении удаления нужно выбрать Yes (Да) и приложение будет удалено из группы проектов.

Но реально из диска файлы не удаляются. Они остаются на месте. Просто не отображаются в проекте. Поэтому если они вам вообще не нужны, то нужно их найти и удалить. Это если вы сохраняли проект, после того как добавили в него второе приложение. Если же вы не сохраняли проект, то соответственно файлы второго приложения и не создавались.

Теперь давайте перейдем в папку с нашим проектом и посмотрим на файлы присутствующие в ней.

  • в файлах с расширением dproj содержится конфигурация нашего проекта;
  • в файлах с расширением dpr находится сам проект;
  • в файлах с расширением res содержатся ресурсы нашего проекта: кнопки, иконки, курсоры и т.д.;
  • в файлах с расширением pas содержится исходный код модулей;
  • в файлы с расширением dfm содержится визуальная информация о форме.
  • в папке Win находится папка Debug, а в ней — файлы с расширением dcu и exe.

Файл с расширением dcu — это откомпилированный модуль проекта в промежуточном формате. Когда происходит компиляция программы, то все модули компилируются в файлы формата DCU, а потом они собираются в один файл. Если модуль не изменился с последней компиляции, то Delphi пропустит его и при сборке будет использовать уже существующий файл DCU. Так увеличивается скорость компиляции.

Ну и файл с расширением exe — это наша программа, исполняемый файл того приложения, которое мы скомпилировали в Delphi.

Файлы с расширением dfm, pas, dpr и dproj можно открыть обычным блокнотом и внести в них нужные изменения. Но это делается только в том случае если по какой-то причине эти файлы не открываются в IDE Delphi.

Вы можете заметить, что когда открываете уже существующий проект в Delphi, то можно открыть файл dpr, а можно открыть и dproj. И эффект будет одинаковым. В чем же разница?

Как я уже упоминал, файл dpr содержит исходный код Delphi (это самый важный файл), а файл dproj содержит конфигурацию проекта.

Открывая один из них, интегрированная среда разработки автоматически ищет другой.

Попробуйте удалить файл dproj и открыть (оставшийся) файл dpr — IDE Delphi сообщит вам, что будет сгенерирован новый файл dproj.

А вот файл dpr ни в коем случае не удаляйте!

Надеюсь, этот урок стал для вас полезным, и вы подпишитесь на мой канал. Также буду очень благодарным за ваши лайки и оставленные комментарии под этим видео. Канал D-Nik Webmaster.

Delphi Функции

Функция Abs – предназначена для получения абсолютной величины числа (модуль)

Функция Addr – возвращает адрес переменной, функции или процедуры

Функция AnsiCompareStr – сравнение двух строк на равенство

Функция AnsiCompareText – сравнение двух строк на равенство

Функция AnsiContainsStr – возвращается истина, если строка содержит подстроку

Функция AnsiEndsStr – возвращается истина, если строка заканчивается подстрокой

Функция AnsiIndexStr – сравнивает строку со списком строк, возвращает соответствующий индекс

Функция AnsiLeftStr – извлекает символы с левой стороны строки

Функция AnsiLowerCase – символы верхнего регистра изменяются в строку со строчными буквами

Функция AnsiMatchStr – возвращается истина, если строка точно соответствует какой-либо строке из списка

Функция AnsiMidStr – возвращает подстроку из средних символов строки

Функция AnsiPos – находит позицию одной строки в другой

Функция AnsiReplaceStr – заменяет часть одной строки другой

Функция AnsiReverseString – переворачивает последовательность символов в строке

Функция AnsiRightStr – извлечение символов с правой стороны строки

Функция AnsiStartsStr – возвращает True, если строка начинается с подстроки

Функция AnsiUpperCase – символы нижнего регистра изменяются на символы верхнего регистра

Функция ArcCos – арккосинус числа, возвращается в радианах

Функция ArcSin – арксинус числа, возвращается в радианах

Функция ArcTan – арктангенс числа, возвращается в радианах

Функция Assigned – осуществляет проверку функциональности указателей, объектов, методов

Функция BeginThread – начинает отдельный поток выполнения кода

Функция Bounds – передаёт координаты вершин объекта типа TRect (прямоугольник)

Функция CelsiusToFahrenheit – конвертирует значение температуры из Цельсия в Фаренгейта

Функция ChangeFileExt – изменяет расширение имени файла

Функция Chr – конвертирует целое число в символ

Функция Concat – cоединяет несколько строк в одну

Функция Convert – преобразует одну величину измерения в другую

Функция Copy – создает копию части строки или части массива

Функция Cos – косинус числа

Функция CreateDir – создаёт директорию

Функция CurrToStr – преобразует денежную величину в строку

Функция CurrToStrF – преобразует денежную величину в строку с форматированием

Функция Date – возвращает текущую дату

Функция DateTimeToFileDate – преобразует значение TDateTime в формат date/time формат файла

Функция DateTimeToStr – конвертирует значение даты и времени TDateTime в строку

Функция DateToStr – преобразует значение даты TDateTime в строку

Функция DayOfTheMonth – дает день месяца для значения TDateTime (ISO 8601)

Функция DayOfTheWeek – возвращает индекс дня недели для значения TDateTime (ISO 8601)

Функция DayOfTheYear – выдает день года для значения TDateTime (ISO 8601)

Функция DayOfWeek – выдает индекс дня недели для значения TDateTime

Функция DaysBetween – выдает целое число дней между 2 датами

Функция DaysInAMonth – выдает число дней в месяце

Функция DaysInAYear – выдает число дней в году

Функция DaySpan – выдает дробное число дней между 2 датами

Функция DegToRad – преобразовывает значения градусов в радианы

Функция DeleteFile – удаляет файл, указанный в параметре

Функция DirectoryExists – возвращает True, если указанная директория существует

Функция DiskFree – выдает число свободных байтов на указанном диске

Функция DiskSize – выдает размер указанного диска в байтах

Функция DupeString – создает строку, содержащую копии подстроки

Функция EncodeDate – формирует значение TDateTime из значений года, месяца и дня

Функция EncodeDateTime – формирует значение TDateTime из значений времени и дня

Функция EncodeTime – формирует значение TDateTime из значений часа, минуты, секунды и миллисекунды

Функция EndOfADay – генерирует значение TDateTime, установленное на самый конец дня

Функция EndOfAMonth – генерация значения TDateTime, установленное на самый конец месяца

Функция Eof – возвращает True, если позиция курсора находится в конце файла открытого с помощью Reset

Функция Eoln – возвращает True, если позиция курсора находится в конце строки

Функция Exp – выдаёт экспоненту числа

Функция ExtractFileDir – извлекает из полного имени файла название папки

Функция ExtractFileDrive – извлекает из полного имени файла название диска

Функция ExtractFileExt – извлекает из полного имени файла его расширение

Функция ExtractFileName – извлекает из полного имени файла краткое имя файла

Функция ExtractFilePath – извлекает из полного имени файла название патча

Функция FahrenheitToCelsius – конвертирует температуру из Фаренгейта в Цельсий

Функция FileAge – получение даты/время последнего изменения файла, не открывая его

Функция FileDateToDateTime – конвертирует формат даты/времени файла в значение TDateTime

Функция FileExists – возвращает True если указанный файл существует

Функция FileGetAttr – выдаёт атрибуты файла

Функция FilePos – даёт позицию файла в двоичном или текстовом файле

Функция FileSearch – поиск файла в одной или более папках

Функция FileSetAttr – устанавливает атрибуты файла

Функция FileSetDate – установка даты и времени последнего изменения файла

Функция FileSize – выдает размер открытого файла в записях

Функция FindClose – закрывает успешный FindFirst поиск файла

Функция FindCmdLineSwitch – определяет, был передан некоторый параметр выключатель

Функция FindFirst – находит все файлы, соответствующие маске файла и атрибутов

Функция FindNext – находит следующий файл после успешного FindFirst

Функция FloatToStrF – преобразует значение с плавающей запятой в строку с форматированием

Функция ForceDirectories – создаёт новый путь каталогов

Функция Format – расширенное форматирование чисел и текста в строке

Функция FormatCurr – расширенное форматирование значений валюты в строку

Функция FormatDateTime – расширенное форматирование переменной TDateTime в строку

Функция FormatFloat – расширенное форматирование числа с плавающей запятой в строку

Функция Frac – дробная часть числа с плавающей запятой

Функция GetCurrentDir – возвращает текущий каталог (диск плюс каталог)

Функция GetLastError – выдаёт код ошибки последнего неудачного Windows API вызова

Функция GetMem – получает указанное число байтов памяти

Функция Hi – возвращает байт старшего разряда от типа Integer

Функция High – возвращает самое высокое значение типа или переменной

Функция IncDay – приращивает переменную типа TDateTime на + или - число дней

Функция IncMillisecond – приращивает переменную типа TDateTime на + или - число миллисекунд

Функция IncMinute – приращивает переменную типа TDateTime на + или - число минут

Функция IncMonth – увеличивает TDateTime переменную на некоторое число месяцев

Функция IncSecond – приращивает переменную типа TDateTime на + или - число секунд

Функция IncYear – увеличивает TDateTime переменную на количество лет

Функция InputBox – отображает диалог, который просит пользователя о вводе текста, со значением по умолчанию

Функция InputQuery – отображает диалог, который просит пользователя о вводе текста

Функция Int – целая часть числа с плавающей точкой

Функция IntToHex – преобразует целое число в шестнадцатеричную строку

Функция IntToStr – конвертирует целое число в строку

Функция IOResult – содержит возвращаемый код последней операции ввода/вывода

Функция IsInfinite – проверяет, является ли число с плавающей точкой бесконечным

Функция IsLeapYear – возвращает True, если данный календарный год високосный

Функция IsMultiThread – возвращает True, если код выполняет множество потоков

Функция IsNaN – выясняет, содержит ли число с плавающей запятой настоящее число

Функция LastDelimiter – находит последнюю позицию указанных символов в строке

Функция Length – возвращает число элементов в массиве или строке

Функция Ln – выдает натуральный логарифм числа

Функция Lo – возвращает младший байт целого числа (2-байтового)

Функция Log10 – вычисляет логарифм числа с основанием 10

Функция Low – возвращает самое низкое значение типа или переменной

Функция Max – выдает максимальное число из двух целых значений

Функция Mean – выдает среднее число из набора чисел

Функция MessageDlg – отображает сообщение, знак и выбираемые кнопки

Функция MessageDlgPos – отображает сообщение и кнопки в заданной позиции экрана

Функция Min – выдает минимальное из двух целых значений

Функция MonthOfTheYear – выдает месяц года для значения TDateTime

Функция Now – выдает текущую дату и время

Функция Odd – проверяет, является ли целое число нечетным

Функция Ord – порядковое значение целого числа, символа или перечисления

Функция ParamCount – выдает число параметров переданной текущей программе

Функция ParamStr – возвращает один из параметров, используемых для запуска текущей программы

Функция Pi – математическая константа

Функция Point – генерирует значение TPoint из значений X и Y

Функция PointsEqual – сравнивает два значения TPoint на предмет равенства

Функция Pred – уменьшает порядковую переменную

Функция Printer – возвращает ссылку на глобальный объект Printer

Функция PromptForFileName – показывает диалог, позволяющий пользователю выбрать файл

Функция PtInRect – проверяет, находится ли точка в пределах прямоугольника

Функция RadToDeg – преобразовывает значение радиана в градусы

Функция Random – генерирует случайное число с плавающей запятой или целое число

Функция RandomRange – генерирует произвольное число в пределах введённого диапазона

Функция RecodeDate – изменяет только дату переменной TDateTime

Функция RecodeTime – изменяет только время переменной TDateTime

Функция Rect – создаёт объект TRect (прямоугольник) с указанием 2 точек или 4 координат

Функция RemoveDir – удалить директорию

Функция RenameFile – переименование файла или директории

Функция Round – округление чисел с плавающей запятой до целого числа

Функция SeekEof – пропускает символы, пока не встретится конец файла

Функция SeekEoln – пропускает символы, пока не встретится конец текущей строки или файла

Функция SelectDirectory – выводит диалоговое окно, с помощью которого пользователь может выбрать директорию

Функция SetCurrentDir – изменяет текущую директорию

Функция ShellExecute – открывает или выводит на печать указанный файл

Функция Sin – возвращает синус числа

Функция SizeOf – возвращает занимаемый размер типа или переменной в байтах

Функция Slice – создает часть массива с параметром "Открытый Массив"

Функция Sqr – возвращает квадрат числа

Функция Sqrt – возвращает квадратный корень числа

Функция StringOfChar – создает строку из одного символа, повторенного много раз

Функция StringReplace – заменяет одну или несколько подстрок, найденных в заданной строке

Функция StringToWideChar – преобразует обычную строку в WideChar-буфер с завершающим 0

Функция StrScan – ищет заданные символы в строке

Функция StrToCurr – преобразует числовую строку в денежное выражение

Функция StrToDate – конвертирует строку с датой в значение типа TDateTime

Функция StrToDateTime – конвертирует строку с датой и временем в значение типа TDateTime

Функция StrToFloat – преобразует числовую строку в значение с плавающей запятой

Функция StrToInt – преобразует строку с целым значением в Integer

Функция StrToInt64 – преобразует строку с целым значением в Int64

Функция StrToInt64Def – преобразует строку с целым значением в Int64, учитывая значение по умолчанию

Функция StrToIntDef – преобразует строку в значение с типом Integer, учитывая значение по умолчанию

Функция StrToTime – конвертирует строку с временем в значение с типом TDateTime

Функция StuffString – заменяет часть одной строки на другую

Функция Succ – инкрементирует порядковую переменную

Функция Sum – находит сумму элементов массива, состоящего из чисел с плавающей точкой

Функция Tan – тангенс числа

Функция Time – возвращает текущее время

Функция TimeToStr – конвертирует значение времени типа TDateTime в строку

Функция Tomorrow – возвращает дату завтрашнего дня

Функция Trim – удаляет начальные и конечные пробелы в строке

Функция TrimLeft – удаляет начальные пробелы в строке

Функция TrimRight – удаляет конечные пробелы в строке

Функция Trunc – целая часть числа с плавающей запятой

Функция VarType – возвращает текущий тип Variant переменной

Функция WideCharToString – копирует строку WideChar, заканчивающуюся нулём, в нормальную строку

Функция WrapText – добавляет перенос строки в строку, чтобы имитировать перенос слов

Функция Yesterday – возвращает вчерашнюю дату в местном часовом поясе

Delphi Процедуры

Процедура Abort – прерывает обработку команд и выходит к последнему исключительному блоку

Процедура Append – открывает текстовый файл, для добавления записей в файл (добавляет в конец файла)

Процедура AssignFile – связывает дескриптор файла с бинарным или текстовым файлом

Процедура AssignPrn – обрабатывает принтер как текстовый файл (простой способ печати текста)

Процедура Beep – делает звук гудка

Процедура BlockRead – читает блок записей данных из нетипизированного двоичного файла

Процедура BlockWrite – записывает блок записей данных в нетипизированный двоичный файл

Процедура Break – выполняет выход из одного цикла

Процедура ChDir – выбор диска и директории (папки), в которой будет производиться работа

Процедура CloseFile – закрывает открытый файл

Процедура Continue – заставляет перейти к следующей итерации цикла

Процедура DateTimeToString – огромные возможности форматирования даты в строку

Процедура Dec – декремент порядковой переменной

Процедура DecodeDate – извлекает значения года, месяца, дня из TDateTime переменной

Процедура DecodeDateTime – разбивает TDateTime переменную на ее части даты/времени

Процедура DecodeTime – разбивает значение TDateTime на отдельные значения времени

Процедура Delete – удаляет часть символов из строки

Процедура Dispose – очищает память на которую указывает указатель

Процедура EndThread – заканчивает поток с кодом завершения

Процедура Erase – стирает файл

Процедура Exclude – исключает значение из переменной набора (множества)

Процедура Exit – осуществляет выход из функции или процедуры

Процедура FillChar – заполняет раздел памяти значением байта или символа-заполнителя

Процедура Flush – сбрасывает буферизованные данные текстового файла в файл

Процедура FreeAndNil – освобождение памяти объекта и установка его в nil

Процедура FreeMem – освобождает память, используемую переменной

Процедура GetDir – получает текущий каталог (диск плюс путь) для указанного диска

Процедура GetLocaleFormatSettings – получает региональные значения для безопасных потоков функций

Процедура Halt – заканчивает программу с дополнительным диалогом

Процедура Inc – увеличивает порядковую переменную

Процедура Include – включает значение во множество переменных

Процедура Insert – вставляет строку в другую строку

Процедура MkDir – создаёт каталог

Процедура Move – копирует байты данных из источника в место назначения

Процедура New – создаёт новую переменную типа указатель

Процедура ProcessPath – разделяет строку диск/путь/имя файла на ее составляющие части

Процедура Randomize – устанавливает генератор случайного числа на следующее значение

Процедура Read – позволяет прочитать данные из двоичного или текстового файла

Процедура ReadLn – позволяет прочитать полную строку данных из текстового файла

Процедура Rename – переименование файла

Процедура ReallocMem – позволяет изменить размер существующего блока памяти

Процедура ReplaceDate – изменяет только часть даты TDateTime переменной

Процедура ReplaceTime – изменяет только часть времени TDateTime переменной

Процедура Reset – открывает текстовый файл для чтения, или двоичный файл для чтения/записи

Процедура ReWrite – открывает текстовый или двоичный файл для записи

Процедура RmDir – удаление каталога

Процедура RunError – заканчивает программу с диалогом ошибки

Процедура Seek – перемещает указатель в двоичном файле в новую позицию

Процедура SetLength – изменяет размер строки или размер динамического массива

Процедура SetString – копирует символы из буфера в строку

Процедура ShowMessage – показывает простое диалоговое окно с кнопкой ОК, содержащее заданную строку

Процедура ShowMessageFmt – отображает отформатированные данные в простом диалоговом окне с кнопкой ОК

Процедура ShowMessagePos – показывает строку в простом диалоговом окне размещенном в заданном месте

Процедура Str – конвертирует целое число или число с плавающей точкой в строку

Процедура Truncate – уменьшает размер файла, удаляя все данные после текущей позиции

Процедура Val – конвертирует числовые строки в целое число, или число с плавающей запятой

Процедура Write – записывает данные в бинарный или текстовый файл

Процедура WriteLn – записывает законченную строку данных в текстовый файл

Main Menu