Как сделать книгу в delphi
Программирование на Delphi. Часть 1. Установка Delphi Community Edition (бесплатная версия)
Компания Embarcadero в 2018 году представила Delphi Community Edition — бесплатную версию легендарной среды разработки Delphi. Использовать её могут студенты, стартаперы, небольшие команды, некоммерческие организации. Условия использования: лицензия на использование продолжает действовать до тех пор, пока прибыль физического лица или компании от приложений Delphi не достигнет 5 000 долларов США, или штат команды разработчиков не превысит 5 человек.
С помощью Delphi Community Edition можно разрабатывать мультиплатформенные приложения на Windows, Android, iOS и macOS. В этой статье мы пошагово пройдём процесс установки среды и напишем тестовое приложение под Windows. Delphi всегда был инструментом для быстрого старта в разработке под Windows на языке Pascal, это мы сегодня и проверим.
Примерное время установки: около 40-60 минут.
1. Скачивание бесплатной версии Delphi
Для того, чтобы получить доступ к Delphi Community Edition, пройдите по этой ссылке https://www.embarcadero.com/ru/products/delphi/starter/free-download
Заполните форму, введенный пароль сохраните. В качестве компании я указал один из своих сайтов, телефон реальный, но мне никто пока что не звонил :). Главное: правильно укажите электронную почту.
На почту вам придёт письмо с ключом — его лучше сохранить. После отправки формы начнётся процесс загрузки. Если загрузка не начнётся, ссылка будет также в письме. Письмо вам необходимо — если оно не пришло, проверяйте спам. Если вообще не пришло, регистрируйтесь заново на другой ящик. Я регистрировался дважды на разные email — один на доменную почту, второй на Gmail. Оба раза всё было ок. Вот как выглядит письмо:
2. Установка Delphi Community Edition
Введите Serial number из письма в почте и нажмите Register.
Программа начнёт связываться с серверами Embarcadero и попытается зарегистрировать вашу копию. На одном компьютере у меня всё произошло мгновенно, на другом с третьей попытки. Судя по сообщениям, проблема была с серверами Embarcadero. Если всё получилось, переходите к следующему разделу статьи. Если нет, попробуйте сделать следующее. На скриншоте ниже кликните по ссылке «Trouble connection…»
Программирование на Delphi. Часть 2. Разработка Android-приложения
Продолжаем нашу серию статей по Delphi. В предыдущем материале мы скачали и установили бесплатную версию Delphi и запустили простейшую программу под Windows, сегодня наша цель: разработать первое приложение на платформе Android и запустить его на своём телефоне.
1. Подготовка среды разработки Delphi для создания Android-приложений
Установим все необходимые инструменты для разработки. Нажмите в главном меню Tools — Manage Platforms
Выберите вкладку Additional Options и там отметьте галочками Java Development Kit 1.8 и Android SDK 25.2.5 — NDK r17b. Нажмите Apply — это запустит процесс скачивания и установки компонентов.
Процесс довольно длительный, может потребоваться перезапуск среды разработки. Старайтесь не нагружать компьютер другими операциями. После успешного завершения вы увидеть надпись Operation Completed.
Нажмите Start working — среда разработки готова к созданию Android-приложений.
ЗАМЕЧАНИЕ. Я протестировал разные варианты установки компонентов Android на нескольких компьютерах и операционных системах. В том числе: когда SDK уже установлено (с Android Studio), когда компоненты ставились вручную с серверов Google, когда использовалась виртуальная машина AdoptOpenJDK. Если вы хотите пойти таким же сложным путём (ручная установка), вот некоторые параметры работающих версий: AdoptOpenJDK (Windows 64-bit OpenJDK 8 (LTS) with HotSpot JVM), Android SDK (sdkmanager «build-tools;29.0.0» «extras;google;usb_driver» «platforms;android-26» «tools» «platform-tools» ), Android NDK r17b.
Если автоматическая установка не сработает, пишите вопросы в комментариях — я постараюсь ответить и дополнить статью.
2. Подготовка проекта Android-приложения
Нажимаем на главном экране (Welcome Page) Create a new Multi-Device Application — Delphi.
Выбираем Header/Footer (шаблон приложения с шапкой и подвалом) и жмём ОК.
Создаем папку проекта, я рекомендую поместить её в каталог C:\work и назвать HelloAndroid
Внесем небольшие изменения в наше приложение. В шапке формы напишем Привет Android. Для этого нажмём на метку HeaderLabel на форме и слева внизу найдём параметр Text.
Изменим его значение на Привет Android — и увидим, что изменился текст на форме.
Запустите эту программу под Windows (нажмите F9) — вы увидите обычную форму. Программа работает.
Переключим целевую платформу для компиляции приложения на Android в правом верхнем углу экрана (дважды щёлкните названии платформы).
Без телефона запустить приложение не получится. Давайте его настроим.
3. Настройка телефона для разработки Android
К сожалению, каждый телефон настраивается по-своему. Я расскажу общую схему на примере моего Xiaomi Redmi Note 4.
Для начала нужно включить режим разработчика. Необходимо зайти в Настройки — О телефоне и семь раз тапнуть пункт — версия MIUI (для телефонов Huawei, например, нужно сделать следующее: окне «О телефоне» необходимо не менее 7 раз нажать по строчке «Номер сборки»).
После этой процедуры зайдите в пункт меню Расширенные настройки, там нажмите Для разработчиков.
В меню разработчиков нужно включить кнопку Отладка по USB и затем Установка через USB. (Нюанс: для Redmi Note 4 в этот момент должна быть вставлена SIM-карта. После включения этих опций симку можно вынуть).
На других телефона процедура выглядит примерно также. Для вашей модели телефона инструкцию включения режим разработчика ищите в Google по запросу: «как включить режим разработчика для *название телефона*» или «как включить отладку по USB для *название телефона*».
После включения этих опций берёте хороший USB-кабель (например, которым заряжаете ваш телефон) и подключаете к компьютеру. На Windows 10 драйвера не потребовались, телефоны Android система определяла сама. Для Windows 8 потребовалось скачать ADB-драйвера для конкретной модели телефона. Они также гуглятся. Скачать подошедший мне adb-драйвер можно с нашего сайта.
При подключении устройства телефон может попросить разрешить отладку через USB для конкретного компьютера. Ставим галку и соглашаемся, нажав ОК. Если не успели, вытаскиваем кабель и вставляем снова.
Но может и не попросить, зависит от модели. Теперь важно, чтобы телефон увидела Delphi.
Скорее всего, после успешного подключения среда разработки подхватит устройство автоматически. Если этого не произойдёт, попробуйте нажать кнопку Refresh devices (обновление устройств). Справа от надписи Android вы увидите название вашего смартфона.
Всё готово к запуску приложения.
4. Запуск приложения на Android
Нажмите F9 (зелёный треугольник в панели управления) для запуска приложения.
Пока программа будет компилироваться, внимательно следите за вашим устройством Android. После создания файла apk (установочного файла Android-приложения) на компьютере он будет передан на ваш смартфон. Например, мой Xiaomi Redmi Note 4 даёт только 10 секунд на подтверждение установки. Если вы не уложитесь в это время (не успеете нажать Установить), установка будет отклонена и её нужно будет запускать заново, нажав F9 в Delphi.
К счастью, можно запомнить этот выбор для конкретного приложения. Ставьте галку (на скриншоте я ещё это не сделал) и нажимайте Установить, когда увидите подобный экран:
Подождите ещё немного — и приложение запустится! Ура!
Значок приложения появится также на рабочем столе вашего смартфона — вы можете запустить его снова или удалить. Для продолжения работы удалять его не нужно, при запуске новых версий из среды разработки Delphi будет заменять его на более свежую версию.
НЮАНС. Если один раз приложение установилось, а потом появляется ошибка, попробуйте удалить его с устройства. Это может быть связано с изменениями настроек телефона, подключением телефона к другому компьютеру и т.д.
Пока приложение совсем простое. Усовершенствуем его — добавим ввод данных.
5. Ввод данных в Android-приложении
Добавьте на форму текстовое поле, для этого найдите компонент TEdit в палитре компонентов (воспользуйтесь поиском, как показано на скриншоте) и перетащите его в верхнюю часть формы.
Под ним добавьте компонент кнопки TButton, как в предыдущем уроке. На самой кнопке напишите слово Приветствие, использовав его поле Text в инспекторе объектов. Ваш экран будет выглядеть примерно так:
И для текстового поля, и для кнопки измените в инспекторе объектов следующие свойства:
Элементы прижмутся к верхней части формы и станут в 2 раза выше, это сделает работу с программой удобнее (особенно на Android). Выглядеть в среде разработки это будет вот так:
6. Нажатие кнопки
Теперь напишем обработчик события — нажатия кнопки. Для этого дважды щёлкните на кнопке с надписью Приветствие — откроется редактор кода. Впишите (или скопируйте с этой страницы) туда следующий текст:
Самоучитель по Delphi 7 для начинающих с примерами
Среди прекрасных систем, осуществляющих объектно-ориентированное визуальное проектирование, особое место занимает Delphi. Она поможет, как профессионалам в сфере программирования, так и новичкам в этой отрасли.
Если человек только начинает учиться программированию, посредством использования этого языка есть возможность создавать самые простые прикладные программы. А вот перед профессионалами открываются возможности в реализации любых, даже самых сложных программных продуктов, независимо от их типа.
Запуск программы посредством нажатия одной кнопки
Для того, чтобы каждый раз не заниматься поиском папки для запуска программы Delphi, рекомендуется на рабочем столе создать ярлык. Это существенно упростит процесс запуска программы по сравнению с поиском файла под названием delphi32.exe.
После запуска на выполнение программы перед пользователем будет запущено четыре рабочих окна, как и в любой другой среде программирования. Главное окно Delphi размещается в верхней части экрана, на котором находится среда разработки и элементы для управления. По левую сторону размещается Инспектор объектов, в котором есть возможность выбора определенных компонентов и выбора их свойств.
В центральной части рабочей области находится окно программной начинки и форма, по которой будет создаваться будущая программа. Стоит обратить внимание на то, что в качестве визуального прообраза будущей программы выступает именно окно формы.
Создание самой простой программы в Delphi достаточно легкое и состоит из таких шагов:
Обратите внимание на то, что не во всех версиях программы Delphi запуск происходит посредством нажатия клавиши F9. Здесь обязательно нужно смотреть на всплывающую подсказку.
Компоненты Delphi
В пустой форме, созданной в среде программирования Delphi, смысла нет никакого. Поэтому нужно разобраться с тем, какие можно использовать компоненты. Найти их можно на главном окне на специальной палитре компонентов. Если рассматривать основные и базовые компоненты, то их можно найти на таких вкладках:
Если навести курсор мыши на их пиктограммы, появится всплывающее окно с названием компонента. Процесс перенесения компонентов на форму является достаточно простым, так как для этого нужно выполнить щелчок по желаемому элементу, после чего нужно указать место на форме, где он должен разместиться. Для самостоятельного конструирования желаемого интерфейса есть возможность свободно перемещать все компоненты по форме.
Среди основных компонентов, отвечающих за отображение текста, стоит выделить такие элементы, как Button, Memo, Label, Edit. В инспекторе объектов для каждого из этих элементов можно установить необходимые свойства. Для определения положения зачастую применяются такие основные свойства:
После того, как компоненты будут размещены на форме, они получат определенные значения этих свойств. Но в том случае, если есть необходимость установить определенные параметры, сделать это можно в инспекторе объектов на специальной вкладке Свойства для каждого отдельного элемента.
Помимо этого, стоит обратить внимание на то, что в Инспекторе объекта есть возможность выбора множества других свойств. Среди них есть свойство, которое делает компоненты невидимыми или же недоступными и множество других.
События Delphi
Каждый программист, работающий в операционной системе Windows, знает о том, что она является многозадачной. Это указывает на то, что в ней в один и тот же момент времени сразу может работать несколько программ. Поэтому одним из важных этапов в процессе создания любой программы является создание специального кода-обработчика для конкретного события.
Особенность Delphi состоит в том, что он самостоятельно получает сообщения от системы Windows и обрабатывает их без посторонней помощи человека. Для каждого из используемых компонентов может быть создано огромное количество событий, на которые они реагируют. Какие события нужно обрабатывать, самостоятельно решает программист, занимающийся созданием программного продукта.
Работая с Инспектором объекта, стоит обратить внимание на то, что в нем есть две вкладки: Свойства и События. В процессе перехода на вкладку События при необходимости реализации такого процесса, как создание обработчика события, необходимо выполнить двойной щелчок на необходимом событии.
В том случае, если осуществить процесс раскрытия выпадающего списка, то можно заметить, что в нем будут размещаться те обработчики, которые готовы к непосредственному использованию. Это указывает на то, что один и тот же обработчик может быть применен для того, чтобы обработать события одного из элементов, находящихся на форме.
Для любого визуального компонента можно выбрать множество событий, среди которых основными являются следующие:
Несмотря на вышеперечисленные события, существует их еще достаточно большой список, используемый для компонентов, расположенных на форме.
Константы, переменные и их виды
Перед тем, как в программе Delphi применять определенные данные, они на самом первом этапе должны быть описаны. При этом сам компилятор максимально следит за тем, чтобы в соответствии с описанием применялись необходимые виды. Именно это в дальнейшем поможет обойти стороной возникающие ошибки.
Независимо от величины, используемой в Delphi, она может быть переменной или же постоянной. В составе идентификатора могут быть использованы такие элементы:
Что же касается непосредственно самого регистра символов, то в Delphi он не имеет особого значения.
Для описания переменных используется ключевое слово var. В качестве имени может выступать любой из идентификаторов, но не применяемых ранее. В том случае, если нужно описать несколько переменных, это осуществляется таким образом:
Что же касается постоянной величины, то ее часто именуют в виде константы. Что же касается процесса описания констант, то оно является полностью аналогичным процессу описания переменным. Но здесь вместо слова Var применяется слово Const. Здесь можно навести такой пример:
Что же касается типов данных, то в Delphi в первую очередь выделяются числа и строки.
В качестве строки выступает определенная последовательность символов, которые находятся в одинарных кавычках. При этом не обязательно, чтобы в строке были символы, так как она и вовсе может быть пустой. Среди наиболее востребованных строковых типов стоит обратить внимание на String. В этом типе может находится определенное количество символов, общим объемом до 2 Гб.
В том случае, если есть необходимость в ограничении количества символов, то сразу после слова String в квадратных скобках нужно указать максимально возможное количество символов. Если мы имеет дело с одиночными символами, то в данном случае лучше использовать тип данных Char.
Рассматривая числа, стоит обратить внимание на то, что они могут быть, как целыми, так и дробными. Для целых чисел чаще всего применяются такие типы данных:
Если же рассматривать наиболее удобный тип данных для целых чисел, то особое место здесь занимает тип Integer. Что же касается прочих видов, то зачастую их применяют в том случае, если есть необходимость в уменьшении памяти на компьютере для сохранения данных.
Что же касается дробных чисел, то у них целая часть отделяется от дробной с помощью десятичной запятой. В данном случае используются такие типы данных:
Для применения в среде программирования Delphi наиболее удобным для дробных чисел является тип данных Real. Полностью эквивалентным к нему также можно считать и тип Double. Стоит обратить внимание на то, что в процессе работы с такими числами все вычисления происходят максимально приближенно, но не точно. Для того, чтобы минимизировать процесс возникновения ошибок в процессе бухгалтерских расчетов, может использоваться такой тип данных, как Currency.
Что же касается логического типа данных, то здесь выделяют тип Boolean, который может иметь только два значения: Ложь или Истина. Поэтому теперь, зная основные компоненты, особенности создания событий и типы данных, можно в среде программирования Delphi создавать самые простые программы.
Структурные и собственные типы данных
В том случае, если есть необходимость в создании достаточно сложной программы, использования строковых и числовых типов данных будет недостаточно для реализации этого процесса. В данной ситуации есть необходимость в применении собственных и структурных типов данных.
Особенность языка программирования Delphi заключается в том, что у программиста есть возможность самостоятельно создавать собственные типы данных. В том случае, если есть необходимость внести их в будущую программу, для этого применяется специальный оператор type.
Особое место занимает перечислимый тип данных. Его особенность состоит в том, что в диапазон его значений входит набор определенных идентификаторов. Зачастую этот тип используют в том случае, когда типы данных описываются не числами, а обычными словами. Для перечисления используются в обязательном порядке круглые скобки. К перечислимым типам можно отнести:
Что же касается структурных типов данных, то применяются они почти в каждой создаваемой программе. Среди них выделяют:
Массив представляет собой достаточно сложную структуру, к которой можно получить доступ только по определенному индексу (номеру). Все элементы, которые входят в структуру массива, должны иметь одинаковый тип. При этом сами массивы могут быть статическими, в которых количество элементов является неизменным, так и динамическими.
Изменения числа элементов массива происходит в рамках требований, установленных в конкретной программе. Это используется в том случае, когда есть необходимость в экономии ресурсов компьютера.
Не менее удобным и важным элементом выступают записи. Посредством использования этого компонента есть возможность в реализации такого процесса, как создание собственной базы данных. Сама запись представляет собой особую структуру данных, в которой каждый элемент имеет личное имя и выбранный тип данных. Очень часто каждый отдельный элемент, входящий в состав записи, называют просто полем.
Что же касается множества, то сюда принадлежит определенная группа компонентов, которая зачастую объединяется посредством использования одного и того же имени. Стоит обратить внимание на то, что в одном множестве может быть не больше, чем 256 элементов.
Операторы и выражения в программной среде Delphi
Рассматривая программную среду Delphi, стоит обратить внимание на то, что в ней применяются:
Также существует категория прочих выражений, но вышеперечисленные являются наиболее часто применяемыми.
Рассматривая математические выражения, которые используются чаще всего, в них зачастую можно встретить символ присваивания, вычитания, сложения, деления и умножения. В том случае, если есть необходимость в применении таких выражений, в обязательном порядке нужно учитывать приоритет действий.
Связано это с тем, что в языке программирования Delphi все действия осуществляются с учетом приоритета следования, а не в определенном порядке. Например, такие операции, как деление и умножение, имеют приоритет намного выше, нежели вычитание и сложение.
В том случае, если есть необходимость указать определенную последовательность, нужно использовать круглые скобки. Это будет указывать на то, какие операции будут выполняться в первую очередь. При этом не стоит забывать о том, что в одни скобки можно вкладывать неограниченное количество других круглых скобок.
Не стоит забывать о том, что помимо базовых математических действий в языке программирования Delphi представлено множество других математических функций, доступных к применению. Получить доступ к ним можно только тогда, когда добавить в программу дополнительный модуль Math. Не стоит забывать о том, что у программиста есть возможность в создании и собственных функций, но, естественно, использование встроенных компонентов будет намного легче.
Если есть необходимость в выполнении действий над данными логического типа, в данном случае используются логические выражения. Особенности их использования можно найти в условных операторах.
В том случае, если есть необходимость в создании сложным программ, нужно использовать дополнительные операторы. Закодировать совершенно любой алгоритм можно посредством применения таких операторов:
И если с оператором присваивания все достаточно просто и понятно, то особенность условных операторов заключается в том, что посредством его использования можно осуществить процесс изменения порядка выполнения определенных операторов. В первую очередь такое изменение будут зависеть от конкретных условий, предусмотренных в программе. Что же касается операторов цикла, то с их помощью можно реализовать процесс повторения одного и того же действия.