Аналитика

Цифровая фотограмметрия, картография и землеустройство
Текущее время: 26 апр 2024 02:33

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




Начать новую тему Ответить на тему  [ Сообщений: 1369 ]  На страницу Пред.  1 ... 46, 47, 48, 49, 50, 51, 52 ... 92  След.
Автор Сообщение
 Заголовок сообщения: Re: Запрос на функцию
СообщениеДобавлено: 20 апр 2013 21:28 
Гуру
Гуру

Зарегистрирован:
06 июн 2010 06:35
Сообщения: 823
Откуда: Ліспроект Володимир Вовчанський
Sergey Oleynik писал(а):
Добавлены события (на кнопке):
%Events.OnStartup
%Events.OnShutdown
%Events.OnFileOpen
%Events.OnFileClose
%Events.OnFileSave
%Events.OnFileNew
Але, на даний час, є проблеми зі скриптами автозапуску.
1) Не працює %Events.OnStartup посаджена на кнопку. Можна скрипту на кнопці призначити автозапуск, але в коді такого скрипта не вдається використати натискання кнопки іншого скрипта обробки події. Наприклад, як зробити, щоб при старті Digitals відпрацьовував скрипт з запитом: включити обробку події чи ні :?:
Вложение:
video-1.exe [2.01 Мб]
Скачиваний: 640

2) Скрипт обробкт події %Events.OnShutdown мав-би відпрацьовувати, як на мене, перед виходом з Digitals та, відповідно, має на меті забезпечити виконання якихось дій незалежно від того чи хоче цього користувач, чи не хоче. Припустимо з таким підходом: якщо вже був відпрацьований скрипт обробки події Events.OnStartup, то хоч-не-хоч, а має відпрацювати Events.OnShutdown. Натомість, Events.OnShutdown відпрацьовує лише тоді, коли кнопка натиснута.

Мабуть Events.OnStartup і Events.OnShutdown дійсно не мають садитись на кнопки, а відноситись до Digitals загалом. А інакше змісту в цих командах немає :oops:


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Запрос на функцию
СообщениеДобавлено: 24 май 2013 15:38 
Гуру
Гуру

Зарегистрирован:
06 июн 2010 06:35
Сообщения: 823
Откуда: Ліспроект Володимир Вовчанський
voha писал(а):
... в статусному рядку редактора скриптів не відображається внутрішнє ім'я пункта меню при виборі останнього в списку функцій. Я застосовував @ExecuteMenu InternalName.
Адже тут є різниця:
припустим команда Перевірка | Локалізація, далі - ОК, відкриваю знову для редактування - а вскрипті немає рядка Перевірка | Локалізація;
зате команда @ExecuteMenu CheckLocalization, далі - ОК, відкриваю знову для редактування - все на місці, все працює.
Не нагально, але варто виправити таку прикрість.
Прошу пробачення, але з оновленням на 23.05.2013, вказана проблема знову з'явилась. Трохи не зручно, чи можна знову виправити :oops:
Дякую за підтримку.


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Запрос на функцию
СообщениеДобавлено: 28 май 2013 14:00 
Гуру
Гуру

Зарегистрирован:
26 фев 2007 12:04
Сообщения: 1751
Откуда: Vinnitsa
Цитата:
Прошу пробачення, але з оновленням на 23.05.2013, вказана проблема знову з'явилась. Трохи не зручно, чи можна знову виправити :oops:
Дякую за підтримку.

А в обновлении за 28.05 проблема присутствует? У меня для команд меню и кнопок в статусной строке показывает их внутренние имена. Похоже все работает.

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


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Запрос на функцию
СообщениеДобавлено: 28 май 2013 14:19 
Гуру
Гуру

