可能在敏感区创建窗口会更好些,如果图形过于复杂,Sniper兄的方法运行速度可能会降低很多。个人看法,欢迎讨论。
解决方案 »
- Moxa卡通讯难题
- VS2008 控制台程序执行慢
- 用vc可视化编程,是不是只能实现“对话框”的可视化编程呀? 好象vc与vb,delphi的可视化编程不太一样,象vb,delphi中,可以在窗体上加上按钮,表格
- [散分]谁知道央视世界杯中场结束时精彩回放进球背景音乐叫什么名字?
- 100分急求解决方案,在线等
- 请问下面这个错误是什么错误,我在编译dll是预见的。怎么办?
- ASSERT
- 请问网络蚂蚁是如何在ie工具栏上添加button的?
- 77分高分求解!!关于网络蚂蚁的编程问题!!!!!!!!!!???????
- 怎样使midi音乐循环播放?我用FOR调用MIDI播放子程序不行
- 用VC编制的'Regular DLL using shared MFC DLL'可否被PB调用?
- 关于cmapstringtostring
Sniper的方法简单易行,却会影响很关键的速度,
而且如果是像NetXray那样用线条表征链接和流量,
一旦鼠标经过直线便响应相关信息,颇为理想,
不知道哪位高手知道其实现细节?
请赐教!
在我提出的方案中,我只说了一个矩形,实际上可以实现一个基类CBase,包含判断鼠标位置在不在本敏感区进行判断等虚函数。然后由CBase导出各种敏感区的实现类,重载基类中的虚函数,比如矩形、椭圆、圆等,实现线段时比较麻烦,但原理是一样的,只是判断的算法不同。如果你有足够的耐心和时间,你也可以实现多边形等非规则的敏感区。接着实现一个CBase对象的链表。在鼠标移动时用坐标为参数调用相应方法就搞定了。
如果采用矩形区域,实现方法恐怕还需改进,应该考虑建立空间索引,以防止数据量太大时速度大幅度降低。
另外,昨天做了一个试验,想看看能够创建多少个窗口,结果在什么都没有运行的情况下共能创建16000多个窗口。想请教一下Windows的各种资源限制,哪位兄弟能够详细讲解一下?谢谢!
jansen zhu. (an opengl fan)