Вопрос
При создании проекта в VFP и его компиляции в exe-файл возможно ли избавиться от главного окна? Я уже всячески экспериментировал с переменной _screen, ничего не получается. То есть, создаю пустой проект, в нем вставляю форму, говорю ей set main, компилирую.
Запускаю полученный экзешник и форма открывается в главном окне VFP (это я успеваю увидеть) и тут же закрывается. Я понимаю: не прописал где-то read events, но как все же избавиться от главного окна, чтобы открывалась только форма set main?
Ответ
Это делается таким образом.
Вставляем в проект statr.prg и делаем его set main.
_SCREEN.Visible=.f.
*DO open
ON SHUTDOWN QUIT && это чтобы винда закрывала прог. при выходе
DO FORM myform &&noshow
READ EVENTS
if RIGHT(sys(16,0),4)='.exe'
ON SHUTDOWN
QUIT
endif
close all
clear all
*_SCREEN.Visible=.t.
cancel
В форме должно быть прописано св-во:
.ShowWindow=2 -As Top-Level Form
в .Destroy такой код
CLEAR EVENTS
if RIGHT(sys(16,0),4)#'.exe'
_SCREEN.Visible=.t. && иначе при разработке окно Фокса пропадет
endif
Кроме того в проект, а лучше в каталог с прог. обязательно положить файл config.fpw такого содержания:
SCREEN=OFF
CODEPAGE = 1251
*KEYCOMP = WINDOWS
COLLATE = RUSSIAN
Если будут еще вопросы, то наш лучший сайт по Фокс: http://www.foxclub.ru Форум которого лучше любой книги для программистов. Там можно быстро получить ответы на почти все вопросы, и его архив нужно иметь под рукой.
Из конференции Expert_FAQ
Copyright 2000-2004 Сообщество Чайников
Контактная информация