Главная » Статьи для тега "Delphi"

Технические требования и установка Delphi 2006

Добавлено Дата: 12 November, 2011 категория: Delphi

Система Delphi 2006 работоспособна в операционных системах Microsoft Windows 2000, Microsoft Windows Server 2003 или Microsoft Windows XP Professional (рекомендуется). Компьютер должен быть оборудован ОЗУ от 256 Мбайт (рекомендуется 512 Мбайт) и процессором класса Pentium II 450 МГц (рекомендуется Pentium III 850 МГц). На жестком диске необходимо наличие 1,2 Гбайт свободного пространства. Перед началом установки программа-инсталлятор install.exe проверит, имеются ли на компьютере нужные системные и прикладные приложения для функционирования Delphi. Так, в текущей версии Windows должны быть установлены браузер Microsoft Internet Explorer v6.0 SP1, версия среды Microsoft .NET 1.1 и ее обновление .NET 1.1 SP1, библиотека разработчика .NET Framework SDK 1.1, XML-служ- ба Microsoft XML Core Services (MSXML) 4.0 SP2 и среда Microsoft Visual J# .NET vl.l.

Читать »

Delphi 2006 – Быстрое комментирование

Добавлено Дата: 12 November, 2011 категория: Delphi

Любую часть кода можно быстро превратить в комментарий. Для этого его надо выделить, после чего нажать комбинацию клавиш Ctrl + /, и в начало каждой выделенной строки добавятся символы комментария / / .

Расширенные комментарии

В дополнение к однострочным комментариям в стиле Си "//", уже давно существующим в Delphi, в новой версии появился их расширенный вариант, состоящий из трех символов: "III". Он применяется для указания компилятору, что текст, следующий за ним, должен быть использован системами автоматического ведения документации (формирования XML-докумсн- та). Эта технология исходно реализована в системе Microsoft Visual С#. Фактически, такой трехсимвольный комментатор допускает указание набо- pa XML-тегов, на основе которых и будет генерироваться эта документация, в итоговом виде представимая в виде XML-файла. Список рекомендуемых тегов можно найти в документации .NET SDK, в разделе «Recommended Tags for Documentation Comments».

Читать »

Delphi 2006 – Репозитарий объектов

Добавлено Дата: 11 November, 2011 категория: Delphi

В среде Delphi имеется удобная и важная возможность ускорения процесса разработки за счет размещения всевозможных шаблонов и заготовок проектов и форм в едином хранилище, называемом Репозитарием объектов (Object Repository). Доступ к его содержимому выполняется командой File > New > Other (Файл > Создать > Другое) — рис. 1.5.

Читать »

Оболочка .NET Framework

Добавлено Дата: 10 November, 2011 категория: Delphi

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

Читать »

Унифицированный язык моделирования

Добавлено Дата: 10 November, 2011 категория: Delphi

Unified Modeling Language (UML) предназначен для использования в объектно-ориентированных системах разработки, таких, как Delphi. Он позволяет уменьшить разрыв между этапом проектирования системы, построения ее архитектуры и внутренних взаимосвязей и этапом кодирования. Технология UML дает возможность построить абстрактную модель системы, не привязанную к конкретному языку программирования. Она опирается на набор понятий и концепций, которые доступны специалисту, не знакомому с программированием. Кроме того, визуальные средства UML позволяют уже на первых этапах подготовки требований к системе привлекать представителей заказчика, вообще не знакомых с информационными технологиями. Это достигается за счет наглядной и выразительной графической нотации.

Читать »

Delphi 2006 – Доступ к модели ЕСО на уровне исходных текстов

Добавлено Дата: 10 November, 2011 категория: Delphi

