Pzl-Компонента за 10 шагов: различия между версиями
(не показаны 24 промежуточные версии этого же участника) | |||
Строка 1: | Строка 1: | ||
'''Основные понятия Pzl-Технологии''' | |||
=Шаг 1. | Классы, и пакеты, в которые они помещаются, удовлетворяющие принятым соглашениям, называются Pzl-компонентами. | ||
=Шаг 2. | |||
=Шаг 3. | Pzl-Компоненты помещаются в Pzl-Контейнеры. Pzl-Контейнер может содержать неограниченное число Pzl-Компонент. | ||
=Шаг 4. | |||
Взамодействие обычных классов системы Visual Prolog и PZl-компонент, а также Pzl-компонент между собой, обеспечивается Pzl-Системой. | |||
=Шаг 6. | |||
=Шаг 7. | Главное приложение пользователя, включающее ядро Pzl-Системы, называется Pzl-Порт (PzlPort). | ||
=Шаг 8. | |||
=Шаг 9. Запускаем | DLL, построенная в соответствии с принятыми соглашениями, называется DLL-контейнером. | ||
=Шаг 10. | |||
Dll-Контейнер и Pzl-Порт являются Pzl-Контейнерами. | |||
=Шаг 1. Первый запуск Elementary PzlStudio= | |||
Если у Вас нет PzlStudio в меню '''Start/...''' компьютера, то найдите директорию '''SpbSolutions/Bin''' и запустите приложение PzlStudioElementary.exe. | |||
Вы получаете | |||
[[Image:PzlStudio DemoRun Initialized.png]] | |||
Проверьте состояние Ваших установок и при необходимости откорректируйте их. | |||
Для этого вызовите через '''Tools/Options''' форму установки общих свойств: | |||
[[Image:PzlStudio OptionsDLG.png]] | |||
Нажимаем '''Close''', закрываем форму. | |||
=Шаг 2. Создаем контейнер MyHelloWorld= | |||
В Elementary PzlStudio через меню '''File/New.../Container''' вызываем форму и устанавливаем: | |||
*имя директории контейнера ''MyDemoContainer''. | |||
*имя контейнера ''MyDemoContainer''. | |||
[[Image:PzlStudio DemoRun ContainerCreate.png]] | |||
Нажимаем '''Create'''. Контейнер создан! | |||
Нажимаем '''Close''', закрываем форму. | |||
=Шаг 3. Компилируем контейнер= | |||
Открываем IDE системы программирования Visual Prolog. | |||
Открываем Проект ''MyDemoContainer.prj6''. | |||
[[Image:PzlStudio DemoRun ContainerAtIDE.png]] | |||
Строим проект (Ctrl-Shift-B). | |||
Сохраняем проект (Ctrl-S). | |||
=Шаг 4. Создаем компоненту= | |||
В Elementary PzlStudio через меню '''File/New.../Component''' вызываем форму и устанавливаем: | |||
*Имя директории компоненты ''MyHelloWorld'' | |||
*Имя компоненты ''MyHelloWorld''. | |||
Остальные параметры не редактируем, они нам подходят. | |||
[[Image:PzlStudio DemoRun ComponentCreate.png]] | |||
Нажимаем '''Create'''. Компонента создана! | |||
Нажимаем '''Close''', закрываем форму. | |||
=Шаг 5. Добавляем компоненту в контейнер= | |||
Через меню '''Tools/Add.../Component To Container''' вызываем форму и устанавливаем: | |||
*Имя проекта контейнера ''... /MyDemoContainer.prj6'' | |||
*Пакет компоненты ''... /MyHelloWorld.pack''. | |||
[[Image:PzlStudio DemoRun AddComponent.png]] | |||
Нажимаем '''Add As Original'''. Компонента в контейнере! | |||
Нажимаем '''Close''', закрываем форму. | |||
=Шаг 6. Компилируем контейнер= | |||
Возвращаемся к IDE, к тому же проекту MyDemoContainer.prj6. | |||
[[Image:PzlStudio Demo ComponentAddedProject.png]] | |||
Запускаем построение проекта (Ctrl-Shift-B). Соглашаемся '''Add All''' на предложение IDE по добавлению пакетов в проект. | |||
[[Image:PzlStudio DemoRun ContainerAddGuiDialog.png]] | |||
Теперь в проекте видны все файлы пакета MyHelloWorld.pack. | |||
[[Image:PzlStudio Demo ProjectCompiled.png]] | |||
Сохраняем проект (Ctrl-S). | |||
=Шаг 7. Регистрируем компоненту= | |||
В E'ementary PzlStudio через меню '''Tools/Register Components''' вызываем форму и устанавливаем: | |||
*Имя PZL-файла контейнера ''MyDemoContainer.PZL (...)'' - находим в целевой директории проекта | |||
*View The Content of '''<Container>''' at Target '''<Current User>''' | |||
[[Image:PzlStudio DemoRun RegisteringSelection.png]] | |||
Отмечаем компоненту "MyHelloWorld". | |||
Нажимаем кнопку '''Register Selected'''. Компонента зарегистрирована! | |||
[[Image:PzlStudio DemoRun RegisteringRegistered.png]] | |||
Нажимаем '''Close''', закрываем форму. | |||
=Шаг 8. Пишем программу в классе MyHelloWorld= | |||
Возвращаемся к IDE системы Visual Prolog. | |||
Делаем двойной щелчок на файле MyHelloWorld.pro. | |||
[[Image:PzlStudio DemoRun IDESourceImplementation.png]] | |||
Помещаем в тело предиката pzlRun(...) вызов | |||
<vip> | |||
clauses | |||
pzlRun(""):- | |||
!, | |||
MSG="My Hello to World from MyDemoContainer!", | |||
write(MSG), | |||
vpiCommonDialogs::note(MSG). | |||
pzlRun(UserText):- | |||
MSG=string::format("My Hello to World from MyDemoContainer!\nEntered:%\n",UserText), | |||
write(MSG), | |||
vpiCommonDialogs::note(MSG). | |||
</vip> | |||
[[Image:PzlStudio DemoRun IDESourceUpdated.png]] | |||
=Шаг 9. Опять компилируем контейнер= | |||
Запускаем построение проекта (Ctrl-Shift-B). | |||
Соглашаемся с предложением IDE нажатием '''Add All''' | |||
[[Image:PzlStudio DemoRun AddVPIToProject.png]] | |||
Компонента теперь делает нечто осмысленное! | |||
=Шаг 10. Запускаем!= | |||
В Elementary PzlStudio: | |||
*Через меню '''View/PzlStatus''' вызываем форму состояния Pzl-Системы | |||
*Через меню '''Tools/Run Component''' вызываем форму запуска компонент, находим нашу компоненту ''MyHelloWorld'', пишем сообщение в поле параметра: | |||
[[Image:PzlStudio DemoRun InvokeRun.png]] | |||
Нажимаем '''Run''', получаем | |||
[[Image:PzlStudio DemoRun RunResult.png]] | |||
=Ссылки= | =Ссылки= | ||
[[Category:VpPuZzle]] | [[Category:VpPuZzle]] |
Текущая версия на 00:04, 25 декабря 2010
Основные понятия Pzl-Технологии
Классы, и пакеты, в которые они помещаются, удовлетворяющие принятым соглашениям, называются Pzl-компонентами.
Pzl-Компоненты помещаются в Pzl-Контейнеры. Pzl-Контейнер может содержать неограниченное число Pzl-Компонент.
Взамодействие обычных классов системы Visual Prolog и PZl-компонент, а также Pzl-компонент между собой, обеспечивается Pzl-Системой.
Главное приложение пользователя, включающее ядро Pzl-Системы, называется Pzl-Порт (PzlPort).
DLL, построенная в соответствии с принятыми соглашениями, называется DLL-контейнером.
Dll-Контейнер и Pzl-Порт являются Pzl-Контейнерами.
Шаг 1. Первый запуск Elementary PzlStudio
Если у Вас нет PzlStudio в меню Start/... компьютера, то найдите директорию SpbSolutions/Bin и запустите приложение PzlStudioElementary.exe.
Вы получаете
Проверьте состояние Ваших установок и при необходимости откорректируйте их. Для этого вызовите через Tools/Options форму установки общих свойств:
Нажимаем Close, закрываем форму.
Шаг 2. Создаем контейнер MyHelloWorld
В Elementary PzlStudio через меню File/New.../Container вызываем форму и устанавливаем:
- имя директории контейнера MyDemoContainer.
- имя контейнера MyDemoContainer.
Нажимаем Create. Контейнер создан!
Нажимаем Close, закрываем форму.
Шаг 3. Компилируем контейнер
Открываем IDE системы программирования Visual Prolog.
Открываем Проект MyDemoContainer.prj6.
Строим проект (Ctrl-Shift-B).
Сохраняем проект (Ctrl-S).
Шаг 4. Создаем компоненту
В Elementary PzlStudio через меню File/New.../Component вызываем форму и устанавливаем:
- Имя директории компоненты MyHelloWorld
- Имя компоненты MyHelloWorld.
Остальные параметры не редактируем, они нам подходят.
Нажимаем Create. Компонента создана!
Нажимаем Close, закрываем форму.
Шаг 5. Добавляем компоненту в контейнер
Через меню Tools/Add.../Component To Container вызываем форму и устанавливаем:
- Имя проекта контейнера ... /MyDemoContainer.prj6
- Пакет компоненты ... /MyHelloWorld.pack.
Нажимаем Add As Original. Компонента в контейнере!
Нажимаем Close, закрываем форму.
Шаг 6. Компилируем контейнер
Возвращаемся к IDE, к тому же проекту MyDemoContainer.prj6.
Запускаем построение проекта (Ctrl-Shift-B). Соглашаемся Add All на предложение IDE по добавлению пакетов в проект.
Теперь в проекте видны все файлы пакета MyHelloWorld.pack.
Сохраняем проект (Ctrl-S).
Шаг 7. Регистрируем компоненту
В E'ementary PzlStudio через меню Tools/Register Components вызываем форму и устанавливаем:
- Имя PZL-файла контейнера MyDemoContainer.PZL (...) - находим в целевой директории проекта
- View The Content of <Container> at Target <Current User>
Отмечаем компоненту "MyHelloWorld". Нажимаем кнопку Register Selected. Компонента зарегистрирована!
Нажимаем Close, закрываем форму.
Шаг 8. Пишем программу в классе MyHelloWorld
Возвращаемся к IDE системы Visual Prolog.
Делаем двойной щелчок на файле MyHelloWorld.pro.
Помещаем в тело предиката pzlRun(...) вызов
clauses pzlRun(""):- !, MSG="My Hello to World from MyDemoContainer!", write(MSG), vpiCommonDialogs::note(MSG). pzlRun(UserText):- MSG=string::format("My Hello to World from MyDemoContainer!\nEntered:%\n",UserText), write(MSG), vpiCommonDialogs::note(MSG).
Шаг 9. Опять компилируем контейнер
Запускаем построение проекта (Ctrl-Shift-B).
Соглашаемся с предложением IDE нажатием Add All
Компонента теперь делает нечто осмысленное!
Шаг 10. Запускаем!
В Elementary PzlStudio:
- Через меню View/PzlStatus вызываем форму состояния Pzl-Системы
- Через меню Tools/Run Component вызываем форму запуска компонент, находим нашу компоненту MyHelloWorld, пишем сообщение в поле параметра:
Нажимаем Run, получаем