Аналитика

Цифровая фотограмметрия, картография и землеустройство
Текущее время: 21 ноя 2017 19:18

Часовой пояс: UTC + 2 часа




Начать новую тему Ответить на тему  [ Сообщений: 22 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения: Re: Создание скриптов для обработки событий
СообщениеДобавлено: 11 мар 2010 14:16 
Гуру
Гуру

Зарегистрирован:
11 сен 2008 16:45
Сообщения: 337
попробовала прописать добавление объекта на событии OnSelect

%Events.OnSelect
$S=@EventObject
@If $S=0 then @Break
$x=@Map.Object[$S].Parameter[-4]
$y=@Map.Object[$S].Parameter[-3]
@Map.AddObject 0|1|3|1|0 $x $y 0.00|1|3|0


программа зацикливается и вешается, а мне остается нервно курить в сторонке... :(


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Создание скриптов для обработки событий
СообщениеДобавлено: 11 мар 2010 18:16 
Администратор
Администратор

Зарегистрирован:
28 авг 2004 17:19
Сообщения: 971
Olg@ писал(а):
программа зацикливается и вешается, а мне остается нервно курить в сторонке... :(

Добавлена блокировка от зацикливания обработчиков событий.
Теперь, до завершения обработки события, все возникающие события того же типа игнорируются.
Поводов покурить становится меньше :)

_________________
Команда разработчиков Digitals
(наш e-mail и ICQ находятся в меню Помощь|О программе)
Новичкам сюда | Новые возможности программы | Купить Digitals | Страница в Facebook


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание скриптов для обработки событий
СообщениеДобавлено: 12 мар 2010 14:00 
Гуру
Гуру

Зарегистрирован:
11 сен 2008 16:45
Сообщения: 337
А можно еще добавить событие OnClick с возвращением координат курсора?


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Создание скриптов для обработки событий
СообщениеДобавлено: 04 май 2010 11:04 
Гуру
Гуру

Зарегистрирован:
11 сен 2008 16:45
Сообщения: 337
В пределах одной пользовательской панели активизируется только одна кнопка с обработчиком событий, если панелей несколько - на каждой по одной. Можно сделать так, чтобы в пределах одной панели можно было бы активизировать несколько кнопок с событиями?


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Создание скриптов для обработки событий
СообщениеДобавлено: 05 окт 2013 09:41 
Гуру
Гуру

Зарегистрирован:
06 июн 2010 06:35
Сообщения: 602
Откуда: Ліспроект
Sergey Oleynik писал(а):
Добавлены события (на кнопке):
%Events.OnStartup
%Events.OnShutdown
%Events.OnFileOpen
%Events.OnFileClose
%Events.OnFileSave
%Events.OnFileNew

Alex3 писал(а):
Я предлагаю разделить эти скрипты на две группы:
1 группа) общие скрипты дижиталса (хранить, например, в файле Digitals.dsf в корне программы). В этом файле могут быть определены:
%Events.StartUp - функции, выполняемые один раз после запуска дижиталс
%Events.OnFileOpen - функции, выполняемые после открытия каждой карты,
%Events.OnFileNew - функции, выполняемые после создания каждой новой карты,
%Events.OnFileClose - функции, выполняемых до начала закрытия каждой карты,
%Events.OnFileExit - функции, выполняемые перед закрытием оболочки дижиталса

2 группа) скрипты конкретной карты (хранить в карте, назначать в свойствах карты, не на кнопки).
%Events.OnFileOpen - функции, выполняемые после открытия конкретной карты,
%Events.OnFileSave - функции, выполняемые до начала записи конкретной карты,
%Events.OnFileClose - функции, выполняемых до начала закрытия каждой карты...

Наскільки "реально" забезпечити тепер такий досконалий підхід до обробки подій Digitals?

Та ще хочеться просити, щоб функції 2-ї групи вставлялись в карту призначення при застосуванні команди @Map.ReplaceTemplate Filename.


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Создание скриптов для обработки событий
СообщениеДобавлено: 19 окт 2014 14:12 
Гуру
Гуру

Зарегистрирован:
06 июн 2010 06:35
Сообщения: 602
Откуда: Ліспроект
Sergey Oleynik писал(а):
...Поскольку событие OnFileSave вызывается до сохранения карты, обработчик события может запретить сохранение, присвоив переменной $Result значение 1. В этом случае в скрипте необходимо предусмотреть сообщением пользователю с объяснением причины...
Та вже якось давненько помітив, що перестала коректно працювати змінна $Result в моєму скрипті обробки події збереження карти. Не працює ні в скрипті рівня карти, ні в скрипті на кнопці. Вирішив перевірити - у чому річ. От простенький скрипт:
Код:
%Events.OnFileSave
@Dialog.Message Запущено скрипт OnFileSave
$MapFile=@Map.Filename
$Modifed=@Map.Modified
@If $Modifed=0 then @Dialog.Message Скрипт OnFileSave каже, що змін в карті не було, тому карта легко збережеться.
@If $Modifed=0 then @Goto %EndFileSave
$Rez=@Dialog.Ask 2+2=|Вкажіть правильний результат, якщо зміни в карті треба зберегти||Вкажіть не правильний результат операції, якщо зміни в карті зберігати не потрібно. Size=500
@If $Rez=4 then $Result=0 else $Result=1
@If $Rez<>4 then @Dialog.Message Зміни не збережено - перевірте
%EndFileSave

Пів-дня морочусь, а толку нема. Зберігає Digitals зміни і все тут тобі :!: . Дуже прошу, зжальтесь наді-мною :?


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Создание скриптов для обработки событий
СообщениеДобавлено: 20 окт 2014 20:29 
Гуру
Гуру

Зарегистрирован:
06 июн 2010 06:35
Сообщения: 602
Откуда: Ліспроект
voha писал(а):
...перестала коректно працювати змінна $Result в моєму скрипті обробки події збереження карти...Пів-дня морочусь, а толку нема. Зберігає Digitals зміни і все тут тобі...
Оперативно виправлено. Величезне дякую розробникам :D


Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 22 ]  На страницу Пред.  1, 2

Часовой пояс: UTC + 2 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: voha и гости: 19


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB