阅读:4677回复:14
如何实现选中对象的闪烁?!!
在B/S结构中,如何实现选中对象的闪烁?!!
B/S结构为:JAVASCRIPT+MAPXTREME |
|
1楼#
发布于:2004-04-15 13:38
hehe!
|
|
2楼#
发布于:2003-09-04 00:30
谢谢楼上兄弟,
不过,好象是C/S结构 [此贴子已经被作者于2003-9-4 0:32:07编辑过]
|
|
3楼#
发布于:2003-09-02 16:59
可以参照一下
在MapX中实现图元闪烁原码[由alice原创] MapX图元分三种类型: 1、线(Line),即miFeatureTypeLine 2、区域(Region),即miFeatureTypeRegion 3、点符号(Symbol),即miFeatureTypeSymbol 加入一个时钟控件,并在时钟控件中实现以下代码: procedure TMapFrm.tmFlashSelectTimer(Sender: TObject); var ft: CMapXFindFeature; lyr: CMapXLayer; bExist: Boolean; i: Integer; str: String; ds: CMapXDataset; begin bExist := False; for i := 1 to mapCity.Layers.Count do begin if mapCity.Layers.Item.Name = m_strSelLyr then begin bExist := True; break; end; end; if not bExist then begin tmFlashSelect.Enabled := False; MsgFrm := TMsgFrm.Create(Self); MsgFrm.m_strMsg := Format('图层[%s]信息不存在!',[m_strSelLyr]); MsgFrm.ShowModal; MsgFrm.Free; Exit; end; lyr := mapCity.Layers._Item(m_strSelLyr); ds := mapCity.Datasets.Add(miDataSetLayer, lyr ,EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam); lyr.Find.FindDataset := ds; lyr.Find.FindField := ds.Fields.Item[1]; str := Format('%d',[m_nSelID]); ft := lyr.Find.Search(str,EmptyParam); if ft.FindRC mod 10 <> 1 then begin tmFlashSelect.Enabled := False; MsgFrm := TMsgFrm.Create(Self); MsgFrm.m_strMsg := Format('单位点[%s]信息不存在!',[m_strCorpName]); MsgFrm.ShowModal; MsgFrm.Free; Exit; end; case ft.type_ of miFeatureTypeLine: begin if ft.Style.LineColor = miColorWhite then ft.Style.LineColor := miColorRed else ft.Style.LineColor := miColorWhite; end; miFeatureTypeRegion: begin if ft.Style.RegionColor = miColorGreen then ft.Style.RegionColor := miColorRed else ft.Style.RegionColor := miColorGreen; end; miFeatureTypeSymbol: begin if not m_bFlashSel then lyr.Selection.Replace(ft) else lyr.Selection.ClearSelection; m_bFlashSel := not m_bFlashSel; end; end; ft.Update(EmptyParam, EmptyParam); if not m_bCenter then begin m_bCenter := True; mapCity.CenterX := ft.CenterX; mapCity.CenterY := ft.CenterY; mapCity.Refresh; end; end; 我这里是把选中的图元实现闪烁,并把图元居中 实现图元闪烁的另一个方法: 假设图元原大小是20,改变后大小是15 if ft.Style.SymbolBitmapSize=20 then ft.Style.SymbolBitmapSize:=15 else ft.Style.SymbolBitmapSize:=20; ft.Update(EmptyParam, EmptyParam); ft是symbol类型的 |
|
|
4楼#
发布于:2003-08-29 22:32
上楼,你发了一则短信。
|
|
5楼#
发布于:2003-08-28 17:41
联系方式???
|
|
6楼#
发布于:2003-08-12 20:15
对不起,不是ARC里面实现的;
不过,实现闪烁与ARC没有太大的关系,纯粹是客户端编程实现! |
|
7楼#
发布于:2003-08-09 19:32
有人想了解吗?
|
|
8楼#
发布于:2003-08-08 14:02
这个东东已经解决了!!!
|
|
9楼#
发布于:2003-08-06 17:11
可以实现了!
|
|
上一页
下一页