Знайте, Intuit лекция Анатомия на проекта

Какво е в проекта

Ние непрекъснато повтаряше "Проект" на думата. В първата глава, казахме, че проектът - набор от свързани файлове от различни видове, от които, в крайна сметка, след компилация, се оказва програмата.

От която преписката е проект?

Изберете Главно меню "Инструменти -> Настройки" и браншови секцията "Настройки", щракнете върху "Файл Филтър". Вие ще видите 6 основни типа файлове, които могат да бъдат намерени в проекта:

  • Lazarus модул (* .pas * с.)
  • Лазар Project (* .lpi)
  • Форма Lazarus или Delphi (* .lfm * DFM).
  • Lazarus пакет (* .lpk)
  • Кодът на проекта Лазар (* .lpr)
  • Lazarus друг файл (* .inc. * LRS ;. * LPL)

Ако се премести в папка с нашия проект, ние ще видим, че тя се състои от осем файлове:

Файлове с имена project1 - това са файлове за целия проект, файловете с името на единица1 - Този модул файлове.

Модул> - това е отделна единица на изходния код, направен под формата на файл с разширение * .pas. Събирането на такива единици на дадена програма.

В допълнение, папката на проекта е ИЪ папка. които са подредени свързан с проектните данни и съставянето на информация. Ако сте променили проекта и да запази тези промени, също ще папка за архивиране. в която да се съхранява резервни копия на версия на проекта на стария.

Често, програмист добавя към проекта и техните типове файлове. Например, в един проект, можете да използвате базата данни, всеки текстов файл или INI-файл за съхраняване на предпочитанията на потребителите. Разумно е да се организира файловете в папката на проекта.

Сега няколко съвета за име и модули на проекта. Проектът трябва да се нарича, защото искаме да се обади нашата програма. Например, проектът на първата лекция, че би било подходящо да се даде наименованието "Hello", вместо на неутрален "Project1".

Модулите също трябва да се обадя на базата на техните стойности. Винаги в проекта е основният модул. В нашите проекти досега имаше само един прозорец. Модул. създаден за този прозорец, и ще бъде основната. В научната литература има много съвети за това как да се определи модулите ще се фокусира върху един от тях. Нека да се споразумеят за в бъдеще, основният модул се нарича Главна (инж главната. - главен) и други модули, които да дават смислени имена, например, Options. Редактор и т.н. Формата на модула (или по-скоро, име собственост на формуляра) също ще се нарича, но с F- префикс. определяне форма. Това означава, че fMain. fOptions. fEditor и така нататък. Консолидиране на този материал на практика.

Искането вместо project1 името на проекта, въведете новото име Здравейте. да не забравяме, че сме се договорили да се запази на проектите в папката с името на стаите за лекции и номера на проекта в него. В нашия пример, това ще бъде

След като кликнете върху бутона "Save", ще бъдете подканени да запазите основния модул. Форма, което наричаме fMain. След това се посочва името на модула само на Майн. В Лазар, главни и малки букви не се разграничават, обаче, да се използват главни букви за по-добра четимост на кода, за да свикне да се разпределят имена. Например, FileEdit. SaveAll т.н.

В надписа форми на собственост записващи думата "Добре дошли" (разбира се, без кавичките), то ще бъде по-разбираема за заглавието на прозореца. Не забравяйте, след като въведете новите стойности на имоти в инспектора на предмет натиснете . промените да влязат в сила. Сега определен компонент форма TLabel (етикет), който ще се появи на формата на текста. Компонент се намира в раздела Стандартно:

Знайте, Intuit лекция Анатомия на проекта


Фиг. 2.4. Tag TLabel

Съвет: ако преместите показалеца на мишката на компонента и известно време не кликнете, ще подсказка име компонент.

Щракнете върху етикета, а след това под формата в горната част на прозореца. Тъй като ние имаме един етикет, можете да го оставите име (наименование собственост) по подразбиране - Label1. Но в Надпис собственост на отписването на етикета:

Следните етикети, поставени TEdit компонент - може да се редактира текст област. в който потребителят може да напиша нещо:

Знайте, Intuit лекция Анатомия на проекта


Фиг. 2.5. Текстово поле TEdit

В този компонент, името имота и да оставите по подразбиране - Edit1. Както можете да видите, в Надпис собственост на компонента не присъства, но нямаше Текст имота - тя е тук и съдържа текста показва в областта. По подразбиране, това е същото като името на компонент. Просто почисти имота чрез премахване на стария текст (не забравяйте ).

Дори и по-ниско установи бутон TButton. Оставете го на името по подразбиране, а в имот напише Надпис

Промяна на позицията и размера на компонентите и самата матрицата, така че формата взети приблизително следната форма:

Знайте, Intuit лекция Анатомия на проекта


Фиг. 2.6. Крайната форма на основната форма

Знайте, Intuit лекция Анатомия на проекта

Запазване на проекта и да го стартирате. Когато програмата е заредена, въведете вашето име, а след това кликнете в полето Edit1 "Run". Трябва да се получи нещо подобно на този линк:

Знайте, Intuit лекция Анатомия на проекта


Фиг. 2.8. Hello.exe програма в действие

Можете да много пъти, за да промените името в текстовото поле и след това натиснете бутона "Run", за да се получи поздрава с различен текст. Ние се получи реална интерактивна програма. т.е. програмата. потребителя.

В следващите лекциите няма да се спираме толкова много подробности за това как да запазите даден проект или модул. ограничен кратко

Запазване на проекта под името ...

Благодарим Ви за прекрасен, разбира се!

Независимият работата №2 съставяне MyCript.pas модул (OS: Windows 7 x64, Лазар 1.4 Win64), издадени за грешка в монтажа код

mycript.pas (54,5) Грешка: Asm: [тласък reg32] невалидна комбинация от опкод и операнди
mycript.pas (95,5) Грешка: Asm: [поп reg32] невалидна комбинация от опкод и операнди

Аз разбирам, че курса е готов за 32-битова операционна система, но какво да кажем в случая с 64-битови системи?

На манипулаторите FileCreate елементи на менюто, FileOpen, както и затваряне на формуляра манипулатор OnClose - в тези три процедури съдържат един и същ код

тях, преди да създадете нов текст>
ако след това Memo1.Modified започне
// ако потребителят е съгласен да запазите промените:
ако MessageDlg ( "Запиши като"
"Сегашната файлът е редактиран. Запазване на промените?
mtConfirmation [mbYes, mbNo, mbIgnore], 0) = mrYes тогава
FileSaveClick (подателя);
приключи; // ако

Позволете ми да ви попитам: няма ли да е по-добре да се направи този код в отделна процедура, например - под формата на манипулатор на събитие OnCloseQuery? Доколкото мога да си спомня за Delphi опит, обадете се на тази процедура сама по себе си не би трябвало да доведе до затварянето на формата. Това означава, че тя може да се използват при процедури за почистване Memo1 и четене от файл. Или в Лазар не можеш да направиш?