рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Далее немного вашего внимания уделю процессу установки Delphi на компьютер

Далее немного вашего внимания уделю процессу установки Delphi на компьютер - раздел Компьютеры, Урок1. Краткое Введение В Курс Delphi ...

Урок1. Краткое введение в курс Delphi

Delphi (Делфи)

Здравствуйте. Меня зовут Semen. Я ведущий уроков по Delphi. Мы с вами попытаемся научиться, а для некоторых просто вспомнить, некоторые азы и тонкости этой замечательной среды программирования.

Что же такое – Delphi? Это среда разработки, используемой прежде всего для создания и поддержки приложений, предназначенных как для отдельных персональных компьютеров, так и для серверов. Delphi, как и разработанные с ее помощью приложения, могут функционировать под практически любой 32 разрядной операционной системой типа Windows 95, 98, 2000, NT. Это довольно легкая в изучении среда, и в то же время довольно сложная. Изучить ее полностью и досконально – невозможно. Но мы постараемся с вами преодолеть этот путь семимильными шагами – практикой. Ведь легче всего запоминается то, с чем сталкиваешься непосредственно.

Delphi имеет пользовательский графический интерфейс, подобный Visual Basic и C++. Человек, ранее работавший в подобной среде, не будет чувствовать себя не в своей тарелке. Честно говоря, на данный момент множество фирм приняло за стандарт данный интерфейс для собственных приложений. Хорошим стимулом к получению знаний по данному предмету является знание хоть какого-нибудь языка программирования, или принципов написания программы. Идеально – знание языка программирования Pascal. Ведь весь исходный текст программы на Delphi пишется на языке Object Pascal, практически ничем не отличающимся от принципов, заложенных в такой знаменитой программной оболочке. Синтаксис, принцип модуля, процедуры, функции, все взято за основу.

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

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

Дополнительное удобство в работе в среде Delphi это мощная справочная система. Контекстно-зависимая от текущего выбранного элемента или строки программы, позволяет получить подробнейшую справку. Вложенные примеры позволяют, не отходя далеко от интересующей вас информации, просмотреть реализацию уже готовой, возможно полезной для вас, программы. Естественно, справка, как и сама среда разработки, описана на английском языке. Одновременно существуют и русифицированные файлы справки. Я даже слышал о выходе русской версии Delphi 5.

Для начинающих можно сказать, все, что вы видите на экране во время работы различных Windows приложений, все элементы (кнопки, бегунки, меню и т.п.) можно реализовать в Delphi.

Контекстно-зависимое внедрение файлов справки позволяет поднять уровень проектируемого приложения на порядок выше. А не сказать про поддержку работы с базами данных – значит не сказать многого. При работе в среде программирования посредством так называемого BDE (Borland Database Engine), системного администратора баз данных, можно получать прямой доступ к таким стандартным форматам данных, как dBASE, Paradox, FoxPro, Access, ASCII таблицам. Набор драйверов Borland SQL Links обеспечивает все необходимые соединения с SQL-серверами.

Далее немного вашего внимания уделю процессу установки Delphi на компьютер.

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

Версия Дисковое пространство для установки   Оперативная память (минимум – рекомендуемая) Процессор (минимум) Операционная система (минимальные требования)
Delphi 3 50-170 MB 8–12 МВ Windows 95, 98; Windows NT 3.51 Service Pack 5
Delphi 4 60-154 МВ 16–32 МВ 486/66 Windows 95, 98; Windows NT 4.0 (Service Pack 3)
Delphi 5 80-200 МВ 32–64 МВ Pentium 90 Windows 95, 98; Windows NT 4.0 (Service Pack 3)

Дисковое пространство указано в пределах типа установки. От компактной до полной. Данные взяты из технической документации по установке.

Далее, на словах, что необходимо для работы. Это мышь, нормальный цветной монитор, желательно звуковую карту и CD-привод.

Чем же отличаются эти версии. Прежде всего, более последующая версия имеет лучший интерфейс, добавляются новые компоненты, появляется больше возможностей при написании и отладки приложений. Действительно, сильный скачек в перемене внешнего вида произошел из версии 3 в 4. Теперь значки меню имеют стандартный, общепринятый вид, добавлен проводник по программному коду, для быстрого перехода к необходимому месту в программе и пр. Я лично пользуюсь 4 версией, и мне, пока, хватает.

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

После успешного завершения установки и перезагрузки компьютера (при возникших проблемах установки – читайте прилагаемую документацию) вы увидите в меню "программы" установленные: среда разработки Delphi, дополнительные программы, файлы помощи.

Запустим значок с надписью Delphi N, где N – номер версии. При этом запускается сама оболочка создания приложений, называемая интегрированной средой разработки IDE (Integrated Development Environment). Именно это название часто встречается в литературе и файлах справки. Именно эта среда и включает в себя множество функций для создания приложения. Даже у самого производителя – корпорации Borland International наилучшей рекламой для этого продукта было сказано, что сам Delphi писался на Delphi.

