难!难!!难!!!(300分)

  • 主题发起人 主题发起人 icegirl914
  • 开始时间 开始时间
I

icegirl914

Unregistered / Unconfirmed
GUEST, unregistred user!
系统功能如下:
主界面是一个线路图,主要功能是用户可以点击线路图里的开头等可以查看它的
信息(名称、厂名等)。

问题如下:

如何来画线路图?本来我打算把每个器件做成位图,再把图片放在IMAGE组件上,
这样可以通过TIMAGE的ONCLICK事件来查询该器件的基本信息,但是我发现做成位图
的器件放大时斜线不光滑,有棱角,如果用TCANVAS来画可以实现,但是这样画成的
线路图就是一张图,很难根据用户的点击来查询器件的信息。
 
>>>做成位图的器件放大时斜线不光滑,有棱角
那就不要用位图,用矢量图试试。
在Delphi中加入 GIFImage ,TIMAGE就可以支持*.jpg 和 *.gif 格式的。
 
可以考虑取用户点击时的鼠标位置。[:D]只做参考!
 
鼠标是不能控制的,因为客户还要求能缩放主界面
 
你把你的主界面用html做,用WebBrowser放置,用html控制会很好控制!
 
标准的GIS处理。
矢量图像的处理,如果你对GIS了解不多,可以用GIS的控件实现,如MapObject,MapX...
看来你的要求也不高,可以考虑自己写个类来实现简单矢量行的显示和缩放。
建立一个坐标系,每个对象(线路)都是有坐标(内部坐标)的,图形缩放但对象的坐标不变,只是
显示的坐标改变。你根据缩放的程度来从屏幕坐标转换得到当前鼠标的位置(内部坐标)
然后得到对象...

OK
 
我现在是想通过把所有的器件都做成图片如.ico,.bmp之类的,然后把图片放到TIMAGE组件上,
通来TIMAGE来控制每个图片
 
使用GIS技术,掌握Mapinfo、MapX开发
 
HTML我没有用过,而且客户要求可以根据他们自己的要求来定制线路图,这个问题真的很麻烦,
这会儿如果我再想不出什么方法,很有可能要被炒了.
 
计算鼠标点机的坐标相对于窗体的位置,可否
 
GIS这方面我用的很少,不过可以看看,只是现在时间紧的很,在没有找到解决,问题的方法之前
开发计划也写不了,而且老板催的紧,真的麻烦.头痛的要命
 
通过在TIMAGE组件上加图片可以解决控制的问题,比用鼠标点击的坐标来的方便
 
用1stclass的控件可以,看它的实例,是一幅五大洲的地图,选中哪个大陆板块,就会显示相关
洲的信息,应该符合你的要求,而且很省事
 
我也正在做同样得课题,能不能交流一下,我得手机:13874471410
 
多人接受答案了。
 
后退
顶部