Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共2 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:图片绘制在单元格,保持长宽比

1楼
9EQ98 发表于:2024/7/7 8:01:00

Select Case e.Col.Name 

    Case "Ico" 

        Dim 绘制列 As String = e.Col.Name

        If e.Row.IsNull(绘制列) = False Then

            e.StartDraw

            Dim File As String = ProjectPath & "\Images\" & e.Row(绘制列)

            File = File.Replace("/", "\")

            File = File.Replace("\\", "\")

            File = File.Replace("\\", "\")

            If FileSys.FileExists(File) = True Then

                Dim img As Image = GetImage(File)

                e.text = "" 'e.row(e.col.name) & "小时"

                e.Graphics.DrawImage(img, e.x + 1 , e.y + 1 , 16 , 16) ' e.Width - 24

            End If

            e.EndDraw

        End If

End Select


请问:如果保持图片的高度和宽度比,让图片不变形。例:宽度24,高度按比例自动缩放



DrawCell

在绘制单元格的时候执行,主要用于标记数据。
 
e参数属性:

Table: 准备绘制的表
Row: 准备绘制的行
Col: 准备绘制的列
Style: 指定自定义样式的名称,如果用默认的样式绘制单元格,无须设置Style属性。
Text: 字符型,获得或者设置要绘制的文本内容
Chart: 单元格图表
DrawChart:绘制单元格图表,参考:单元格图表 添加图表数据 使用线状图 使用柱状图 使用胜负图 几个示例 图表属性设置 单元格图表交互

因为DrawCell事件执行非常频繁,所以代码必须简洁,不可以有太耗时的复杂代码,也不能有显示对话框的代码,否则会出现死循环,切记切记。

2楼
有点蓝 发表于:2024/7/7 20:30:00
比如原图大小为:800 X 600

宽改为24,按比例就是 24 / 800 = 0.03,那么高度也同样缩小0.03不就行了,高度 = 600 * 0.03 = 18
共2 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .02539 s, 2 queries.