Появившемся на экране окнам можно дать следующую предварительную характеристику.

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

 

Инспектор объектов.Как было сказано выше, при разработке приложения его очень часто приходится использовать. Окно Object Inspector содержит две страницы. На первой, Properties, постоянно отображаются все доступные свойства выбранного компонента. В левой колонке содержится список, в правой – текущие значения по умолчанию. На второй странице, Events, возможные обработчики событий для выбранного компонента. В левой колонке – названия, в правой – соответствующие свойства или процедуры. На рисунке вы можете видеть Object Inspector с установленными свойствами формы1 (это окно вышей программы).

Что же такое свойства и реакции на события.

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

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

Подробнее с инспектором объектов будет сказано по ходу работы с новыми программами в следующих уроках.

 

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

Если в ващей программе три окна, то они будут взаимодействовать в процессе работы с тремя так называемыми модулями (Unit). Все эти модули и отображаются в редакторе.

В окне кода программист непосредственно пишет текстовую часть программы.

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

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

 

Проектировщик форм. Как вы уже, наверное, знаете или догадываетесь, каждое Windows-приложение выполняется в собственном окне. Минимальное количество таких окон равно 1. Delphi при запуске автоматически предлагает пользователю новый проект, открывая пустое (незаполненное) окно под названием Form1 и назначает его главным окном. То есть вы уже видите то самое окно, которое будет содержать ваша программа. Перенося на него элементы из палитры компонентов, вы тем самым предварительно оформляете его. Главное окно в проекте может быть только одно. Все другие создаваемые окна будут дочерними. Закрывая главное окно стандартной кнопкой закрытия окна, или программно, вы закрываете и все дочерние окна. Представьте это себе на примере текстового редактора MS Word. Главное окно создается первым, и соответственно пользователь его видит тоже первым. Максимально возможное количество открытых проектировщиков форм – количество окон в вашем проекте. Но для начала мы с вами будем работать только с одним окном в проекте.

Итак, при запуске Delphi мы с вами видим уже открытый новый проект для создания приложения. Давайте запустим его на выполнение. Это можно сделать в любом окне IDE нажатием на кнопку F9, выбрав соответствующий пункт "Run" в меню "Run" или выбором одноцветной кнопки на панели инструментов. Происходит сравнительно недолгий процесс компиляции (преобразование удобочитаемых для вас данных в удобочитаемую форму для компьютера), в результате которого создается EXE файл. Далее этот файл, в случае успешного создания, запускается на выполнение. Во время выполнения из множества окон Delphi остается только главное окно и окно редактора кода.

Поздравляю! Практически ничего не делая, и сами того не ожидая, вы создали собственную программу. Эта программа имеет вид стандартного Windows-окна с заголовком Form1, со стандартными кнопками: свернуть, на весь экран, закрыть. Его можно позиционировать, изменять размер. По умолчанию она отображается в том же виде, что и во время разработки, имеет те же размеры и позицию на экране.

Закроем запущенную программу. Delphi автоматически переводит окна в то состояние, которое было до запуска проекта на выполнение. Снова на экране появляется инспектор объектов и редактор формы.

Для избежания отображения ненужных окон во время запуска проекта, я рекомендую установить опцию автоматического свертывания всего Delphi со своими окнами в панель задач. Войдите в меню Tools, выберите пункт Environment Options и на вкладке Preferences установите галочку Minimize on run (минимизировать при запуске). Далее Ok. Теперь попробуйте снова запустить проект на выполнение. Теперь вам ничего не мешает лицезреть свое творение.

Теперь попробуем сохранить проект на диске. Настоятельно рекомендую сохранять на диске новый проект сразу, поскольку он находится в памяти компьютера, и вы понимаете, какие могут быть последствия, если пропадет электричество или ваш компьютер решит немного отдохнуть от работы. Сохраняем все файлы проекта. Для этого выбираем пункт Save All, находящийся в меню File. Delphi предлагает сохранить модуль программы Unit1 как… Сохраним его под этим же названием, что и предлагается. Замечание: сколько существует окон в вашей программе, столько и будет модулей (Unit). Поэтому имеет смысл сохранять каждый проект в отдельный каталог. Особенно, если у вас много окон в программе. Далее будет предложено сохранить проект как… т.е. задать название всего проекта. Как будет называться проект, под таким же именем и будут создаваться исполняемые EXE файлы. Названия файлов должны состоять из одного слова или слов, написанных английскими буквами, цифры допустимы только начиная со второго символа, пробелы – недопустимы (используйте в таких случаях знак подчеркивания).

Для информации привожу перечень сохраняемых при этом файлов на диске:

 

DPR – файл проекта. Содержит он основной код программы, ссылки на все окна (формы) проекта и относящиеся к ним модули. В нем также содержится код инициализации. Имеет одноименное название с проектом.

PAS – pascal файл. Он содержит текст, который вы видите в окне редактора кода так называемого модуля программы.

DFM – delphi form. Представляет собой файл с полными данными о проектировщике формы. Позиция, размер, расположенные компоненты и пр. Форма приложения является неотъемлемой частью модуля PAS и имеет то же название.

DCU – двоичный файл модуля. Имеет одноименное название с модулем.

RES – ресурсный файл. Содержит в себе иконки, значки указателя мыши, картинки, звуки.

DOF, DSK – содержат настройки проекта.

CFG – содержит настройки конфигурации проекта.

EXE – откомпилированная программа. Сохраняется автоматически при запуске проекта на выполнение. Обновляется в момент компиляции. Имеет одноименное название проекта. Полностью самостоятельное приложение.

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

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

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

С уважением, ведущий уроков Semen semen@krovatka.net

 

 

Урок2. Реакции на события. Компонент F1Book

Часть урока для новичков

Здравствуйте. В этом уроке мы с вами немного расширим наши знания, напишем простую рабочую программу.

Запускаем для начала Delphi.

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

Как вы помните, проектируемая форма или окно, которое будет видеть пользователь при запуске программы на выполнение, по умолчанию называется Form1. Перед расположением на ней кнопок, давайте его назовем как-нибудь по-русски. Например: "Это моя программа!". Это можно сделать в инспекторе объектов (ObjectInspector). Там отображаются свойства выбранных компонентов на форме. Поскольку на форме ничего пока нет, то выбранной считается сама форма Form1 (выбранный элемент можно увидеть в самом верху инспектора объектов в ниспадающем списке). Меняем заголовок проектируемой формы. Свойство Caption на страничке свойств Properties. Пишем в редактируемом поле правее фразу заголовка. Во время ввода названия обратите внимание – набираемый текст немедленно в точности повторяется на форме. Об этом и говорилось в прошлом уроке. Мы с вами видим результат своей работы еще до запуска программы на выполнение.

Если во время работы вас стесняют размеры окон инспектора объектов, проектируемой формы, редактора кода или они наоборот, выглядят великовато, поменяйте их размеры, отпозиционируйте в удобное место.

Далее поместим на нашу проектируемую форму три стандартные кнопки. Выбираем на листообразной палитре компонентов компонент под названием Button одинарным щелчком мышки. Вот как от выглядит

Примечание: при подведении мышки на палитру компонентов выскакивает всплывающая подсказка, объясняющая пользователю ее название.

Итак, мы щелкнули по этому компоненту и он остался нажатым. Теперь необходимо щелкнуть на нашей форме, где мы хотели бы эту кнопку оставить. Повторите эту операцию еще два раза, пока на форме не окажется три кнопки Button1, Button2, Button3. Попробуйте подвигать эти кнопки по форме при нажатой левой клавишей мышки. Установите их в произвольном порядке, но чтобы они не мешали друг другу.

Теперь назовем эти кнопки по их дальнейшему функциональному назначению. Щелкаем один раз (!) по кнопке Button1. Она оказывается выделенной. В инспекторе объектов моментально отображаются все доступные свойства для этой кнопки. Меняем название кнопки, как вы догадываетесь, тоже сменой свойства Caption. Пишем: "Свернуть". Далее выбираем кнопку Button2. Переименовываем ее в "Белая". Повторим операцию смены названия для третьей кнопки "Закрыть".

Внешний вид программы готов. Как вы убедились – нет ничего сложного в оформлении внешнего вида проектируемой формы-окна. Пока что ваши действия в написании программы можно сравнить с художником, который мазками своей кисти постепенно вырисовывает картину. Да, но эту картину можно в любой момент подкорректировать.

Теперь немного поработаем руками и головой.

Задействуем последний нетронутый нами элемент Delphi – редактор кода. Как можно догадываться, и как упоминалось в прошлом уроке, тут происходит ручной набор некого программного кода, именуемого языком программирования Object Pascal. Но не стоит сразу его пугаться. Это довольно несложный в изучении язык, тем более, что для его достижения, Delphi предоставляет прекрасные возможности. Минимум набора текста, дополнение кода, шаблоны кода, контекстный список параметров. Все это намного упрощает жизнь программисту.

Для начала рассмотрим поподробнее такое понятие, как реакции на события.

Реакция на события. Что же это такое? Не буду описывать всех тонкостей работы операционной системы Windows, расскажу лишь на пальцах. Допустим, вы запустили любую программу на выполнение. Сами того не зная, вы породили кучу событий, передаваемых этому приложению. Во первых до непосредственного создания любого окна в памяти, Windows посылает сообщение приложению: "окно сейчас будет создано". Или такие: "Окно сейчас будет активизировано", "Окно сейчас отобразится". Но на простом примере, непосредственно касающегося нас, скажу, когда вы нажимаете на любую кнопку, Windows посылает сообщение приложению: "По такой-то кнопке щелкнули". И если программист использовал это сообщение и написал реакцию на него, то программа выполнит ее.

