10224

Среда программирования Delphi

Лабораторная работа

Информатика, кибернетика и программирование

Лабораторная работа № 1 Среда программирования Delphi Цель работы: изучить главные части рабочей среды программирования и основные части программы созданной в Delphi, научиться использовать компоненты библиотеки VCL в windowsприложении; познакомиться с компонентами классов...

Русский

2013-03-24

97.5 KB

16 чел.

Лабораторная работа № 1

Среда программирования Delphi

Цель работы: изучить главные части рабочей среды программирования и основные части программы, созданной в Delphi; научиться использовать компоненты библиотеки VCL в windows-приложении;  познакомиться с компонентами классов TButton и TLabel.

Структура среды программирования Delphi 

Среда программирования Delphi состоит из нескольких отдельно расположенных окон. К этому стилю, называемому Single Document Interface (SDI),  относятся еще такие приложения, как Paint, калькулятор, Notepad, таблица символов и др. Стиль MDI (Multiple Document Interface)  определяет особый способ управления нескольких дочерних окон внутри одного большого окна (Microsoft Word, Microsoft  Excel и др.).

Основные составные части среды программирования 

  •  Дизайнер Форм (Form Designer)
  •  Окно Редактора Исходного Текста (Editor Window)
  •  Палитра Компонентов (Component Palette)
  •  Инспектор Объектов (Object Inspector)
  •  Панель с кнопками быстрого доступа (Speed Bar)
  •  Справочник (On-line help)

Переключение между Дизайнером Форм и Окном Редактора Исходного Текста (далее Редактор) осуществляется клавишей F12 или мышью. На рисунке 1 показан внешний вид Дизайнера Форм и окна Редактора.

Рис 1. Дизайнер форм и окна редактора.

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

Рис. 2. Палитра компонентов.

Палитра Компонентов использует постраничную группировку объектов. Внизу Палитры находится набор закладок - Standard, Additional, Dialogs и т.д. Если щелкнуть мышью на одну из закладок, то можно перейти на следующую страницу Палитры Компонентов. Принцип разбиения на страницы широко используется в среде программирования Delphi и его легко можно использовать в своей программе. (На странице Win32 есть компоненты для организации страниц с закладками сверху и снизу - TabControl, PageControl).

Слева от Дизайнера Форм обычно располагается Инспектор Объектов. Информация в Инспекторе Объектов меняется в зависимости от объекта, выбранного на форме. Каждый компонент является настоящим объектом и можно менять его параметры вид и поведение с помощью Инспектора Объектов.

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

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

Последняя важная часть среды Delphi - Справочник (on-line help). Для доступа к этому инструменту нужно просто выбрать в системном меню пункт Help и затем Contents.  Справочник является контекстно-зависимым; при нажатии клавиши F1, Вы получите подсказку, соответствующую текущей ситуации. Например, находясь в Инспекторе Объектов, выберите какое-нибудь свойство и нажмите F1 - Вы получите справку о назначении данного свойства. Если в любой момент работы в среде Delphi возникает неясность или затруднение - жмите F1 и необходимая информация появится на экране.

Задание для обучения.

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

  1.  Для начала откройте новый проект, выбрав пункт меню File | New Project.
  2.  

  1.  Затем положите на форму объекты TMemo, TButton, и TListBox, задав размеры мышкой, как показано на рисунке.
  2.  Теперь выберите один из объектов и перейдите в Инспектор Объектов. Изменяя численные значения свойств Width, Height, Left, Top следите за выбранным компонентом.

  1.  Теперь нажмите клавишу <Shift> и щелкните на TMemo и затем на TListBox. Теперь оба объекта имеют по краям маленькие квадратики, показывающие, что объекты выбраны. Выбрав два или более объектов одновременно, можно выполнить большое число операций

над ними. Например, передвигать по форме. Затем попробуйте выбрать пункт меню Edit | Size и установить оба поля Ширину(Width) и Высоту(Height) в Grow to Largest, как показано на

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

  1.  Затем выберите пункт меню Edit | Align и поставьте в выравнивании по горизонтали

значение Center (см. рисунок).

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

  1.  Рассмотрим изменение свойств объектов на примере свойства формы Color. Есть три способа изменить его значение в Инспекторе Объектов. Первый - просто напечатать имя цвета (clRed) или номер цвета. Второй путь - нажать на маленькую стрелку справа и выбрать цвет из списка. Третий путь - дважды щелкнуть на поле ввода свойства Color. При этом появится диалог выбора цвета.
  2.  Свойство Font работает на манер свойства Color. Чтобы это посмотреть, сначала выберите свойство Font для объекта TMemo и дважды щелкните мышкой на поле ввода. Появится диалог настройки шрифта, как показано на рисунке.

 

