Давайте создадим что-нибудь действительно реальное. На днях я увидел у своего знакомого программку, которая у него включена в автозагрузку и показывает у кого сегодня день рождения. Так вот мне тоже захотелось такую, заодно можно существенно функциональность расширить и добавить красоты.
С чего начать? Запускаем Visual FoxPro, жмем New и выбираем Project. Дадим проекту имя birthday. Перед нами появляется вот такое окно:
Не скажу, что навигация при разработке проекта не очень удобна, но привыкнуть можно. В дереве проекта идем Documents\Forms и жмем New. В появившемся окне выбираем NewForm:
Сохраняем нашу форму под именем mainform. В окне свойств, для начала, нам нужно сделать только следующее:
На закладке Layout установить Desktop=.T. и ShowWindow=2. На закладке методы пока затронем только событие Unload (на закрытие формы). Два раза щелкнув на нем, в процедуре пишем:
clear events
С формой все. В окне Project Manager идем в Code\Programs, жмем New. Появилось пустое окно, пишем код:
do form mainform read events
Ответ на вопрос, почему именно так, Вы найдете в "Шаг 3 - Событийная модель VFP".
Сохраним программу под именем mainprog. Теперь осталось только действительно сделать нашу программу главной, чтобы она стартовала при запуске VFP. Воспользуемся всплывающим меню:
Вот и все, теперь строим исполняемый файл. В окне Project Manager жмем Build и выбираем Build Executable. После сохранения, если нет ошибок, получился файл birthday.exe.
Запускаем и видим, что не учли небольшой нюанс - главное окно Visual FoxPro на заднем плане.
Интерпретатор - никуда не денешься! Что делать? Скроем это окно через файл конфигурации. Для этого в любом текстовом редакторе нужно создать файл, дать ему имя CONFIG.FPV и сохранить его в одном каталоге с программой. В файле должна быть строка:
screen=off
Подробнее о файле конфигурации в "N/A".