Foxtable(狐表)用户栏目专家坐堂 → 窗口DrawCell部份不执行


  共有2236人关注过本帖树形打印复制链接

主题:窗口DrawCell部份不执行

帅哥哟,离线,有人找我吗?
nxhylczh
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:335 积分:2674 威望:0 精华:0 注册:2018/11/22 9:19:00
窗口DrawCell部份不执行  发帖心情 Post By:2019/1/16 19:12:00 [只看该作者]

窗口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

        If e.Row("样式")=True Then
            e.style="样式1"
        Else
            e.style="样式2"
        End If
        e.EndDraw

金额线能执行
设置行不同颜色不执行
执行后的图如下

图片点击可在新窗口打开查看此主题相关图片如下:b37523bc139b0eef7e69ce326fe6f21.png
图片点击可在新窗口打开查看




 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/1/16 20:06:00 [只看该作者]

 

执行这个e.Graphics以后,就无法设置e.style的。

 

你可以用e.Graphics画矩形,如 http://www.foxtable.com/webhelp/scr/1482.htm

 


 回到顶部
帅哥哟,离线,有人找我吗?
nxhylczh
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:335 积分:2674 威望:0 精华:0 注册:2018/11/22 9:19:00
  发帖心情 Post By: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
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:335 积分:2674 威望:0 精华:0 注册:2018/11/22 9:19:00
  发帖心情 Post By:2019/1/16 20:55:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:0a60bd2322a8fc3cbf27042a036ff4c.png
图片点击可在新窗口打开查看
重新调了一下顺序 部分执行 但是  
会变得非常 卡


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/1/16 20:57:00 [只看该作者]

1、执行

 

If e.Row("样式")=True Then
    e.style="样式1"
Else
    e.style="样式2"
End If

 

2、如果还有,实例发上来测试。


 回到顶部