Клик по карте

0 голосов
спросил 29 Авг, 07 от DigiMax (560 баллов) в категории Программные продукты Esri
Добрый день!!!
Не подскажете, каким образом можно отловить клик мышкой на каком-нибудь Symbol? При этом нужно знать на каком именно Symbol был клик.
Заранее спасибо!!!

10 Ответы

0 голосов
ответил 29 Авг, 07 от new_sergei (2,660 баллов)
Добрый день!!!
Не подскажете, каким образом можно отловить клик мышкой на каком-нибудь Symbol? При этом нужно знать на каком именно Symbol был клик.
Заранее спасибо!!!
 

Самое простое, что напрашивается – это обработать всё дело путём сравнения координат в событии OnClick(). У интерфейса ISymbol есть метод QueryBoundary(). Через него выходишь на интерфейс IGeometry, ну а там уже получить координаты своего символа легко (используя IEnvelope).

0 голосов
ответил 29 Авг, 07 от DigiMax (560 баллов)
Спасибо за оперативный ответ!!!Smile
0 голосов
ответил 30 Авг, 07 от DigiMax (560 баллов)
А ещё вот такая проблема...

Есть ли возможность выводить всплывающее окошко по какому нибудь объекту слоя, содержащее в себе информацию, которая изменяется, но которая не прописана в источнике данных для слоя, с помощью контрола MapTips?

Например, слой содержит в себе города, информацию о них. HeaderFormatString для контрола MapTips берётся из базы данных - название города, к примеру,"{NAME_RUS}".
К примеру, надо выводить информацию либо о населении, либо о среднем доходе(через св-во BodyFormatString). Эта информация получается с Web сервиса в каждом конкртетном случае разная. В приложении эта информация определна однозначно при каждом PostBacke - запросом с Web сервиса по конкретному городу(или по всем городам - возвращается список с информацией по каждому городу). На основе этой информации можно сформировать строку для каждого города. Можно как нибудь реализовать такое, чтобы выводилась эта строка, соответствующая городу, в качестве подсказки для конкретного города? Т.е. как можно указать соответствие между городом - записью в базе данных и строкой, которая сфомирована для данного города? При PostBacke страницы строка может измениться и соответственно нужно что то переформировывать. Возможно ли вообще реализовать такой функционал, и если невозможно, то как ещё можно решить подобную задачу?
    
0 голосов
ответил 30 Авг, 07 от AndreyL (5,420 баллов)
А как вообще отловить клик по карте? Как перехватить событие OnClick()? У каких объектов есть такое событие?
0 голосов
ответил 30 Авг, 07 от DigiMax (560 баллов)
А как вообще отловить клик по карте? Как перехватить событие OnClick()? У каких объектов есть такое событие?

    Такое событие есть у объекта MAP image
0 голосов
ответил 30 Авг, 07 от AndreyL (5,420 баллов)
А в каком интерфейсе? MAP поддерживает интерфейс IMap. Но там нет ни свойства, ни метода OnClick(). Как тогда до него добраться?
0 голосов
ответил 30 Авг, 07 от DigiMax (560 баллов)
А в каком интерфейсе? MAP поддерживает интерфейс IMap. Но там нет ни свойства, ни метода OnClick(). Как тогда до него добраться?


У экземпляра класса ESRI.ArcGIS.ADF.Web.UI.WebControls.Map есть событие - называется MapClick(), а не OnClick()
image
    
    
0 голосов
ответил 30 Авг, 07 от Alexander1 (32,520 баллов)
"Смешались в кучу кони, люди,
И залпы тысячи орудий слились в протяжный вой..."

М. Ю. Лермонтов, "Бородино".

"Давайте не будем нервничать и спокойно во всём разберемся!"

Следователь Борис Иванович Антонов (Георгий Бурков),
"Профессия - следователь".

О чём, вообще, речь идёт? О Desktop приложении, о Web Application?... Каким Tool клик делается?...


0 голосов
ответил 30 Авг, 07 от AndreyL (5,420 баллов)
Меня интересует Desktop, а, судя по справке и по ответу, MapClick это из  Web. А Desktop можно перехватить такое событие?
0 голосов
ответил 30 Авг, 07 от Alexander1 (32,520 баллов)
Добро пожаловать на сайт Вопросов и Ответов, где вы можете задавать вопросы по GIS тематике и получать ответы от других членов сообщества.
...