Напишем реакцию нажатия на кнопку Button3 или "Закрыть". Дважды щелкаем по этой кнопке. Delphi автоматически подготавливает редактор кода для минимизации ввода данных с клавиатуры, набирая за нас заголовок процедуры реакции нажатия на кнопку. Вот он:

procedure TForm1.Button3Click(Sender: TObject);

Begin

end;

Указатель (курсор) находится между словом begin и end. Именно там и напишем команду программного закрытия окна, аналогично действию системной кнопки в заголовке окна. Поскольку это окно единственное и главное, то будет закрыта и вся программа.

Если действие касается окна, а его имя Form1, то указываем ссылку на это окно. Имя, но не текст, который оно отображает. Имя – это свойство Name.

Набираем вручную Form1. Теперь надо добраться до вложенных в него свойств и процедур. Для этого ставим точку. Через несколько секунд Delphi Выводит для нас дополнение кода.

Это подобие списка доступных констант, переменных, функций для данного объекта (Form1). Набираем Close. Обратите внимание, дополнение кода помогает в наборе, и указывает на существующую функцию, выбрав в списке слово Close. Если этот случай касается сравнительно длинных названий, то выбрать необходимое можно в списке стрелками перемещения указателя или мышкой. Завершение ввода из списка дополнения кода осуществляется нажатием на кнопку Enter, точка, точка с запятой, пробел, открывающаяся скобка (в зависимости от ситуации). Мы поставим точку с запятой. Итак наше описание реакции на нажатия на кнопку "Закрыть" выглядит следующим образом:

Form1.Close;

Если нажать на эту кнопку, в момент работы программы конечно, это окно закроется. Напишем реакции на нажатия на другие кнопки Button1 и Button2.

Рассмотрим еще один компонент Application. Это особый компонент. Его свойства недоступны для инспектора объектов потому, что он доступен только во время запуска приложения на выполнение и следовательно его нет на палитре компонентов. Application – это ссылка (или переменная) на ваше работающее приложение. Delphi автоматически создает данный компонент в связи с его обязательным присутствием.

Первая наша кнопка "Свернуть" или Button1 должна осуществлять свертывание проекта в панель задач. Поэтому пишем реакцию на ее нажатие. Дважды щелкаем по ней. В редакторе кода пишем, используя знания написания команд предыдущего случая.

Application.Minimize;

Для кнопки "Развернуть" реакция нажатия выглядит как:

Form1.Color:=clWhite;

Примечание: обратите внимание на точку с запятой в конце строки. Ее присутствие обязательно и она означает окончание команды. Обратите внимание на знак присваивания := (двоеточие и знак равно). Этот знак изначает, что свойству или переменной слева присваивается значение, указанное справа.

Что же произойдет при нажатии на эту кнопку. Окно программы окрасится в белый цвет. Для этого в свойство Color компонента программы Form1 заносится константа белого цвета. По желанию можно поэкспериментировать с другими цветами, поставив в форму еще несколько кнопок и задавая цвет при нажатия на них clBlack, clNavy и т.п. (перечень всех доступных цветов см. свойство Color в ObjectInspector, и не забудьте для этого выбрать форму Form1 одинарным щелчком).

Если нажать на кнопку "Свернуть", то программа свернется в панель задач.

Теперь запустим программу на выполнение кнопкой F9. Теперь можно видеть не только оформленную внешне программу, то и любоваться ее некоторыми простыми действиями.

Не забудьте сохранить проект на диске "SaveAll", как это было сказано в прошлом уроке, в отдельный каталог. Например "Урок2" или "Lesson2". Таким образом вы всегда будите знать где находится ваша программа, написанная с помощью того или иного урока.

Часть урока для продвинутых программистов

Речь в данном разделе пойдет о не совсем распространенном, но таком интересном, с точки зрения организации отчетов, компоненте F1Book (Formula One) из палитры компонентов ActiveX.

Данный компонент является подобием табличной многостраничной таблицы Excel, с формулами, сеткой, границы и заливка и т.п. Кроме того от совместим с файловым форматом Excel 5. Файлы такого формата можно считывать с диска, обрабатывать, записывать на диск. При работе с компонентом F1Book, можно создавать произвольные отчеты произвольной формы программно, или вручную в момент отображения самой таблицы. Присутствует функции вывода на принтер, задания области печати, полей страницы, масштаба. Большая схожесть с программой MS Excel.

Но существует и проблема. F1Book является VCI ActiveX объектом и требует регистрации в системе для его использования в пользовательских приложениях на другом компьютере. При инсталляции Delphi делает это автоматически. Устанавливает необходимые библиотеки в системный каталог, регистрирует в реестре. Если такую программу запустить на машине, где отсутствует Delphi, программа выдаст ошибку выполнения, наподобие "класс не зарегистрирован". Но остальная часть программы может и работать, несмотря на это, если эта таблица не находится в главном окне, и ее во время работы не открывать.