Выберите, например, шрифт New Times Roman и установите какой-нибудь очень большой размер, например 72. Затем измените цвет фонта с помощью ComboBox’а в нижнем правом углу окна диалога. Когда Вы нажмете кнопку OK, Вы увидите, что вид текста в объекте TMemo радикально изменился.

В завершение дважды щелкните на свойство Items объекта ListBox. Появится диалог, в котором Вы можете ввести строки для отображения в ListBox. Напечатайте несколько слов, по одному на каждой строке, и нажмите кнопку OK. Текст отобразится в ListBox'е.

Сохранение программы 

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

После создания поддиректории для хранения Вашей программы нужно выбрать пункт меню File | Save Project. Сохранить нужно будет два файла. Первый - модуль (unit), над которым Вы работали, второй - главный файл проекта, который "владеет" Вашей программой. Сохраните модуль под именем Main.PAS и проект под именем Tips1.DPR. (Любой файл с расширением PAS и словом “unit” в начале является модулем.)

Z-упорядочивание 

Еще несколько возможностей Инспектора Объектов и Дизайнера Форм.

Создайте новый проект. Поместите на форму объект TMemo, а затем TEdit так, чтобы он наполовину перекрывал TMemo, как показано на рис.13. Теперь выберите пункт меню Edit | Send to Back, что приведет к перемещению TEdit вглубь формы, за объект TMemo. Это называется изменением Z-порядка компонент. Буква Z используется потому, что обычно математики обозначают третье измерение буквой Z. Так, X и Y используются для обозначения ширины и высоты, и Z используется для обозначения глубины.

Если Вы “потеряли” на форме какой-то объект, то найти его можно в списке Combobox’а, который находится в верхней части Инспектора Объектов.

TButton и завершение программы

Поместите кнопку TButton в нижнюю часть формы. Теперь растяните Инспектор Объектов так, чтобы свойства Name и Caption были видны одновременно на экране. Теперь измените имя кнопки на Terminate. Заметьте, что заголовок (Caption) поменялся в тот же момент. Такое двойное изменение наблюдается только если ранее не изменялось свойство Caption.

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

TForm1 = class(TForm)
   Edit1: TEdit;
   Memo1: TMemo;
   Terminate: TButton;
private
   { Private declarations }
public
   { Public declarations }
end;

В этом фрагменте кнопка TButton называется Terminate из-за того, что Вы присвоили это название свойству Name. Заметьте, что TMemo имеет имя, которое присваивается по умолчанию.

Перейдите на форму и дважды щелкните мышкой на объект TButton. Вы сразу попадете в окно Редактора, в котором увидите фрагмент кода вроде этого:

procedure TForm1.TerminateClick(Sender: TObject);
  begin

  end;
 

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

TForm1 = class(TForm)
  Edit1: TEdit;
  Memo1: TMemo;
  Terminate: TButton;
procedure TerminateClick(Sender: TObject);
   private
    { Private declarations }
   public
    { Public declarations }
   end;
 

Изначально Вы смотрите на кнопку на форме. Вы делаете двойной щелчок на эту кнопку, и соответствующий фрагмент кода автоматически заносится в Редактор.

Теперь самое время написать строчку кода. Это очень простой код, состоящий из одного слова Close:

procedure TForm1.TerminateClick(Sender: TObject);
begin
  Close;
end;

Когда этот код исполняется, то главная форма (значит и все приложение) закрывается. Для проверки кода запустите программу и нажмите кнопку Terminate. Если все сделано правильно, программа закроется и Вы вернетесь в режим дизайна.

Задания на разработку:

1. Создайте приложение, которое завершает работу при нажатии на кнопку (см. описание выше).

2. Создайте приложение, в котором при нажатии на кнопку выводится информация на форму.

1. Поместите на форму кнопку TButton и компонент TLabel (страница Standard Палитры Компонентов).
2. Задайте новые уникальные имена этим объектам.
3. Создайте обработчик события одиночного нажатия на кнопку.
4. В Редакторе кода в процедуре обработки события задайте

Имя_объекта_TLabel.Caption :='Hello World!'

5. Сохраните проект с уникальным именем в отдельной папке и запустите приложение.

Таким образом, при нажатии на кнопку на форме выведется надпись 'Hello World!'.

3. Создайте приложение, в котором при нажатии на кнопку изменяются размеры и положение данной  кнопки на форме.

4. Создайте приложение, в котором по нажатии на кнопки показывается и скрывается объекты TMemo и TEdit.

