| 网站首页 | 新闻 | 新书 | 专家 | 技巧 | 源码作品 | 工具/资源 | 商城 | 风采 | 留言 | 论坛 | 网址 | 承接 | 
您现在的位置: Access/Office中国 >> 技巧 >> Access >> 报表打印 >> 文章正文 用户登录 新用户注册
在Access报表中实现圆角的矩形         ★★★★
在Access报表中实现圆角的矩形
作者:tmtony『… 文章来源:google group 点击数: 本日:{$DayHits} 更新时间:2005-2-10 22:32:27

下面的代码可用于在报表实现圆角的矩形
调用方式:在报表的节的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

http://www.office-cn.net

 

文章录入:tmtony    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    专 题 栏 目
    最 新 热 门
    最 新 推 荐
    相 关 文 章
    [原创]在 Access 2000中
    ADP中如何用代码设置窗体
    移除报表预览窗口的Min/
    在VB中用代码打印ACCESS
    修改(破解)MDE(ADE)报表
    在 Access 2002 中更改报
    287437-ACC2002:当在 A
    Access数据有效性检查
    Access中使用快捷方式插
    ACCESS数据库中的中文报
    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)