Что говорит хэлп этого компонента по этому поводу: "Вы можете отправить следующие файлы со своим приложением" и приводится список файлов библиотек. Но про регистацию компонента в реестре Windows не сказано. Если вы являетесь специалистом и можете самостоятельно зарегистрировать эти библиотеки – пожалуйста. Получится, такая себе обрезанная версия без возможности печати и программного редактирования. Можно, конечно обратиться за технической помощью на торговый сайт или сделать заказ по почте или телефону. Это не серьезно. Вот как эта Formula регистрируется. Повторяю, это производится на компьютере, где Delphi не установлен.

Необходимо скопировать в каталог %WINDOWS_DIR%SYSTEM следующие файлы:

VCF132.OCX

MFCANS32.DLL

OC30.DLL

MSVCRT20.DLL

Эти файлы находятся в аналогичном каталоге на компьютере, где есть Delphi.

Далее запустить файл регистрации. Файл регистрации компонента F1Book можно скачать здесь.

Учтите, что этот файл создан для регистрации библиотек в системном виндоувском каталоге C:WINDOWSSYSTEM. Если у вас он звучит по другому, следует подкорректировать этот файл вручную, исправив соответствующие строки.

Идеальным случаем установки программы, с задействованным компонентом Formula One будет применение инсталляционной упаковочной программы типа Wise или InstallShield, куда можно упаковать все необходимые файлы программы и библиотеки компонента с последующей корректной регистрацией.

А кто не пробовал экспериментировать с этим компонентом – попробуйте. Не пожалеете.

С уважением, ведущий уроков Semen semen@krovatka.net

 

Урок3. Свойства объектов. Формирование отчетов в MS Excel

Часть урока для новичков

Здравствуйте. На этом занятии мы немного вспомним темы прошлых уроков и расширим наши знания.

Итак, как вы уже знаете, язык который мы изучаем называется Object Pascal. И это значит, что вся работа сводится на управление этими самыми объектами.

Каждый компонент, который вы помещаете на форму, имеет свое отражение в окне Инспектора Объектов (Object Inspector). Как вы помните, Object Inspector имеет две “странички” - “Properties” (Свойства) и “Events” (События). Создание программы в Delphi сводится к “нанесению” компонентов на форму (которая, кстати, также является компонентом) и настройке взаимодействия между ними путем:

1. изменения значения свойств этих компонентов.

2. написания адекватных реакций на события.

Как Вы уже успели, наверное, заметить, свойство является важным атрибутом компонента. Для пользователя (программиста) свойство выглядит как простое поле какой-либо структуры, содержащее некоторое значение. Однако, в отличие от “просто” поля, любое изменение значения некоторого свойства любого компонента сразу же приводит к изменению визуального представления этого компонента. Свойства служат двум главным целям. Во-первых, они определяют внешний вид формы или компонента. А во-вторых, свойства определяет поведение формы или компонента.

Существует несколько типов свойств, в зависимости от их “природы”, т.е. внутреннего устройства.

· Простые свойства - это те, значения которых являются числами или строками. Например, свойства Left и Top принимают целые значения, определяющие положение левого верхнего угла компонента или формы. Свойства Caption и Name (из примера прошлого урока) представляют собой строки и определяют заголовок и имя компонента или формы.

· Перечислимые свойства - это те, которые могут принимать значения из предопределенного набора (списка). Простейший пример - это свойство типа Boolean, которое может принимать значения True или False (истинно или ложно). Например свойство Enabled для кнопки Button будет означать, может ли пользователь или нет нажать на нее. Если установлено False, то кнопка становится серой, недоступной. Т.е. свойство кнопки Enabled может принитать только два значения и не более.

· Вложенные свойства - это те, которые поддерживают вложенные значения (или объекты). Object Inspector изображает знак “+” слева от названия таких свойств. Имеется два вида таких свойств: множества и комбинированные значения. Object Inspector изображает множества в квадратных скобках. Если множество пусто, оно отображается как []. Установки для вложенных свойств вида “множество” обычно имеют значения типа Boolean. Наиболее распространенным примером такого свойства является свойство Style с вложенным множеством булевых значений. Комбинированные значения отображаются в Инспекторе Объектов как коллекция некоторых величин, каждый со своим типом данных. Некоторые свойства, например, Font, для изменения своих значений имеют возможность вызвать диалоговое окно. Для этого достаточно щелкнуть маленькую кнопку с тремя точками в правой части строки Инспектора Объектов, показывающей данное свойство.

Delphi позволяет легко манипулировать свойствами компонента как в режиме проектирования, так и в режиме выполнения программы соответственно программно.

В режиме проектирования манипулирование свойствами осуществляется с помощью Дизайнера Форм (Forms Designer или как говорилось выше проектировщик форм) или, как Вы уже видели, на страничке “Properties” Инспектора Объектов. Например, для того чтобы изменить свойства Height (высоту) и Width (ширину) кнопки, достаточно “зацепить” мышкой за любой ее угол и раздвинуть до нужного представления. Того же результата можно добиться, просто подставив новые значения свойств Height и Width в окне Object Inspector.

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

