Решение. 1. Создайте новый проект(Project | New Project)

1. Создайте новый проект(Project | New Project).

2. Добавьте в главное меню новый пункт Factorial аналогично как в предыдущем примере).

3. Создайте новое окно. Для этого в окне проекта нажмите кнопку Window на левой панели инструментов, а затем – кнопку New справа (рис.18).

Решение. 1. Создайте новый проект(Project | New Project) - student2.ru Решение. 1. Создайте новый проект(Project | New Project) - student2.ru Решение. 1. Создайте новый проект(Project | New Project) - student2.ru

рис.18. Создание нового окна в проекте

Откроется окно Window Attributes (рис.19). Введите имя создаваемого окна Factorial и нажмите ОК.

Решение. 1. Создайте новый проект(Project | New Project) - student2.ru Решение. 1. Создайте новый проект(Project | New Project) - student2.ru

рис.19. Диалоговое окно для установки атрибутов окна

4. Разместите на макете появившегося нового окна следующие компоненты (рис.20):

Static Textдля вывода текста

Edit Controlдля ввода данных

Push Buttonдля выполнения расчета

Решение. 1. Создайте новый проект(Project | New Project) - student2.ru Решение. 1. Создайте новый проект(Project | New Project) - student2.ru Решение. 1. Создайте новый проект(Project | New Project) - student2.ru Решение. 1. Создайте новый проект(Project | New Project) - student2.ru Решение. 1. Создайте новый проект(Project | New Project) - student2.ru Решение. 1. Создайте новый проект(Project | New Project) - student2.ru Решение. 1. Создайте новый проект(Project | New Project) - student2.ru Решение. 1. Создайте новый проект(Project | New Project) - student2.ru

рис.20. Редактор окон

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

а) для компонента Static Text, служащего для вывода надписи Введите число (имя-константа будет задано автоматически)(рис.21)

Решение. 1. Создайте новый проект(Project | New Project) - student2.ru Решение. 1. Создайте новый проект(Project | New Project) - student2.ru

рис.21. Атрибуты компонента Static Text

б) для компонента Edit Control (поле ввода), который обеспечит ввод числа

Решение. 1. Создайте новый проект(Project | New Project) - student2.ru Решение. 1. Создайте новый проект(Project | New Project) - student2.ru

рис.22. Атрибуты компонента Edit Control

в) для компонента Push Button (кнопка), при нажатии на который будет выполнен расчет и выведен результат (имя-константа будет задано автоматически)(рис.23)

Решение. 1. Создайте новый проект(Project | New Project) - student2.ru

рис.23. Атрибуты компонента Push Button

г) для компонента Static Text, необходимого для вывода результата

Решение. 1. Создайте новый проект(Project | New Project) - student2.ru Решение. 1. Создайте новый проект(Project | New Project) - student2.ru

рис.24. Атрибуты компонента Static Text

5. Сгенерируйте стандартный код Visual Prolog для нового окна. Для этого в окне проекта нажмите кнопку Code Expert, когда выбрано окно Factorial. Откроется окно Dialog and Window Expert. Выберите исходный модуль Factorial.pro и нажмите кнопку Default Code(рис.25).

Решение. 1. Создайте новый проект(Project | New Project) - student2.ru Решение. 1. Создайте новый проект(Project | New Project) - student2.ru Решение. 1. Создайте новый проект(Project | New Project) - student2.ru

рис.25 Добавление кода по умолчанию в эксперте окон

Когда заданный по умолчанию код будет сгенерирован, станут доступны кнопки Add Clause, Edit Code и некоторые другие.

6. Запрограммируйте выбор пункта меню Factorial для вызова окна Factorial.Для этогов списке окон выберите Task Window , пункт Menuв спискеEvent Typeи выделите строку id_factorial(имя пункта меню) в списке Event or Item. Нажмите кнопку Add Clause, чтобы сгенерировать Пролог-предложение для события. Название кнопки изменится на Edit Clause, когда код для события будет создан. Нажмите кнопку Edit Clause.Откроется окно редактора для файла Factorial.pro, в который добавлено предложение:

%BEGIN Task Window, id_factorial

task_win_eh(_Win,e_Menu(id_factorial,_ShiftCtlAlt),0):-!,

!.

%END Task Window, id_factorial

Допишите команду для открытия окна Factorial: win_factorial_Create(_Win). В результате должно получиться:

%BEGIN Task Window, id_factorial

task_win_eh(_Win,e_Menu(id_factorial,_ShiftCtlAlt),0):-!,

Наши рекомендации