以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]能否在数据表的照片列中直接显示人员头像? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=50062) |
-- 作者:智友软件工作室 -- 发布时间:2014/4/28 19:54:00 -- [求助]能否在数据表的照片列中直接显示人员头像? 如题 |
-- 作者:有点甜 -- 发布时间:2014/4/28 19:57:00 -- 直接在单元格显示?这个就需要编写drawcell事件了。
参考 http://www.foxtable.com/help/topics/2387.htm
|
-- 作者:jaegea -- 发布时间:2014/4/28 20:15:00 -- Dim r As Row = CurrentTable.Current Dim pic As Image = GetImage(相片路徑) Dim rg As C1.Win.C1FlexGrid.CellRange = CurrentTable.Grid.GetCellRange(r.Index+1, CurrentTable.Cols(“相片顯示列”).Index+1, r.Index+1, CurrentTable.Cols(“相片顯示列”).Index+1)
其中的+1為行標題層次及行號列,行標題2層就要+2,以此類推。 [此贴子已经被作者于2014-4-28 20:20:48编辑过]
|
-- 作者:有点甜 -- 发布时间:2014/4/28 20:26:00 -- 3楼这样也可以,不过,这种不会重绘,如果你对表进行了筛选等操作之后,需要重新设置一遍。
Dim o As Objec = Tables("表A").grid.GetCellRange(2,3,2,3) |
-- 作者:智友软件工作室 -- 发布时间:2014/4/28 20:26:00 -- 二楼帮助例子看过 帮助的例子是同一个图片 不知如何去对应每一个人员的头像绘制 三楼 一是代码没看懂 二是不知放在哪个事件中
|
-- 作者:有点甜 -- 发布时间:2014/4/28 20:31:00 -- 以下是引用智友软件工作室在2014-4-28 20:26:00的发言:
二楼帮助例子看过 帮助的例子是同一个图片 不知如何去对应每一个人员的头像绘制 三楼 一是代码没看懂 二是不知放在哪个事件中
你一行里面不是有一个图片列么?直接这样写,就可以了的。
If e.Col.Name = "图片" Then e.Graphics.DrawImage(getImage(e.row("图片")), e.x + 3,e.y + 3) \'绘制第一个图标 End If
|
-- 作者:jaegea -- 发布时间:2014/4/28 20:33:00 -- 代碼放在數據加載完之後,比如在加載按鈕裡加上以下代碼 With Tables("員工信息表") For Each r as row in .Rows Dim pic As Image = GetImage(r(“相片地址列”)) \'得本機地址局域網地址,如果是FTP網絡地址可以先下載至本機 Dim rg As C1.Win.C1FlexGrid.CellRange = .Grid.GetCellRange(r.Index+1, .Cols(“相片顯示列”).Index+1,r.Index+1, .Cols(“相片顯示列”).Index+1) Next End With 採用的是C1的單元格背景圖繪製 [此贴子已经被作者于2014-4-28 20:38:26编辑过]
|
-- 作者:有点甜 -- 发布时间:2014/4/28 20:34:00 -- 3楼的代码,是需要你循环一次,去设置的,可以放在一个按钮里,或者afterOpenProject事件,代码类似
For Each r As Row In Tables("xxx").Rows Dim o As Objec = Tables("xxx").grid.GetCellRange(r.Index+1, 3, r.Index+1, 3) Next [此贴子已经被作者于2014-4-28 20:34:06编辑过]
|
-- 作者:智友软件工作室 -- 发布时间:2014/4/28 20:52:00 -- 显示的图片 [此贴子已经被作者于2014-4-28 20:57:06编辑过]
|
-- 作者:智友软件工作室 -- 发布时间:2014/4/28 20:55:00 -- 6楼比较好理解,现在可以了。 e.x + 3,e.y + 3 这个参数是什么意思呢? |