С помощью визуальных средств моделирования Delphi можно быстро создавать проекты с весьма сложной логикой. Платформно-независимые сценарии, описывающие эту логику, формируются на универсальном языке OCL и встраиваются в диаграммы модели UML. Поэтому развитие и совершенствование проекта может происходить на высоком уровне абстракции (на уровне модели). Однако в практических проектах обычно требуется реализовывать более тонкие аспекты взаимодействия программы с человеком, нежели те, что предоставляют стандартные элементы управления, в частности таблицы DataGrid. Поэтому не всегда удается избежать ручного программирования, да это и не требуется. Оптимальная схема разработки предполагает сочетание визуальных и моделирующих возможностей оболочки при построении общей архитектуры. На одних этапах работы удобно пользоваться средства-

Читать »

Шаблоны кода (Code Templates)

Добавлено Дата: 9 November, 2011 категория: Delphi

Шаблоны типовых конструкций и операторов языка Delphi можно вводить в текущую позицию курсора одним щелчком мыши. Это выполняется с помощью так называемого Менеджера шаблонов, который вызывается командой View > Templates (Вид > Шаблоны), когда в главном окне открыт редактор исходных текстов.

Читать »

Delphi 2006 – Построитель выражений OCL

Добавлено Дата: 9 November, 2011 категория: Delphi

Язык объектных ограничений OCL в данной книге не рассматривается. Тем не менее отметим наличие в системе Delphi удобного визуального построителя выражений OCL. В рассмотренном примере мы вручную вводили строку Star .All Instances (отбор всех экземпляров класса Star) в свойство Expression дескриптора ehStar. Однако можно воспользоваться визуальным построителем выражений OCL.

Читать »

Технология создания простой Web-службы

Добавлено Дата: 9 November, 2011 категория: Delphi

Рассмотрим создание несложной Web-службы, умножающей два полученных дробных числа.

1.       Новый проект создается командой главного меню File > New > Other (Файл > Создать > Другое), на вкладке Delphi for .NET Projects (Проекты Delphi.NET) выбирается значок ASP.NET Web Service Application (Приложение Web-службы ASP. NET) – рис. 6.15.

Читать »

Проблема автоматического переключения раскладки в RichEdit

Добавлено Дата: 6 July, 2011 категория: Delphi

Создадим тестовый проект с именем RichEditText (модуль формы назовем edit.pas— на диске Glava8\2), положим на пустую форму компонент RichEdit, запустим его и наберем в нем несколько разноязычных строк. Если вы теперь будете клавишами управления курсором или мышью перемещать текстовый курсор между этими строками, то раскладка у вас также будет меняться. Интересно, что баг (bug) функционирует непоследовательно: если окно теряет фокус ввода, а потом его восстанавливает, то раскладка устанавливается та, что была по умолчанию установлена системным переключателем, а стоит курсор сдвинуть с места, если он на строке с другой раскладкой, она тут же переключится. Потерей-возвращением фокуса можно вернуть раскладку на место. Заметим, что этот баг широко известен, начиная по крайней мере с версии Delphi 2.0, корпорация Borland успела с тех пор пару раз сменить название, но он так и кочует из версии в версию" (уверен, что и в Delphi .NET он также наверняка имеется — просто не проверял). Вроде бы винить Borland особенно не за что, т. к. компонент этот есть просто ретрансляция класса того же названия (RichEdit) из Windows API. Но ведь справиться с этим багом квалифицированный программист может минут за пятнадцать, и, к тому же, это не единственное, что в RichEdit сделано достаточно "криво" — так, что без прямого обращения к API сколько-нибудь приличную программу на его основе сделать просто нельзя.

Читать »

Строка типа PChar

Добавлено Дата: 4 July, 2011 категория: Delphi

Если вы усвоите сказанное в предыдущем абзаце, то у вас не будет проблем со строками pchar в Delphi (см. также примечание на этот счет в главе 14), которые есть ни что иное, как С-указатель на символ (а именно, на самый первый в строке символ с номером 0), его определение и выглядит так: pchar = ‘char. Идея, легшая в основу ASCIIZ-строк, была проста: видимо, когда памяти у компьютеров было мало, объем программ исчислялся байтами, и программист мог удержать в голове, что и где у него располагается (см. эпиграф), возникла мысль хранить строковые данные так, чтобы вообще не надо было знать, сколько они места занимают. Просто считываешь до первого встреченного нуля, и все. Не знаю, гак ли это на самом деле, только в современных условиях за памятью все равно приходится следить. Но язык С весь построен на идее указателей’, так что в любых языках, основанных на его синтаксисе, все строки являются нуль-терминированными.

