На главную... Продукты | Технологии | Классификаторы | Проекты | Скачать | Цены| Форум | Статьи | Обучение | Контакты

Управление поведением "Акции"

Поиск  Пользователи  Правила  Войти
Форум » Настольные приложения » GIS ToolKit, GIS ToolKit Active, ГИС Конструктор для Windows
Страницы: 1
RSS
Управление поведением "Акции"
 
Здравствуйте господа разработчики!

В задаче написанной по технологии PanTask, при нажатии кнопки создаю "Акцию".
Вопрос, как сделать так, чтобы "акция" не реагировала на стандартные обработчики ГИС Карты до момента, когда будет такая необходимость.
----
Поясняю что нужно.
Нажимаю кнопку - создаётся форма с акцией. Пока я в форме, обработчики выбора объекта, создания выпадающего меня по клику мыши, реакция на клик карты и так далее не должен никак "перерыватся" функциями акции
Если я нажимаю кнопку на форме, акция должна работатьь в штатном режиме (выбирать объект, обрабатывать клики мышки, клавиатуры и так далее)

По сути нужна управляемая акция.


====================
Задача упрощается...
Вопрос, как управлять вот этим параметром
Код
function TInputAction.GetSelectObjectType: integer;
begin
  result := 0;
end;


Вызывается один раз при создании акции. Если вернут единицу выбор не сопровождается диалогом, если ноль сопровождается.
Нужно во время работы акции сначала "светить" диалог, а если нажата кнопка выбора объекта на карте - гасить его.
По хорошему нужно сгененрировать запрос ГИС Карты на вызов функции utsGetSelectObjectType, как это сделать  :?:
Изменено: KFF - 14.02.2014 21:38:42
Не тот глуп кто не знает, а тот, кто не знает где искать.
 
Насколько я понял, акция вызывается, но должна работать по разному в зависимости от логики прикладной задачи. Вы это можете организовать путем создания внутренних флагов, состояние которых будете отслеживать самостоятельно.
 
Андрей Владиславович, Вы всё правильно поняли, я так и работаю НО
суть вопроса в следующем:
Я нажал на кнопку => создалась акция.
ГИС Карта вызваля ряд экспортных функций и "успокоилась"
---------- тут акция работает по законам технологии PanTask --------------

после создания акции я отображаю форму на которой что-то делаю.... акция работает в штатном режиме !!!
Теперь, на моей форме я нажимаю кнопку (допустим выбор объекта) и скрываю форму (предварительно подписав статусную панель)

я могу выбрать объект кликом в диалоге "выбора объекта" кнопки "выбор"

это было описание работы....
Теперь о том что я спрашиваю...

Акция вызывает функцию utsGetSelectObjectType всего один раз при создании и запоминает как моей акции Выбирать объект с диалогом или без него, гдето в дебрях ГИС карты. Этот параметр я ей возвращаю:
0- с диалогом, 1-без диалога.
и ВСЁ, акция больше не спросит мою задачу как я хочу выбирать объект.

Собственно ВОПРОС: Специфика работы кнопки подразумевает стандартный выбор объекта(как в ГИС Карте) до тех пор, пока я не нажму ту "злощастную" кнопку на форме.
То есть, как организовать работу таким образмо, чтобы при создании акции, выбор объекта работал с диалогом (как в ГИС карте) , а при определённом "телодвижении" (нажатие на кнопку на моей форме) ГИС карта переопросила мою акцию вызвав повторно utsGetSelectObjectType и повторно запомнив мой параметр.

Надеяюсь правильно объяснился.
Если запутано - то вопрос звучит так: почему utsGetSelectObjectType вызывается один раз при создании, и как заставить ГИС Карту 2011 вызывать utsGetSelectObjectType повторно когджа мне надо .. или
как заставить ГИС Карту выбирать объект с диалогом, а в нужный мне момент без диалога.
Не тот глуп кто не знает, а тот, кто не знает где искать.
 
Задача прояснилась.
По нажатии на кнопку Вы ликвидируете старую "акцию" и создаете новую с нужным типов выбора объекта.
 
спасибо... я так и понял.
Жаль что невозможно управлять этим параметром.
Создание и удаление акции при нажатии на кнопку на форме, может происходить десяток (сотню раз за сеанс)
В таких гибких местах, я стараюсь не "играться" с созданием/удалением объектов подобных типов (Акции).
Постоянное "передёргивание", может привести к нестабильной работе и/или утечках памяти.
Не тот глуп кто не знает, а тот, кто не знает где искать.
Страницы: 1
Читают тему (гостей: 1)



© КБ Панорама, 1991-2024

Регистрируясь или авторизуясь на форуме, Вы соглашаетесь с Политикой конфиденциальности