Управление свойствами визуальных компонентов в режиме выполнения

Все изменения значений свойств компонент в режиме выполнения должны осуществляться путем прямой записи строк кода на языке Паскаль. В режиме выполнения невозможно использовать Object Inspector. Хотя добраться до него возможно и возможно поменять его, но изменения вступят в силу только после перекомпиляции проекта.

Компиляция - это процесс перевода вашей программы в машинный код. В данном случае это процесс создания исполняемого EXE файла.

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

Component.Width := 40;

где Component - интересующий вас компонент. Например Button1. Название компонента указано в свойстве Name.

Вышеприведенная строка устанавливает ширину (Width) компонента в значение 40 пикселей. Если свойство Width компонента еще не было равно 40 к моменту выполнения данной строки программы, Вы увидите, как компонент визуально изменит свою ширину.

Естественно, что изменить просто так свойство нельзя. Его надо изменять только в ответ на какое-либо событие. Например на клик мышкой по кнопке. Для этого создается одноименная процедура обработки события. Рассмотрим пример.

Разместим в проектировщике форм Form1 кнопку Button1. Напишем реакцию на событие нажатия по этой кнопке.

Подробнее о реакциях на событие можно прочитать в уроке №2.

Запускаем Delphi. В меню File выбираем NewApplication. Открывается новый проект. В проектировщике форм устанавливаем кнопку Button. Выделяем ее одинарным щелчком мыши. Здесь и далее для того, чтобы добраться до свойств необходимого объекта, нужно выделить его. Свойства выделенного немедленно отображаются в ObjectInspector. Установим свойство Width для кнопки Button1 равное 200. Кнопка немедленно расширяется на заданную ширину. Теперь установим другую ширину для этой же кнопки, но уже программно. Переключаем ObjectInspector на страницу Events (события). Мы видим полный перечень доступных во время выполнения событий для этой кнопки. Нас интересует реакция на событие нажатия On Click. Необходимо создать процедуру обработки этого нажатия, иначе это действие будет проигнорировано программой. Дважды щелкаем мышкой в поле, правее надписи OnClick или нажимаем на Ctrl+Enter. Delphi автоматически создает заголовок процедуры обработки события.

procedure TForm1.Button1Click(Sender: TObject);
begin

end;
Курсор установлен между операторными скобками begin и end. Это означает, что весь текст программы, относящийся к реакции на данное событие должно быть размещено только между ними.

Набираем строку:

 

Button1.Width:=40;

Запускаем программу на выполнение (F9). Смотрим на результат своей работы.

ObjectInspector является удобным способом выполнения в режиме проектирования того, что может быть осуществлено программным путем в режиме выполнения. Заданные свойства объектов считаются начальными и присутствуют на момент запуска программы. Более того, как уже было сказано выше, у компонента могут быть свойства, не отображаемые в окне Инспектора Объектов, которые доступны только в момент выполнения программы.

Часть урока для продвинутых программистов

В прошлом уроке мы рассматривали компонент F1Book, который применяется для организации работы, наподобие программы MSExcel. В этом уроке мы остановимся на непосредственной работе с упомянутой программой.

Если у вас установлен Delphi 5, то его нововведением было появление закладки Servers на палитре компонентов. Но можно и без участия этих компонентов получать доступ к программам групп MS Office.

Рассмотрим пример организации отчета в Excel. Пример можно скачать здесь.

Для начала скажу, что если вы хотите создавать в Excel что-нибудь серьезное, то вам необходимо неплохо ореинтироваться на VBA, в число которых я не вхожу. Но важна сама идея.

Создаем OLE объект:

ExcelApplication := CreateOleObject ('Excel.Application');

где ExcelApplication - переменная типа Variant.

Не забудьте объявить в разделе подключаемых модулей ComObj.

Далее вся работа сводится к посылке сообщений к созданному приложению Excel.

 

Данную методику можно применять как замену различным отчетам типа Report. Преимущества налицо.

С уважением, ведущий уроков Semen semen@krovatka.net

 

Урок4. Работа в среде программирования Delphi. Запуск других приложений

Часть урока для новичков

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

Проект Delphi

Как уже говорилось в первом уроке, любой проект имеет, по крайней мере, шесть файлов, связанных с ним. Три из них относятся к управлению проектом из среды программирования и напрямую программистом, как правило, не меняются. Вот этот перечень файлов:

· Главный файл проекта, изначально называется PROJECT1.DPR. Если необходимо переименовать название проекта, нужно перезаписать этот файл, выбрав в меню File команду Save Project As… При задании имени следует придерживаться правил задания имен в Object Pascal. Имя не должно содержать пробелов (используйте в таком случае знак подчеркивания), должно начинаться с буквы (цифры допустимы, но со второй позиции), не должно содержать других символов, кроме букв и цифр. Под каким именем вы сохраняете проект, под таким именем и будет создаваться исполняемый EXE файл, который вы всегда сможете самостоятельно переименовать.

