yjinf
路人甲
路人甲
  • 注册日期2004-09-20
  • 发帖数47
  • QQ
  • 铜币253枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:1669回复:4

请求支援

楼主#
更多 发布于:2004-10-11 17:52
数据库中的数据定时改变,数据与图形上的多边形区域邦定,随着数据的改变,图形上的多边形也需要改变不同的颜色.对这样的需求希望大家能给出不同的解决方案.谢谢
喜欢0 评分0
jeason
路人甲
路人甲
  • 注册日期2004-09-02
  • 发帖数15
  • QQ
  • 铜币174枚
  • 威望0点
  • 贡献值0点
  • 银元0个
1楼#
发布于:2004-10-11 22:55
<P>将从数据库中读出的数据先存储在缓存中,给程序加一个时钟控件,定时读数据库,看与缓存中的数据比较,如果发生了变化,就将你的图形的style改变</P><P>只是方案,我还没实现呢</P><P>我也在做这个,vc+mapx</P><P>希望以后多交流</P><P><a href="mailtxuejin_yang@163.com" target="_blank" >xuejin_yang@163.com</A></P>
举报 回复(0) 喜欢(0)     评分
yjinf
路人甲
路人甲
  • 注册日期2004-09-20
  • 发帖数47
  • QQ
  • 铜币253枚
  • 威望0点
  • 贡献值0点
  • 银元0个
2楼#
发布于:2004-10-12 09:06
<P>谢谢<b><FONT color=#000066>jeason</FONT></b></P><P><b><FONT color=#000066>我的思路是将数据源邦定到层的Datasets中,然后建立主题图,这样层上的图形就会因为不同的数据而以不同的颜色或形状表示出来.然后定时刷新Dataset就行了,这个方法可能不适合用在刷新要求太快的系统中,不过我感觉实现起来比较简单,</FONT></b></P><P><b><FONT color=#000066>不知大家还有什么别的思路没有,欢迎多多交流</FONT></b></P><P><b><FONT color=#000066>yjinf2002@163.com</FONT></b></P>
举报 回复(0) 喜欢(0)     评分
gis
gis
管理员
管理员
  • 注册日期2003-07-16
  • 发帖数15951
  • QQ
  • 铜币25345枚
  • 威望15368点
  • 贡献值0点
  • 银元0个
  • GIS帝国居民
  • 帝国沙发管家
  • GIS帝国明星
  • GIS帝国铁杆
3楼#
发布于:2004-10-12 11:20
<img src="images/post/smile/dvbbs/em01.gif" />
GIS麦田守望者,期待与您交流。
举报 回复(0) 喜欢(0)     评分
yjinf
路人甲
路人甲
  • 注册日期2004-09-20
  • 发帖数47
  • QQ
  • 铜币253枚
  • 威望0点
  • 贡献值0点
  • 银元0个
4楼#
发布于:2004-11-10 09:58
<P>好久没有来了,继续对这个问题进行讨论。</P><P>我现在为了实现最初所说的功能,建立了主题图,然后再定时器中使用CMapXDataset的Refresh();主题图的颜色或形状都随着属性值得改变而改变。这个功能已经实现。</P><P>现在我还需要随时了解每个空间对象的属性值到底是多少,如果某个属性值大于一个设定值后,我就要做别的处理。为了实现这个功能,我在定时器中CMapXDataset的Refresh();的后面,启动了一个线程,这个线程每次启动都调用CMapXDataset的Rows,读取数据集中每一行的指定字段的值,将这个值与设定值相比较,如果大于设定值,就进行其他处理,如报警等。这样做了后有问题,就是程序运行几十秒后,就会出现异常,报告某个层可能是只读,或某个文件不能访问。我怀疑可能是读取数据值得线程和定时器中刷新数据的CMapXDataset的Refresh();冲突造成的,但不知道该怎样解决,请大家给个思路,谢谢</P>
举报 回复(0) 喜欢(0)     评分
游客

返回顶部