以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 窗口DrawCell部份不执行 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=130244) |
-- 作者:nxhylczh -- 发布时间:2019/1/16 19:12:00 -- 窗口DrawCell部份不执行 窗口Sql表 窗口的afteload 事件中增加有 DataTables("录入凭证_Table2").AddUserStyle("样式1", Color.Snow , Color.Black) DataTables("录入凭证_Table2").AddUserStyle("样式2", Color.LightGray, Color.Black) Table2 表中的DrawCell事件中,Tables表中有一列“样式” 值为True和False e.StartDraw For i As Integer = 1 To 10 If i Mod 3 = 0 Then If i = 9 Then pn = Pens.Red Else pn = Pens.LightSlateGray End If Else pn = Pens.tan End If n = cint(e.Width / 11) \'获取单位宽度 e.Graphics.DrawLine(pn,e.x+i*n,e.y,e.x+i*n,e.y+e.Height) If e.Row.IsNull(e.Col.Name) = False Then e.text = "" e.Graphics.DrawString(cstr(GetDigit(e.Row(e.Col.name),8-i)),new Font("雅黑",9),Brushes.Black,e.x +(i+1/5)*n,e.Y + e.Height*1/5) End If Next |
-- 作者:有点甜 -- 发布时间:2019/1/16 20:06:00 --
执行这个e.Graphics以后,就无法设置e.style的。
你可以用e.Graphics画矩形,如 http://www.foxtable.com/webhelp/scr/1482.htm
|
-- 作者:nxhylczh -- 发布时间:2019/1/16 20:45:00 -- e.StartDraw If e.Row("样式")=True Then e.style="样式1" Else e.style="样式2" End If e.EndDraw DrawCell 中只留这一点 也不执行!
|
-- 作者:nxhylczh -- 发布时间:2019/1/16 20:55:00 -- 此主题相关图片如下:0a60bd2322a8fc3cbf27042a036ff4c.png 重新调了一下顺序 部分执行 但是 会变得非常 卡 |
-- 作者:有点甜 -- 发布时间:2019/1/16 20:57:00 -- 1、执行
If e.Row("样式")=True Then
e.style="样式1"
Else
e.style="样式2"
End If
2、如果还有,实例发上来测试。 |