Решение. 1. Запустите среду Visual Prolog и создайте новый проект (Project | New Project), активизируется окно Application Expert (рис.11)
1. Запустите среду Visual Prolog и создайте новый проект (Project | New Project), активизируется окно Application Expert (рис.11).
2. Определите имя проекта (например, MyProj) и базовый каталог, куда будет сохранен проект (например, D:\VP\ MyProj).
рис.11. Диалоговое окно Application Expert
Нажмите Create для создания проекта. Проект с графическим интерфейсом уже создан. Запустите его на выполнение (Project | Run, или клавиша <F9>, или кнопка <R>).
рис.12. Приложение по умолчанию
Проверьте, какие из пунктов главного меню реагируют на действия пользователя. Завершите работу приложения MyProj.
3. Проект по умолчанию – это основа для формирования собственного приложения. Доработайте проект, добавив новый пункт меню Test, при выборе которого должно появиться окно для ввода имени пользователя. После ввода имени должна появиться приветствующая надпись в окне Messages. Для этого выполните действия:
а) создание нового пункта меню: в окне проекта нажмите кнопку Menu на левой панели инструментов, а затем двойным щелчком активизируйте редактор меню (или нажмите Edit на правой панели инструментов)
рис.13. Окно проекта, показывающее зарегистрированное меню
В открывшемся окне выделите пункт меню Edit и нажатием кнопки New добавьте новый пункт меню (рис.14).
.
рис.14. Добавление пункта меню в редакторе меню
Введите название пункта меню &Test. Имя-константа для него будет присвоено автоматически
Нажмите ОК, а затем Close для закрытия окна Task Menu.
Сохраните сделанные в меню изменения
б) создание диалогового окна для ввода имени пользователя: в окне проекта нажмите кнопку Window на левой панели инструментов, а затем вызовите эксперт окон нажатием кнопки Code Expert .Откроется окно Dialog and Window Expert(рис.15)
рис.15. Эксперт окон и диалоговых окон создает код меню
Выберите пункт Menuв спискеEvent Typeи выделите строку id_test (имя нового пункта меню). Нажмите кнопку Add Clause, чтобы сгенерировать Пролог-предложение для события. Название кнопки изменится на Edit Clause, когда код для события будет создан. Нажмите кнопку Edit Clause.Откроется окно редактора для файла MyProj.pro, в который добавлено предложение:
%BEGIN Task Window, id_test
task_win_eh(_Win,e_Menu(id_test,_ShiftCtlAlt),0):-!,
!.
%END Task Window, id_test
рис.16. Окно редактора кода
Поместите курсор в указанную точку, а затем щелкните правой кнопкой мыши и выберите и выберите команду Insert | Predicate Call | Window, Dialog or Toolbar
В появившевся диалоговом окне выберите из списка dlg_GetStr и нажмите ОК.
рис.17. Определение предиката для вставки
Вызов диалогового окна dlg_GetStrбудет вставлен в текст и код предложения должен выглядеть следующим образом:
%BEGIN Task Window, id_test
task_win_eh(_Win,e_Menu(id_test,_ShiftCtlAlt),0):-!,
Msg="Message",
InitStr="",
Title="Title",
_NewSTRING=dlg_GetStr(Title,Msg,InitStr),
!.
%END Task Window, id_test
Для окончательной доработки внесите следующие изменения (выделены жирным шрифтом):
%BEGIN Task Window, id_test
task_win_eh(_Win,e_Menu(id_test,_ShiftCtlAlt),0):-!,
Msg="Введите Ваше имя", % строка-подсказка
InitStr="", % исходное значение вводимой пользователем строки
Title="Ввод имени пользователя", % заголовок окна
_NewSTRING=dlg_GetStr(Title,Msg,InitStr),% введенная
строка
_NewSTRING<>"", % если введенная строка не пустая,
write("Привет, ",_NewSTRING),% то выводится приветствие
!.
%END Task Window, id_test
4. Запустите проект на исполнение и протестируйте его.