在Access报表中实现圆角的矩形
来源:优易学  2011-12-9 17:31:46   【优易学:中国教育考试门户网】   资料下载   IT书店
 下面的代码可用于在报表实现圆角的矩形

  调用方式:在报表的节的Format事件或页的Page事件中调用

  'Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)

  ' RoundCornerBox 4000, 6000, 100, 200, 300, Me

  'End Sub

  原作者:未知

  翻译:tmtony(access/Office中国)

  创建一个新模块,添加如下代码

  Sub RoundCornerBox( _

  lngWidth As Long, _

  lngHeight As Long, _

  lngTop As Long, _

  lngLeft As Long, _

  lngRadius As Long, _

  rptReport As Report)

  Dim sngStart As Single

  Dim sngEnd As Single

  Dim dblPI As Double

  dblPI = 3.14159265359

   '左上角

  sngStart = 2 * dblPI * 0.25 ' Start of pie slice.

  sngEnd = 2 * dblPI * 0.5 ' End of pie slice.

  rptReport.Circle (lngLeft + lngRadius, _

  lngTop + lngRadius), _

  lngRadius, vbBlue, sngStart, sngEnd

  '上边线条

  rptReport.Line (lngLeft + lngRadius, lngTop)- _

  (lngLeft + lngWidth - lngRadius, lngTop)

   '右上角

  sngStart = 2 * dblPI * 0.000001

  sngEnd = 2 * dblPI * 0.25

  rptReport.Circle (lngLeft + lngWidth - _

  lngRadius, lngTop + lngRadius), _

  lngRadius, vbBlue, sngStart, sngEnd

  '右边线条

  rptReport.Line (lngLeft + lngWidth, _

  lngTop + lngRadius)- _

  (lngLeft + lngWidth, _

  lngTop + lngHeight - lngRadius)

   '右下角

  sngStart = 2 * dblPI * 0.75

  sngEnd = 2 * dblPI

  rptReport.Circle (lngLeft + lngWidth - _

  lngRadius, lngTop + lngHeight - lngRadius), _

  lngRadius, vbBlue, sngStart, sngEnd

  rptReport.Line (lngLeft + lngRadius, _

  lngTop + lngHeight)- _

  (lngLeft + lngWidth - lngRadius, lngTop + lngHeight)

   '左下角

  sngStart = 2 * dblPI * 0.5

  sngEnd = 2 * dblPI * 0.75

  rptReport.Circle (lngLeft + lngRadius, _

  lngTop + lngHeight - lngRadius), _

  lngRadius, vbBlue, sngStart, sngEnd

  '右边线

  rptReport.Line (lngLeft, lngTop + lngRadius)- _

  (lngLeft, lngTop + lngHeight - lngRadius)

  End Sub

责任编辑:小草

文章搜索:
 相关文章
热点资讯
资讯快报
热门课程培训