Access VBA教程:Circle方法

Circle方法用于当Print事件发生时,在Report对象上画圆、椭圆或圆弧。

expression.Circle(flags, X, Y, radius, color, start, end, aspect)

expression   必需。返回“Applies To”列表中的一个对象的表达式。

flags  必需 Integer 型。

X  必需。Single 型值,表示圆、椭圆或圆弧的中心点的横坐标。所用的度量单位由 object参数所指定的 Report对象的 Scale属性(ScaleModeScaleLeftScaleTopScaleHeightScaleWidth)来确定。

Y  必需。Single 型值,表示圆、椭圆或圆弧的中心点的纵坐标。所用的度量单位由 object参数所指定的 Report对象的 Scale属性(ScaleMode,ScaleLeftScaleTopScaleHeightScaleWidth)来确定。

radius  必需。Single 型值,表示圆、椭圆或圆弧的半径。所用的度量单位由 object参数所指定的 Report对象的 Scale属性(ScaleMode、ScaleLeft、ScaleTop、ScaleHeight 和 ScaleWidth)来确定。默认情况下,以缇为单位度量距离。

color  必需 Long 型。Long 型值,表示圆轮廓的 RGB(红绿蓝)颜色。如果省略该参数,将使用ForeColor 属性的值。也可以使用 RGB函数或 QBColor函数来指定颜色。

start  必需 Single 型。当画圆或椭圆的一部分时,start参数指定了弧的起点位置(以弧度为单位)。start参数的默认值是 0 弧度。取值范围从 –2 pi 弧度到 2 pi 弧度。

end  必需 Single 型。当画圆或椭圆的一部分时,end参数指定了弧的终点位置(以弧度为单位)。end参数的默认值是 2 pi 弧度。取值范围从 –2π 弧度到 2 pi 弧度。

aspect  必需。Single 型值,表示圆的纵横比。默认值是 1.0,表示在任何屏幕上都是一个正圆(而不是椭圆)。

说明

只能在由报表节的事件属性或报表的 OnPage事件属性所指定的事件过程或宏中使用该属性。

当画圆或椭圆的某部分时,如果 start参数是负值,Circle方法将画一条到由 start参数所指定位置的半径,并将角度作为正值来看待。如果 end参数是负值,Circle方法将画一条到由 end参数所指定位置的半径,并将角度作为正值来看待。Circle方法总以逆时针方向(正向)来画图。

若要填充一个圆,请设置报表的FillColorFillStyle属性。只有封闭的图形才能进行填充。封闭的图形包括圆、椭圆和扇形,扇形的两端都由半径线相连。

当画扇形时,如果需要画一条 0 度的半径来形成一个直角的水平线部分,可以为 start参数指定一个非常小的负值(不要指定为 0)。例如,可以将 start参数指定为 -.00000001。

在语法当中可以忽略某个参数,但如果该参数后面还有下一个参数,就必须在语法中包括该参数的逗号。如果忽略的是末尾的参数,就不需要在指定的最后一个参数后加上逗号。

画圆、椭圆或圆弧时所用线条的宽度取决于DrawWidth属性设置。在背景上画圆的方式则取决于DrawModeDrawStyle属性的设置。

在应用 Circle方法时,CurrentX 和 CurrentY属性设为由 x 和 y参数指定的中心点。

VBA示例

下面的示例使用 Circle方法来画一个圆,然后在这个圆中创建一个扇形,并将它的颜色变为红色。

若要在 Microsoft Access 中试用该示例,请先创建一个新的报表。将“主体”节的 OnPrint属性设为 [事件过程]。在报表的模块中输入下列代码,然后切换到“打印预览”。


Private Sub Detail_Print(Cancel As Integer, PrintCount As Integer)
    Const conPI = 3.14159265359
    Dim sngHCtr As Single, sngVCtr As Single
    Dim sngRadius As Single
    Dim sngStart As Single, sngEnd As Single
    sngHCtr = Me.ScaleWidth / 2     ' Horizontal center.
    sngVCtr = Me.ScaleHeight / 2     ' Vertical center.
    sngRadius = Me.ScaleHeight / 3     ' Circle radius.
    ' Draw circle.
    Me.Circle(sngHCtr, sngVCtr), sngRadius
    sngStart = -0.00000001             ' Start of pie slice.
    sngEnd = -2 * conPI / 3             ' End of pie slice.
    Me.FillColor = RGB(255,0,0)     ' Color pie slice red.
    Me.FillStyle = 0                     ' Fill pie slice.
    ' Draw pie slice within circle.
    Me.Circle(sngHCtr, sngVCtr), sngRadius, , sngStart, sngEnd
End Sub

上页:Access VBA教程:BuildCriteria方法 下页:Access VBA教程:CloseConnection方法

Access VBA教程:Circle方法

Access VBA教程:CloseConnection方法 Access VBA教程:CloseCurrentDatabase方法
Access VBA教程:CodeDb方法 Access VBA教程:CompactRepair方法
Access VBA教程:ConvertAccessProject方法 Access VBA教程:CopyDatabaseFile方法
Access VBA教程:CreateAccessProject方法 Access VBA教程:CreateControl方法
Access VBA教程:CreateDataAccessPage方法 Access VBA教程:CreateEventProc方法
Access VBA教程:CreateForm方法 Access VBA教程:AddFromFile方法
Access VBA教程:AddFromGuid方法 Access VBA教程:CreateGroupLevel方法
Access VBA教程:CreateNewDocument方法 Access VBA教程:CreateNewWorkgroupFile方法
Access VBA教程:CreateReport方法 Access VBA教程:CreateReportControl方法
Access VBA教程:CurrentDb方法 Access VBA教程:CurrentUser方法
版权所有 © 中山市飞娥软件工作室 证书:粤ICP备09170368号