· Модуль программы, который автоматически появляется в начале работы Unit1. Файл называется UNIT1.PAS по умолчанию, но его можно назвать любым другим именем, вроде MAIN.PAS. Это делается аналогично переименованию названия проекта. Необходимо выбрать в меню File команду Save As… Сохраняется активный модуль в редакторе кода.

· Файл главной формы, который по умолчанию называется UNIT1.DFM, используется для сохранения информации о внешнем виде формы (окна разрабатываемого приложения). При переименовании названия модуля автоматически меняет свое название.

· Файл PROJECT1.RES изначально содержит иконку для проекта. Создается автоматически. Имеет одноименное название с названием проекта.

· Файл PROJECT1.DSK содержит информацию о состоянии рабочего пространства. Состояние окон во время разработки приложения.

· Исполняемый EXE файл, который создается в процессе компиляции проекта.

Разумеется, если сохранить проект под другим именем, то изменят название и файлы с расширением RES и DSK.

После компиляции программы получаются файлы с расширениями:

DCU - скомпилированные модули PAS для последующей быстрой компиляции некоторые файлы не перезаписываются

EXE - исполняемый файл

~PA, ~DP - backup файлы редактора. Автоматически создаются и содержат информацию, перед последним сохранением.

Коротко про пункты главного меню Delphi

Если нужно сохранить проект, то Вы выбираете пункт главного меню“File” (с помощью мышки или по клавише Alt+F). У вас, в зависимости от установленной… · Первая секция дает возможность управления проектом в целом. Создать новый…… · Вторая секция позволяет открывать с диска файлы проекта.

Сохранение проекта

Первый шаг - создать поддиректорию для программы. Лучше всего создать директорию, где будут храниться все ваши программы и в ней - создать… После создания поддиректории для хранения вашей программы желательно выбрать…

Открытие проекта

Если вы хотите открыть для редактирования отдельный модуль, или модуль формы, необходимо выбрать пункт "Open" и выбрать файл PAS. В этом… Часть урока для продвинутых программистов

Запуск других приложений из вашего

Существует две наиболее часто применяемых функций. WinExec и ShellExecute.

Функция WinExec

Используемый модуль – Windows. Описание: WinExec (FileName: PChar; CmdShow: Cardinal) : Cardinal; где: FileName – путь, имя запускаемого приложения, параметры командной строки. Все указывается в одной строке;

Функция ShellExecute

