пауза выполнения

0 голосов
спросил 02 Фев, 06 от Гость (210,080 баллов) в категории Программные продукты Esri
возник такой вопрос.
Есть ли в Avenue какая-либо коанда аналогичная
application.proccessmessages в delphi.
необходимо чтобы во время работы скрипта выводиличсь промежуточные результаты на форму, а тро просто так не выводится, тоолько после окончания работы.
может есть какой другой вариант ?

4 Ответы

0 голосов
ответил 03 Фев, 06 от Гость (210,080 баллов)

Просьба уточнить, какая форма имеется в виду. Если приложение Arcview, то стандартный запрос av.ShowMessage (в левом нижнем углу окна приложения выводится нужное сообщение, в т.ч. и в цикле); если в форме, заданной в другом приложении, то надо устраивать взаимодействие типа DDEServer; если же форма Dialog Editor-а, то решение вопроса зависит от задачи.

С уважением, Петр

0 голосов
ответил 05 Фев, 06 от Гость (210,080 баллов)
три вложенных цикла, и внутри "бегаем" по VTab'am и на их основе заполняем ещё один. необходимо чтоб на форму(сделанную возм-ми Avenue) выводились промежуточные рез-ты, в какой-нибудь Label например
0 голосов
ответил 06 Фев, 06 от Гость (210,080 баллов)

Я попробовал несколько вариантов, м.б. я не очень разбираюсь в управлении диалогами, но самое простое, что у меня получилось: в начале цикла (внутри) открываем диалог, в конце закрываем. В примере скрипта в форме отображаются цифры от 1 до 10.

aDial=av.FindDialog("Dialog1")
aDial.Open
aLbl=aDial.FindByName("aTextLabel1")
aLbl.SetVisible(TRUE)
For each i in 1..10
  aLbl.SetLabel(i.AsString)
  aDial.Activate
  For each j in 1..100
    For each k in 1..100
    end
  end
  aDial.Close
end

Соответственно, по задаче надо прикинуть, когда диалог открыть, когда закрыть.

Господа,  если известно более простое решение задачи, просьба написать.

С уважением, Петр

0 голосов
ответил 08 Фев, 06 от Гость (210,080 баллов)
Пётр, спаибо за совет.
Добро пожаловать на сайт Вопросов и Ответов, где вы можете задавать вопросы по GIS тематике и получать ответы от других членов сообщества.
...