Зарегистрирован:
06 июн 2010 06:35
Сообщения: 823
Откуда: Ліспроект Володимир Вовчанський
Bondarets Alexander писал(а):
...У меня для команд меню и кнопок в статусной строке показывает их внутренние имена. Похоже все работает.
Прошу пробачення, не уточнив зразу. Так, проблема не стосується редактування скрипта на кнопці панелі інструментів, але проблема наявна при редактуванні скрипта обробки події для шару. Однаково і у версії 28.05.
Примітно, також, що порядок сортування у списку функцій при редактуванні скрипта обробки події для шару наступний: назви кнопок і полів, назви пунктів меню, назви скриптів, функції; на відміну від списку функцій при редактуванні скрипта на кнопці панелі інструментів: назви скриптів, функції, назви кнопок і полів, назви пунктів меню.


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Запрос на функцию
СообщениеДобавлено: 29 май 2013 08:36 
Гуру
Гуру

Зарегистрирован:
26 фев 2007 12:04
Сообщения: 1751
Откуда: Vinnitsa
Спасибо за информацию, проблема исправлена.

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


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Запрос на функцию
СообщениеДобавлено: 11 июн 2013 16:19 
Гуру
Гуру

Зарегистрирован:
06 июн 2010 06:35
Сообщения: 823
Откуда: Ліспроект Володимир Вовчанський
Прошу розробників доповнити можливості обробки подій.