Используемый модуль ShellAPI. Его нужно не забыть указать в разделе Uses. Описание: ShellExecute (hWnd: HWND; Operation: PChar; FileName: PChar;… где: hWnd – Handle родительского окна, в который будут передаваться сообщения запускаемого приложения. Можно указывать…

Копирование файлов

CopyFile(Исходный_файл,Записуемый_файл,Флаг_перезаписи); где: Исходный_файл – полный путь и название файла, который копируется; Записуемый_файл – полный путь и название файла, куда копируется исходный файл;

Перемещение файлов

Для перемещения файлов применяется функция MoveFile. Она имеет следующий формат:

MoveFile(Исходный_файл,Записуемый_файл);

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

Пример:

if not MoveFile('c:1.com','c:2.com') then ShowMessage('Ошибка перемещения');

Переименование файлов

if not RenameFile('c:2.com','c:3.com') then ShowMessage('Ошибка переименования'); У всех вышесказанных командах параметры исходного и конечного файла имеет тип… Преобразование обычной строковой переменной, типа String в PChar производится функцией:

Удаление файлов

Функция DeleteFile

if not DeleteFile('c:3.com') then ShowMessage('Ошибка удаления');

Работа с текстовыми файлами. Чтение из текстового файла

Memo1.Lines.LoadFromFile(Имя_файла); // загрузка Memo1.Lines.SaveToFile(Имя_файла); // сохранение Все это благодаря свойству Lines, в котором хранятся строки.

Begin

AssignFile(f,'c:1.txt'); // привязка названия файла к файловой переменной

{$I-} // отключение контроля ошибок ввода-вывода

Reset(f); // открытие файла для чтения

{$I+} // включение контроля ошибок ввода-вывода

if IOResult<>0 then // если есть ошибка открытия, то

Begin

ShowMessage('Ошибка открытия файла C:1.TXT');

Exit; // выход из процедуры при ошибке открытия файла

end;

While not EOF(f) do // пока не конец файла делать цикл:

Begin

ReadLn(f,st); // читать из файла строку

ShowMessage(st); // выводить строку пользователю

end;

CloseFile(f); // закрыть файл

end;

Прокомментирую некоторые строки этого примера.

Команда AssignFile осуществляет привязку строки пути файла к файловой переменной. Все дальнейшие операции с файловой переменной автоматически осуществляются с указанным файлом. Для избежания путаниц, указывайте полный путь к файлу.

{$I-} и {$I+} являются директивами компилятору, что в этом месту соответственно следует отключить и включить контроль ошибок ввода-вывода. В данном случае при неудачной попытке открытия файла c:1.txt (файл отсутствует или открыт для записи другой программой) наша программа не выдаст аварийной ошибки и продолжит выполнение данной процедуры. Это свойство полезно для обработки всех возможных случаев в работе программы.

IOResult – переменная, которая хранит в себе код ошибки последней операции ввода-вывода. Если она равна нулю, то последняя операция была успешно выполнена.

EOF(Файл) – функция, возвращающая признак конца файла. Т.е. она показывает, достигнут или нет конец открытого файла.

ReadLn(Файл,Переменная) – процедура считывания переменной из файла. В отличие от команды Read производит считывание строки с завершающимся символом перевода строки под кодами 13 и 10 (клавиша Enter).

CloseFile(Файл) – процедура закрытия ранее открытого файла.

Работа с текстовыми файлами. Запись в текстовый файл

Рассмотрим пример:

procedure TForm1.Button1Click(Sender: TObject);

Var f:TextFile; // указатель на текстовый файл

Begin

AssignFile(f,'c:1.txt'); // привязка названия к переменной

{$I-}

Append(f); // открыть файл для добавления

if IOResult<>0 then // если ошибка открытия (напр. файла нет)

Begin

{$I-}

Rewrite(f); // создать новый файл

{$I+}

if IOResult<>0 then // ошибка создания файла

Begin

ShowMessage('Ошибка создания файла C:1.TXT');

Exit;

end;

end;

WriteLn(f,'Привет'); // запись в файл строки с символами перевода строки

CloseFile(f); // закрыть файл

end;

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

В нашем случае в самом начале файла 1.txt может не оказаться на диске, поэтому команда открытия файла для добавления вызовет ошибку. В этом случае срабатывает наш собственный контроль ошибок и выполняется команда создания файла.

Запись и чтение из файла не текстовых данных

procedure TForm1.FormShow(Sender: TObject); Var f:file of Integer; // файловая переменная, тип integer i:Integer; // целочистенная переменная

– Конец работы –

Используемые теги: Далее, ного, ваш, внимания, уделю, процессу, установки, Delphi, Компьютер0.123

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Далее немного вашего внимания уделю процессу установки Delphi на компьютер

Что будем делать с полученным материалом:

Если этот материал оказался полезным для Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Еще рефераты, курсовые, дипломные работы на эту тему:

Критические точки – это точки, контролируемые при переходе от процесса к процессу. Для описываемого процесса критическими точками являются:
На сайте allrefs.net читайте: Критические точки – это точки, контролируемые при переходе от процесса к процессу. Для описываемого процесса критическими точками являются:...

Устранение слабых сторон заводского технологического процесса, а также снижения трудоемкости и себестоимости технологического процесса механической обработки путем перевода технологического процесса с устаревших моделей оборудования на более современные
Графическая часть содержит 10 листов формата А1, в качестве приложений приведены спецификации на разработанные нами приспособления и… Объектом разработки является технологический процесс механической обработки… Эффективность данного производства, его технический прогресс, качество выпускаемой продукции во многом зависят от…

Круговые процессы. Обратимые и необратимые процессы. Цикл Карно
Круговые процессы Обратимые и необратимые процессы Цикл Карно Обратимый... Определить напряженность поля в точке указанной на рисунке...

Затвердевание сплавов. Строение жидкого металла. Термодинамические стимулы и кинетические возможности процесса затвердевания. Влияние переохлаждения и примесей на процесс кристаллизации
В газах межмолекульные расстояния большие, молекулы не взаимодействуют друг с другом. У газа отсутствует объём и форма. Жидкости и твёрдые тела… Жидкости характерна некоторая зависимость в расположении атомов; характерное… Твердому телу характерна стабильная, постоянная форма. 2. Термодинамические условия кристаллизации Переход металла из…

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

ФОНДОВАЯ лекция по дисциплине Уголовный процесс Тема № 1 Сущность и задачи уголовного процесса
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ КАЗЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ... ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ... ВОЛГОГРАДСКАЯ АКАДЕМИЯ...

КОГНИТИВНЫЕ ПРОЦЕССЫ В ПСИХОЛОГИИ. По книге С.С. Магазова «Когнитивные процессы и модели»
Краткая история. В последние годы неуклонно растет интерес к изучению познавательных процессов. До начала 50-х годов вопросы, относящиеся к теории… Первые исследования были посвящены изучению механизмов восприятия. В настоящее… В настоящее время когнитология становится важным объектом исследования, необходимым для решения одной из…

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

Лекция 8. Общие представления о геодинамических процессах. Магматизм – ведущий эндогенный процесс
Лекция Общие представления о геодинамических процессах Магматизм ведущий...

Ваша жизнь — это ваше собственное тво­рение, и в ваших силах сделать ее такой, какой вы сами пожелаете.
На сайте allrefs.net читайте: * Ваша жизнь — это ваше собственное тво­рение, и в ваших силах сделать ее такой, какой вы сами пожелаете....

0.037
Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • По категориям
  • По работам