Контрольные вопросы

  1.  Каковы основные составные части среды программирования, их предназначение и функции?
  2.   Какими способами можно задать свойства компонентов?
  3.  Как задать обработчик какого-либо события в Delphi?
  4.  Какова структура проекта Delphi?
  5.  Каким образом происходит  работа с группой компонентов? Каково предназначение пунктов меню Меню Edit | Size и Edit | Align?
  6.  В чем заключается Z-порядок компонент?
  7.  Каково назначение компонентов TButton и TLabel?
  8.  Опишите структуру и назначение свойств Name, Caption, Width, Height, Left, Top, Font, Color, Items.


 

А также другие работы, которые могут Вас заинтересовать

23858. Оды 16.41 KB
  Первая ода Ломоносова На взятие Хотина 1739 посвящена победе над турками. Полная мифология российской истории разворачивается в одах посвящённых императрице Елисавете Петровне. Хотя по временам Он насылает на неё Свой гневно затем переменяет его на милость: Я в гневе Россам был ТворецНо ныне паки им Отец Ода 1742 г. Бог как и в прежних одахсокрушает злобу разрушая умыслы врагов России там же и в других местах.
23859. Повесть о Горе и Злочастии, как Горе-Злочастие довело молодца во иноческий чин 13.93 KB
  Молодец же пытается жить своим умом а объясняет автор это желание тем что молодец был в то время се мал и глуп не в полном разуме и несовершенен разумом.Хозяевам нравится что молодец ведёт себя по писанному учениюто есть так как и учили его родители.Но молодец кручинится а после признаётся при всех в том что ослушался родителей и спрашивает совета как жить на чужой стороне. Молодец слушается ГореЗлочастие пропивает все деньги и только после этого спохватывается и пытается избавиться от своего спутника ГоряЗлочастия.
23860. Повесть о Петре и Февронии Муромских 15.5 KB
  Змий рассказал княгине что смерть его будет от Петрова плеча от Агрикова меча. У князя был брат по имени Петр. Однажды Петр пришел к брату.
23861. Повесть о разорении Рязани Батыем 14.34 KB
  Через два года после перенесения иконы Николы Чудотворца на Русь приходит безбожный царь Батый. Батый посылает послов к рязанскому князю Юрию Ингоревичу предлагая следующие условия: рязанский князь сразу же отдаст по десятой части всего земли людей богатств. Безбожный царь Батый был льстив и немилостив.Узнав от одного предателя рязанского вельможи что у самого Федора Юрьевича есть красавица жена Батый обращается к нему с такимпредложением.
23862. Сказание о Дракуле воеводе 16.23 KB
  который за свою жестокость имел прозвище ЦепешСажатель на кол и Дракула Дракон. Был на Мунгьянской земле область Румынии восточная часть Валахиивоевода христианин греческой веры имя его повалашски Дракулаа понашему Дьявол. Дракула спросил их почему так поступили такое бесчестье ему нанесли. Дракула воздал послу тому пышные почести показал ему своё богатство сказав что не только готов платить дань царюно со всем воинством готов пойти к нему на службу.
23863. Слово о походе Игоревом, Игоря, сына Святославова, внука Ольгова 17.03 KB
  В самом начале Игорева похода случилось затмение солнца но князь пренебрег этим дурным знамением: все превозмогла жажда искусить Дона Великого.И начали князья про малое говорить: Это великое и сами на себя крамолу ковать. Великая печаль настала по всей русской земле: Игорькнязь погубил то чего добился отец его Святослав Ольгович пленивший половецкого хана Кобяка. А киевский князь Святослав видел смутный сон: одевали его черным покрывалом на кровати тисовой черпали синее вино с горем смешанноесыпали пустыми колчанами крупный...
23864. Специфика древнерусской литературы (ДРЛ) и этапы развития. 11-17 века 34.5 KB
  Время перехода от средневекового типа литературы к новому. Характеризуется появлением новых жанров и нового понимания задач литературы. Условия возникновения письменной литературы: письменность крещение Руси.
23865. Хождение за три моря 16.74 KB
  Купцов предупреждают что караван подстерегают татары.Хасанбек дает подарки осведомителям чтобы они провели их безопасным путем. В Дербенте Афанасий просит помощи у Василия Панина который благополучно дошел до Каспия и Хасанбека чтоб заступились за людейзахваченных в плен и вернули товары. Считалось то что пришло с моря собственность владельца побережья.
23866. Основные особенности древне-русской литры 42 KB
  Литературный этикет слагается:из представлений о том как должен был совершаться тот или иной ход событийН: князь дб торжественен его конь не мб хромым он не может болетьиз представлений о том как дБ вести себя действующее лицо в соотв со своим положениемиз представлений о том какими словами должно описываться событие.Летопись дает историю госва содержит точные документальные сведения о князьях создает легитимность правомочность власти подтверждает власть.Легенда о призвании варягов: 3 брата старший Рюрик = все русские...