Читать »

Совет 3 — об исключениях

Добавлено Дата: 1 July, 2011 категория: Delphi

Нужно тщательно просматривать программу на предмет возможного возникновения исключительных ситуаций. Приведу один простой пример: предположим, вы открываете некий файл, который только что сами создали. То есть он, казалось бы, гарантированно существует — ну какая тут может быть исключительная ситуация? Но если вы перед открытием не проверили, действительно ли он существует, то в сложной программе с множеством событий вы легко можете попасть в совершенно дурацкую ситуацию: представьте себе, что некий "ламер" взял и удалил этот файл в промежутке между созданием и обращением к нему. "Сам виноват" — скажете вы, и будете категорически неправы. В вашей воле прервать выполнение программы с сообщением типа "Файл … не существует", но если программа при этом виснет или выдает нечто вроде невнятного "Access denied" — "ламер" даже не поймет, где и что он сделал не так. А такого допускать нельзя. Я специально заостряю ваше внимание иа данном примере, потому что на практике таких экзотических проверок, конечно, никто не делает, полагаясь на системные обработчики исключении. И мы также этим заниматься не будем, но вы должны понимать, что и принципе это неправильно.

Читать »

О Delphi и Windows

Добавлено Дата: 15 June, 2011 категория: Delphi

Кстати, а почему именно Delphi? В принципе все современные пакеты визуального программирования позволяют делать одно и то же, а если какие-го вещи делать удобнее в одном пакете, а другие — в другом, то никто не мешает использовать их совместно. Скажем, библиотеки VCL (Visual Components Library) от Borland являются общими для Visual С++ и Delphi и написаны в основном на Object Pascal, a Windows API, наоборот, большей частью написаны на С (или С++), что не мешает использовать их в любой среде. Но Delphi, безусловно, является на сегодняшний день наиболее универсальной средой программирования, которая позволяет без лишних сложностей создавать как самые простые пользовательские программы, так и навороченные профессиональные пакеты.

Читать »

Технология OLE Automation

Добавлено Дата: 6 June, 2011 категория: Delphi

OLE означает Object Linking and Embedding (связывание и внедрение объектов). OLE Automation — это часть технологии OLE, которая отвечает за интеграцию приложений (см. мечты Джефа Раскина в главе I). СОМ — это не то, что СОМ-порт, а вовсе даже Component Object Model. Разница между OLE Automation и СОМ в том, что вторая появилась позднее и является более продвинутой версией, позволяющей, в том числе, взаимодействующим приложениям находиться на разных компьютерах. Для простоты будем считать, что для наших задач между ними никакой разницы нет. Модуль, отвечающий за объекты OLE Automation, в Delphi носит говорящее название ComObj. Мы будем говорить OLE, подразумевая OLE Automation, а термин "СОМ" мы с этого момента вообще вслух постараемся не произносить, чтобы не путаться.

Читать »

Справка в SlideShow

Добавлено Дата: 2 June, 2011 категория: Delphi

Перенесем проект SlideShow из папки GlavalS в новую папку (Glava 16\3) и придадим ему номер версии 2.1. Файл со справкой я назвал slide.htm и расположил его в той же папке. Добавим к проекгу новую форму типа Tabbed Pages (File | New | Other | Forms | Tabbed Pages), которая представляет собой форму-диалог с установленным компонентом Pageccncrol. В нем как раз будет три закладки (компонента типа TtabSheet). первую из которых мы назовем Справка, вторую — О программе, а третья зачем? А третью мы назовем Установки и потом перенесем на нее нашу панель с настройками, чтобы все было единообразно. Этот перенос и будет самым хлопотным в переработке программы.

Читать »