При включенні обробки події (натисканні на кнопці панелі інструментів зі скриптом обробки події), виконується блок коду скрипта, розміщений перед командою встановлення обробки події %Events...). Так от, прохання: чи можна зробити так, щоб блок коду, розміщений перед командою встановлення обробки події, запускався ще й при виключенні обробки події (відтисканні кнопки) :oops: Адже є функція @ToolbarButtonState Toolbarname.Buttonname, результат якої взнаєм чи кнопка включилась, чи виключилась?
Необхідність вирішення питання - забезпечити гарантований запуск певної скриптової процедури (перед збереженням змін в карті чи закритті карти, чи закритті програми), якщо в сеансі роботи з картою була включена обробка події з кнопки, хоче того користувач чи не хоче. Справа в тому, що ця певна процедура має виконувати обов'язкові дії з усім набором об'єктів, кожен з яких (об'єктів), в свою чергу, має бути оброблений скриптом обробки події зміни об'єкта.

Так, є обробщики подій %Events.OnFileClose, %Events.OnFileSave, %Events.OnShutdown, здавалося б - користуйся на здоров'я. Але вказана обробка подій відпрацьовує лише при включеній кнопці скрипта. А якщо користувач просто відтисне кнопку обробки події - :?:

Якщо така реалізація неможлива - дайте знати. Буду щось придумувати інше.


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Запрос на функцию
СообщениеДобавлено: 14 июн 2013 12:46 
Гуру
Гуру

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

- є команда З'єднати (об'єднує всі позначені об'єкти в один) - внутрішнє ім'я функції spbJoin;
- є команда Складний полігон (створює комплексний об'єкт, що через розрив, містить всі внутрішні об'єкти) - внутрішнє ім'я функції spbCombine.

Протилежна за дією команда - лише одна Розділити (розбиває об'єкт, що складається з декількох частин, розділених прикметою розрива, на окремі об'єкти) - внутрішнє ім'я функції spbSplit. Але вказана функція не тільки розбиває збірний об'єкт на окремі об'єкти, але розбиває і складні (комплексні) полігони.

Таким чином, якщо в карті є один полігональний об'єкт, що складається з багатьох частин (контурів), а контура, в свою чергу зібрані як комплексні полігони, при роз'єднанні об'єкта на контура отримуєм накладки полігонів і неправильну площу, а ще - мороку з наступним створенням комплексних полігонів по всій карті.

Потрібна пара протилежних за дією команд. Інакше, функцію spbSplit треба дописати так, щоб вона розбивала лише збірний об'єкт, не чіпаючи комплексні об'єкти.


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Запрос на функцию
СообщениеДобавлено: 15 июн 2013 00:05 
Специалист
Специалист

Зарегистрирован:
01 дек 2010 08:22
Сообщения: 36
Питання не по темі, але, що таке "внутрішнє ім'я функції" і де воно використовується?


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Запрос на функцию
СообщениеДобавлено: 15 июн 2013 08:18 
Гуру
Гуру

Зарегистрирован:
06 июн 2010 06:35
Сообщения: 823
Откуда: Ліспроект Володимир Вовчанський
Pavel_Lutsenko писал(а):
Питання не по темі, але, що таке "внутрішнє ім'я функції" і де воно використовується?
Скриптова функція @ExecuteMenu InternalName - виконує будь-який пункт меню або команду кнопки за їхнім внутрішнім ім'ям.

Тобто: внутрішнє ім'я функції - це ім'я функції в програмі, що буде запущена при натисканні кнопки або вибору пункта меню. Наприклад:
- натискання кнопки Изображение на вкладці правка правої панелі Digitals - в скрипті може бути записано як рядок [ Операції з об'єктами.Розділити ] (назва кнопки), або як рядок @ExecuteMenu spbSplit (spbSplit - внутрішнє ім'я кнопки)
- натискання кнопки Изображение на вкладці правка правої панелі Digitals - в скрипті може бути записано як рядок [ Операції з об'єктами.Розділити ] (назва кнопки), або як рядок @ExecuteMenu spbFragments (spbFragments - внутрішнє ім'я кнопки).

З прикладу, я не бачу різниці в назвах кнопки :? , зате функції - різні. Через це використовую в скриптах "внутрішнє ім'я функції", а не назви кнопок.

Загалом, натискання на кнопку або вибір пункта меню - для програми це означає: виконати функцію.


Вложения:
spbFragments.JPG
spbFragments.JPG [ 954 байт | Просмотров: 10352 ]
spbSplit.JPG
spbSplit.JPG [ 1013 байт | Просмотров: 10352 ]
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Запрос на функцию
СообщениеДобавлено: 15 июн 2013 10:28 
Специалист
Специалист

Зарегистрирован:
01 дек 2010 08:22
Сообщения: 36
А як дізнатись внутрішнє ім'я того пункту меню, який мене цікавить? Щось я такої інформації не можу знайти у самій програмі :?:


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Запрос на функцию
СообщениеДобавлено: 15 июн 2013 10:34 
Гуру
Гуру

Зарегистрирован:
06 июн 2010 06:35
Сообщения: 823
Откуда: Ліспроект Володимир Вовчанський
Статусний рядок при виборі команди зі списку у вікні редагування скрипта.


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Запрос на функцию
СообщениеДобавлено: 15 июн 2013 10:37 
Специалист
Специалист

Зарегистрирован:
01 дек 2010 08:22
Сообщения: 36
Дякую за вичерпну відповідь!


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Запрос на функцию
СообщениеДобавлено: 16 июн 2013 13:56 
Гуру
Гуру

Зарегистрирован:
14 окт 2010 16:40
Сообщения: 265
добрый день. для точечного объекта через функцию @Map.ParentObject Number [ParentLayer] не возвращается номер родительского объекта.


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Запрос на функцию
СообщениеДобавлено: 16 июн 2013 14:28 
Гуру
Гуру

Зарегистрирован:
06 июн 2010 06:35
Сообщения: 823
Откуда: Ліспроект Володимир Вовчанський
Denidz писал(а):
добрый день. для точечного объекта через функцию @Map.ParentObject Number [ParentLayer] не возвращается номер родительского объекта.
В мене - повертається:
Код:
$A=@Map.SelectedObject
$B=@Map.ParentObject $A ID81264000
@Dialog.Message Батьківський об'єкт для позначеного об'єкта - $B
де, в функції @Map.ParentObject ID81264000 - ID шару, об'єкт з якого визначається як батьківський для позначеного об'єкта $A в шарі стилю пікет чи одиночний знак.


Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Запрос на функцию
СообщениеДобавлено: 16 июн 2013 16:18 
Гуру
Гуру

Зарегистрирован:
14 окт 2010 16:40
Сообщения: 265
птьфу, пардоньте, указал пустой слой для родительских объектов (ошибся на один 0 когда ID вводил)


Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 1369 ]  На страницу Пред.  1 ... 46, 47, 48, 49, 50, 51, 52 ... 92  След.

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


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 331


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

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