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

События и сообщения Delphi

Добавлено Дата: 7 March, 2012 категория: Delphi

Те, кому уже приходилось создавать приложения Windows традиционными методами, безусловно оценят простоту использования событий Delphi. Исключается всякая  необхо димость  организации перехвата сообщений Windows,  их обработки, анализа и т.д. Более подробная информация по этой теме приведена в главе 3, “Приключения сообщения”.

Читать »

Новые возможности  Delphi 6

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

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

Читать »

Совместимость Delphi и Kylix

Добавлено Дата: 5 March, 2012 категория: Delphi

Реализуя  приложение с высокой степенью совместимости между Delphi  и Kylix, не обходимо учитывать тот факт, что технология VCL применима только  для Windows. Ес ли необходимо создать  межплатформенное приложение или  компонент, то  придетсявоспользоваться библиотекой компонентов для X платформы (CLX — Component Library for X platform), которая в настоящий момент поддерживает и Delphi  6, и Kylix. Более  под робная информация о платформе CLX приведена в главах 10, “Архитектура компонен тов: VCL и CLX” , и 13, “Разработка компонентов CLX”. В библиотеку CLX входят четы ре основных компонента.

Читать »

Модули, компоненты и пакеты

Добавлено Дата: 5 March, 2012 категория: Delphi

Формат откомпилированных модулей  Delphi  (файлы .dcu) имеет  тенденцию из меняться от версии к версии компилятора. Это означает, что,  если  необходимо при менять один  и тот  же модуль в нескольких версиях Delphi, следует  иметь  исходный код каждого  модуля, используемого приложением. В этом случае невозможно вос пользоваться компонентами (неважно, кем они  изготовлены), если  не  будет в нали чии их исходного кода. При  отсутствии исходного кода какого либо компонента, раз работанного независимым производителем, обратитесь к распространителю за вер сией компонента, соответствующей вашей версии Delphi.НА ЗАМЕТКУ

Читать »

Общая совместимость Delphi

Добавлено Дата: 5 March, 2012 категория: Delphi

Общая  совместимость между различными версиями Delphi, C++Builder  и Kylix свя зана  с большим  количеством проблем и  обстоятельств. Изучив  эти  подробности и особенности компиляторов, можно  научиться создавать и поддерживать такой  код, который с небольшими доработками может  быть перенесен не только  с одной  версии компилятора на другую, но и на иную платформу.

Читать »

Взаимосвязь сообщений  и событий

Добавлено Дата: 5 March, 2012 категория: Delphi

Теперь уже сказано достаточно, чтобы  понять, что  система событий Delphi пред ставляет собой  интерфейс для взаимодействия с сообщениями Windows,  по крайней мере — с некоторой их частью.  Многие  события компонентов библиотеки VCL непо средственно связаны с сообщениями Windows типа WM_XXX. В табл. 3.3 приведены ос новные события компонентов библиотеки VCL и соответствующие им сообщения Windows.

Читать »

Обзор простейшего приложения Delphi

Добавлено Дата: 5 March, 2012 категория: Delphi

Простое действие, например перетаскивание компонента “Кнопка”  в форму,  при водит к автоматическому созданию кода данного элемента и добавлению его к объекту формы:

type

TForm1 = class(TForm)

Button1: TButton;

private

{ Закрытые объявления }

Читать »

Внутренние  сообщения компонентов  VCL

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

Компоненты библиотеки VCL используют обширный набор  собственных внутрен них сообщений и уведомлений. Хотя в создаваемых приложениях Delphi  вряд ли потре буется работать с этими  сообщениями непосредственно, тем не менее  разработчику компонентов будет весьма  полезно познакомиться с ними.  Имена  этих  сообщений все гда начинаются с префикса CM_ (сообщения компонентов — component messages)  или CN_ (уведомления  компонентов —  component  notification). Они  используются  компонентами библиотеки VCL для управления состоянием их внутренних свойств — например для пе редачи фокуса,  установки цвета,  изменения состояния видимости, выдачи  требования перерисовки окна,  поддержки операций перетаскивания и т.д. Полный список  этих со общений можно  найти в разделе интерактивной  справочной системы Delphi, посвя щенном созданию пользовательских компонентов.

Читать »

Использование собственных типов сообщений

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

Аналогично тому, как система  Windows  посылает свои  сообщения различным окнам приложения, в самом приложении также  может  появиться необходимость обмена  сооб щениями между его собственными окнами  и элементами управления. Delphi предоставля ет разработчику несколько способов осуществления обмена сообщениями в пределах при ложения: метод Perform() (работающий независимо от API Windows), а также  функции интерфейса API Win32 SendMessage() и PostMessage().

Читать »

Обработка сообщений — условие обязательное

Добавлено Дата: 3 March, 2012 категория: Delphi

В отличие от событий Delphi, обработка сообщений является обязательной и не мо жет  выполняться или  не выполняться по усмотрению программиста. Обычно, если  в программе объявлено о проведении собственной обработки сообщений, то система Windows  ожидает выполнения некоторых связанных с ней  предопределенных дейст вий.  Чаще  всего компоненты VCL выполняют большую часть  обработки своими  встро енными средствами, для доступа к которым программисту достаточно лишь вызвать об работчик базового класса  с помощью директивы inherited. Общая  схема  выглядит примерно так: собственно в обработчике сообщения должны  выполняться лишь те дей ствия, которые нужны  для приложения, а для выполнения всех  остальных действий, необходимых системе Windows,  следует  с  помощью директивы  inherited вызвать унаследованный метод.

Читать »

Система сообщений Delphi

Добавлено Дата: 3 March, 2012 категория: Delphi

Подпрограммы библиотеки VCL выполняют существенную часть  обработки сообще ний  Windows в приложении. В частности, цикл сообщений встроен в модуль Forms биб лиотеки VCL, благодаря чему прикладному программисту не нужно беспокоиться о выбор ке сообщений из очереди и передаче их соответствующим процедурам окон. Кроме  того, Delphi  помещает информацию из записи типа TMsg в собственную запись типа TMessage, определение которой приведено ниже.

Читать »

Проводник структуры кода

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

В окне  Code Explorer можно  просматривать модули,  представленные во вкладках окна  Code Editor,  как  древовидную  структуру.  Подобное представление позволяет легче ориентироваться в модулях, а также добавлять новые  или переименовывать уже существующие  элементы модулей. Очень важно  помнить, что между окнами Code Explorer и  Code Editor всегда  поддерживается связь  типа  “один  к одному”.  Щелчок правой кнопкой мыши на любом из элементов в окне  Code Explorer позволяет вывес ти контекстное меню с командами, доступными для этого  объекта. Кроме  того,  можно управлять сортировкой и фильтрацией объектов, отображаемых в окне Code Explorer. Для этого  используются параметры, расположенные во вкладке  Explorer диалогового окна Environment Options (Параметры среды).

Читать »

Что такое сообщение?

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

Сообщение (message) представляет собой  извещение о некотором событии, посы лаемое  системой Windows в адрес  приложения. Любые  действия пользователя — щел чок  мышью,  изменение размеров окна  приложения, нажатие клавиши  на  клавиату ре — вынуждают  Windows отправить приложению сообщение, извещающее о том, что произошло в системе.

Читать »

Информация о типах времени выполнения

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

Информация о типах  времени выполнения (RTTI —  Runtime Type  Information) пред ставляет собой  способность языка  предоставлять приложениям  Delphi информа цию  об объектах непосредственно во время  выполнения программы. Эта же функ ция используется для обмена  информацией между компонентами Delphi  и графиче ской средой разработки.

Читать »

Процесс обработки исключений

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

После  возникновения и передачи объекта исключения нормальный ход выполне ния программы прерывается и управление начинает передаваться от одного  обработ чика  исключений к другому до тех пор,  пока  исключение не будет обработано, а эк земпляр объекта исключения уничтожен. Этот  процесс построен на обработке стека вызовов и, следовательно, имеет  глобальный характер в пределах всей программы, а не только  в рамках  текущей  процедуры или модуля. В листинге 2.5 приведен пример, иллюстрирующий указанный принцип обработки исключений. Здесь  представлен главный модуль приложения Delphi, содержащего единственную форму  с одной кнопкой. Если щелкнуть  на кнопке, то метод  Button1Click() (обработки этого  со бытия) вызывает процедуру  Proc1(), которая, в свою очередь, вызывает процедуру Proc2(), вызывающую процедуру  Proc3(). Исключение передается именно в этой, последней, наиболее глубоко  вложенной процедуре Proc3(), что  позволяет просле дить весь процесс прохождения исключения через каждый  из блоков  try..finally до тех пор, пока оно не будет обработано внутри метода Button1Click().

Читать »