代码中的形状

首先,如果你计划通过代码对形状进行操作,一定要在设计过程中指定每一个形状的Name属性。

这样我们就可以通过代码引用指定名称的形状,例如假定FaceShapes中有个名为"epf"的Ellipse,你可以通过下面的代码引用之:

Dim ggs As WinForm.Gauges = e.Form.Controls("Guages1")
ggs.RadialGauge.FaceShapes(
"epf").Visible = False

如果不指定名称,则只能通过序号获取:

Dim ggs As WinForm.Gauges = e.Form.Controls("Guages1")
ggs.RadialGauge.FaceShapes(
0).Visible = False

我们在设计过程可能会调整形状的位置,所以通过序号获取形状是不可靠的。

专用类型

如果你需要设置某个形状特有的属性,则要通过专用类型来引用形状。

Foxtable提供了以下类型:

GaugeRectangle  
GaugeSector  
GaugeSegment  
GaugeEllipse  
GaugeCaption  
GaugeImage

分别用于表示仪表中的以下形状:

Rectangle  
Sector  
Segment  
Ellipse  
Caption  
Image

例如给Rectangle的旋转角度增加20度,并向左移动0.1:

Dim ggs As WinForm.Gauges = e.Form.Controls("Guages1")
Dim
rct As GaugeRectangle = ggs.RadialGauge.FaceShapes("rc1")
rct.RotateAngle = rct.RotateAngle + 20
rct.Viewport.TranslateX = -0.1

再例如更换Image形状的图片:

Dim ggs As WinForm.Gauges = e.Form.Controls("Guages1")
Dim
rct As GaugeImage = ggs.RadialGauge.FaceShapes("img1")
rct.Image = GetImage(
"Accept.ico")

Shape很多,每个形状的属性也很多,我们不打算一一介绍,也没有一一介绍的必要性,凡是你在属性窗口能设置的属性,都可以通过代码来设置,而且属性名和枚举值都一样,更重要的是,Foxtable的代码编辑器会自动列出候选属性和枚举值供选择,完全不需要建议和学习的。

 

 


本页地址:http://www.foxtable.com/webhelp/topics/3922.htm