Преход от DevelStudio

Относно функциите на DevelNext, които не са налични в DevelStudio

Общо описание и запознаване с новите функции на DevelNext, които не са били в DevelStudio.

Ако сте дошли в DevelNext от develstudio, тогава трябва да знаете за новите механизми за създаване на програми в тази нова програмна среда.

  1. Поведение - ви позволяват да промените логиката на работа с компоненти, подобни на свойствата.
  2. Събития с параметри - събитията могат да бъдат закачени с параметър, например върху клавиша Enter.
  3. Конструктор на събития - визуално програмиране на блокове, възможност за конвертиране на всичко в скрипт.
  4. Възможности за игра - 2D физика, спрайтове, игрови сцени, клониране.
  5. Модули - в develnext всички невизуални компоненти се преместват в отделни модули, които трябва да бъдат свързани към формуляри.

Поведения

Тази възможност дойде от конструкторите на игрите Construct Classic и Construct 2. Самата идея е, че всички обекти са равни помежду си и имат еднакви свойства, но за да дадат на обекта нова функционалност, те използват поведение. Защо не можете просто да добавите още няколко свойства към обекта, защо да подчертаете всичко това в поведението? Първо, има много поведения, ако всичко това се превърне в свойства, ще бъде неудобно да се разбере това, ще има твърде много от тях. На второ място, поведението не е точно свойство, може да бъде по-функционално.

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

Събития с параметри

В develnext това се улеснява чрез събития с параметри. В средата можете да създадете индивидуално събитие за натискане на клавиша Enter, всички други клавиши и дори комбинации от клавиши веднага, като Ctrl + X, Alt +. и т.н.

Същото се отнася за събития от сблъсък, превъртане, мишка и някои други, навсякъде има параметър.

Конструктор на събития

Възможности за игра

Това не беше случаят в develstudio. Какво е игровото изживяване в develnext?

Всичко това ви позволява да внедрите 2D игри от различни жанрове.

Модули

Ако идвате от develstudio, тогава си представете, че модул в develnext е същата форма, само че с набор от някои невизуални компоненти не можете да добавяте визуални компоненти към него като бутони, текстове и т.н.

Такъв модул може да бъде формиран от таймерите, диалоговите прозорци и т.н.

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

Как да получите достъп до компоненти?

Какво да използвате вместо c („бутон“), как да получите достъп до невизуални компоненти като таймер и много други.

В develstudio компонентите бяха достъпни чрез функцията c (), например c ("бутон1"). В develnext това се случва малко по-различно.

Прост случай

Например, просто трябва да покажете съобщение от полето за въвеждане, в develstudio това беше направено по следния начин:

DevelNext прави това чрез $ this:

Трудна ситуация

Понякога възниква ситуация, когато името на компонент трябва да бъде взето от низ, в DevelStudio не сте имали никакви проблеми с това, просто сте направили, например, c ("button_ $ index"). И в develnext можете да го направите по следния начин:

Компоненти с различна форма

За да се обърнете към компонент от друга форма, използвайте метода -> form () в DevelNext, например:

Този код е подобен на кода от develstudio $ text = c ("Form2-> edit3") -> text .

Невизуални компоненти

В DevelNext всички невизуални компоненти се преместват в модули. Модулите заедно с всички техни компоненти са свързани към формата. Достъпът до компонентите на модула от формуляр изглежда по същия начин, както обикновено:

Ако имате MainModule, свързан с вашата форма, тогава всички негови компоненти могат да бъдат достъпни по същия начин като компонентите на формуляра.

Достъп до визуални компоненти от модул

Ситуацията е подобна, ако модулът е свързан с формуляра, тогава от модула можете да получите достъп до всички компоненти на неговата форма чрез $ this .

Как да замените променливата $ self в обектно събитие?

В develstudio променливата $ self посочи текущия обект на събитието, каква замяна е в develnext.

В develnext към всяко събитие в променливата $ event се предава специален обект, който е обект от класа php \ gui \ event \ UXEvent, чрез този обект можете да получите обекта на събитието:

С прости думи, в develnext, пълният аналог на $ self е $ event-> sender .

Как да добавите невизуален компонент на таймера?

Статия за невизуални компоненти в develnext, как да ги използвате и къде да ги добавите.

Използвайте модули, например, първоначално трябва да имате модул MainModule във вашия проект, в който можете да добавяте толкова таймери, диалогови прозорци и други модулни компоненти, колкото искате. Този модул може да бъде свързан с вашия формуляр чрез свойството Modules на самия формуляр.

Не забравяйте да свържете модули към формуляра.

От формуляра ще имате достъп до всички компоненти на неговите модули чрез $ this, а от модула - всички компоненти на неговите форми, също чрез $ this .

Как да заменим константата DOC_ROOT?

Как да получите относителния път към работеща програма?

Няма подобна константа в develnext, но относителният път на програмата може лесно да бъде получен чрез комбинацията от ./ символи:

По принцип тази комбинация не е необходима и можете да се позовете на относителните пътища на програмата без нея:

Пътищата, които започват НЕ с/или не с име на устройство (например C:), се считат за относителни.