Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / выйти из программы / 6 сообщений из 6, страница 1 из 1
12.11.2009, 07:47
    #36305637
Andres N.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выйти из программы
Есть старая программа написанная на Foxpro 2.6. На Foxpro 2.6 нормально работает, на VFP 6 тоже можно сказать что работает, но не получается выйти из программы:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
proc qar1
set color to W+/W
clea
set escape off
set talk OFF
SET CONF ON
set date brit
SET ESCAPE off
DO WHIL .T.
@  2 , 5  GET act FUNCTION'*RNV ';  
PICTURE'qqq;www;eee;rrr;ggg;Exit';
SIZE  1 , 3 , 2   DEFAULT  1  FONT "Arial",  10  STYLE "B"  VALID is() COLOR SCHEME  3 
     read 
IF READ()= 12  OR READ()= 268 
      exit
ENDI
ENDD

 FUNCTION is     
	DO CASE
  case 	act= 6 
    	quit
 	ENDCASE


Обясните пожалуйста, как правильно выйти из этой программы?
...
Рейтинг: 0 / 0
12.11.2009, 09:21
    #36305780
asphalt
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выйти из программы
Если мне не изменяет склероз (совсем забыт досовский синтаксис) комманда read ждет ввода данных.
Т.е. в досе, после ввода 12 или 268 выйдете из бесконечного цикла. (DO WHIL .T.)
В 6ке лучше все переписать под винды, в зависимости от того что делает процедура, там текста то 5 строк
...
Рейтинг: 0 / 0
12.11.2009, 09:49
    #36305853
GermanGM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выйти из программы
Andres N.,в VFP обязан работать так же как и в 2.6, различий быть не должно. Вообще, код странный... Чтобы событие выбора какой-либо опции вызывало завершение READ FUNCTION надо заменить на '*RTV', а EXIT в

Код: plaintext
1.
2.
IF READ()= 12  OR READ()= 268 
      exit
ENDI
- на QUIT (выход по ESC, что и анализирует функция READ() - ее полное название readkey())
иначе будет тот же возврат в вызывающую программу
...
Рейтинг: 0 / 0
12.11.2009, 10:18
    #36305942
Andres N.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выйти из программы
Если можно, помогите пожалуйста, над примерами. У меня ни как не получается.
...
Рейтинг: 0 / 0
12.11.2009, 10:51
    #36306038
GermanGM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выйти из программы
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
proc qar1
set color to W+/W
clea
set escape off
set talk OFF
SET CONF ON
set date brit
@  2 , 5  GET act FUNCTION '*RTV qqq ;www ;eee ;rrr ;ggg ;Exit ';
SIZE  1 , 3 , 2   DEFAULT  1  FONT "Arial",  10  STYLE "B" COLOR SCHEME  3 
     read CYCLE
IF READKEY()% 256 = 12  or act= 6  && выбрана последняя опция либо нажат ESC
      quit
 else
 return act && насколько я понимаю, qar1 - функция, возвращающая значение из предлагаемого набора вариантов
ENDIF
...
Рейтинг: 0 / 0
12.11.2009, 11:08
    #36306097
Andres N.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выйти из программы
Спасибо, поличулось.
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / выйти из программы / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]