После старта VFP выбираем меню File->New, и в окне New выбираем Project, затем нажимаем большую кнопку New file. Нам будет предложено указать имя файла проекта и его расположение. Если будет предложен каталог VFP, то быстро-быстро "убегаем" из него в свой каталог. У меня это D:\Develop\MyProject\. После сохранения проекта в папке получится 2 (два) файла:
MyProject.PJX - аналог файла DBF MyProject.PJT - аналог файла MEM
Внимание !!! Эти два файла - единое целое. Их нельзя разносить в разные места.
О типах файлов VFP поговорим позже.
После создания проекта добавляем в нашу папку файлы FOXPRO.INT и CONFIG.FPW. Создаем ярлык для старта VFP и указываем в свойствах ярлыка Start in - наш каталог D:\Develop\MyProject\. VFP читает эти файлы при старте один раз, поэтому, лучше "выйти" и войти снова по нашему ярлыку.
В дальнейшем открываем наш проект через меню File->Open, выбирая нужный каталог на диске и файл проекта. В VFP может быть открыто одновременно несколько проектов. Поэтому, их лучше держать в разных папках.
В окне проекта переходим на закладку Code. Выбираем раздел Programs и нажимаем кнопку справа New... Появится окно редактирования программного кода. Пишем в нем:
messagebox("Ok!!!")
Сохраняем код программы по Ctrl+W под именем MyMain.prg. Для программ лучше сразу создать папку Programs, а не сыпать все компоненты в одну большую кучу. Раздел Programs добавится знаком +, а файл MyMain будет выделен, как главная программа. Подсвечиваем ее курсором и нажимаем кнопку справа Run.
Наша первая программа работает !!!
В меню Tools выбираем Options и закладку File Locations. Обратите внимание на следующие установки - Default Directory и Search Path. Стоит потратить немного времени и самостоятельно изучить все закладки и установки в окне Options.
Чтобы каждый раз не заниматься сбившимися установками, самые важные из них необходимо прописать в главный файл приложения, что мы и начнем делать. В окне проекта подсвечиваем курсором файл MyMain и нажимаем кнопку справа Modify.
*********************************************** * Главный модуль программного комплекса *********************************************** * Для распространяемого модуля (для заказчиков) необходимо отключать обработку * клавиши Esc, отладчик и вывод на экран результаты выполнения команд set escape off set debug off set echo off * Отключаем обработку удаленных записей set deleted on * Отключаем все, что мешает НАСТОЯЩЕМУ программному продукту на VFP set talk off set sysmenu off set asserts off set optimize on set resource off set help off set typeahead to 5 * Быстро и легко решаем проблему 2000 set strictdate to 0 set century to 19 rollover 70 * Отключаем обработку функциональных клавиш по ON KEY on key label F1 on key label F2 on key label F3 on key label F4 on key label F5 on key label F6 on key label F7 on key label F8 on key label F9 on key label F10 on key label F11 on key label F12 * Отключаем функции по умолчанию, которые могут использоваться разработчиком set function F1 to set function F2 to set function F3 to set function F4 to set function F5 to set function F6 to set function F7 to set function F8 to set function F9 to set function F10 to set function F11 to set function F12 to * Отключаем макросы VFP set mackey to * Включаем что-то очень важное... set compatible on set safety off set fullpath on set udfparms to value * Отключаем вывод на экран сообщений оптимизатора запросов =sys(3054,0) * Все чистим... clear clear all clear dlls clear macros clear resource * Все закрываем... close all close tables all close databases all * messagebox("Ok!!!")
Сохраняем код и запускаем. Все работает. Но...
У каждого языка программирования есть своя "изюминка". Есть она и у VFP. Недаром, раньше она называлась FOUNDATION READ, а теперь называется READ EVENTS. Но об этом в следующем шаге.