关于鸟瞰插件的一些事件问题

Posted by 蒋波涛 22 March,2009 Views (4)Comment

最近大家的问题几乎都集中在鸟瞰插件对象上,出现了许多问题,我专门开篇blog来集中讨论下这些问题。

第一,鸟瞰控件的原理是什么?很简单,利用主窗体控件上的触发的事件(并且这些事件由鸟瞰窗体的类监测),在鸟瞰控件上实现各种效果,因此,该插件编写的第一步是必须保证主窗体上的MapControl控件对象的确存在鸟瞰Form上,并且不为null。

第二,主窗体MapControl的相应事件是否能够被触发?比如ItemAdded事件只有在一个图层添加到MapControl才能触发,加载MXD数据并不会触发。ContentsCleared事件也只有在视图VIEW的内容被完全清空时才会触发。

因此,我建议诸位在这一节的阅读过程中,先暂时不要把代码写那么复杂,第一件事情就应该是在一个单独窗体上监测hook所指的MapControl的事件是否被触发,然后再来考虑主地图与鸟瞰地图的互动问题。

不过话说回来,事件这个内容,对初学者而言,的确不那么好理解和使用,如果实在了解不了,可以先放下,等熟悉了再重新看看,说不定有新的发现和理解。

Related Items

Categories : 著作出版 Tags : 作者著作  
Comments
2009-4-1 23:23:05

很奇怪
我用单工程测试 默认的TocControl的添加数据 每次都会触发ItemAdded事件 但是。。。
按你的书中的方法则很随机。。。
百思不得其解

Posted by hihikoo Gravatar Icon

2009-5-19 16:43:42

我使用时也发现 ItemAdded事件勾不上,其它事件能够勾上.
并且在正常运行模式下不能在鸟瞰控件中显示底图,但在调试单步情况下则能正常显示.

Posted by uplusplus Gravatar Icon

2009-7-9 14:41:30

我的情况同楼上2位一样,ItemAdded事件无法触发,看来是普遍现象了。不知道是否是第三方容器(控件)引起的。

Posted by isortie Gravatar Icon

2009-8-16 18:36:37

蒋老兄也给个具体的解决方案出来啥
看你书的,大多都是被学者,你说这么样,有多少初学者能理解嘛

Posted by XX Gravatar Icon

Leave a comment

Or, take a look at Archives and Categories

目录

存档