Foxtable(狐表)用户栏目专家坐堂 → drawcell的样式可以直接代码定义吗


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

主题:drawcell的样式可以直接代码定义吗

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


加好友 发短信
等级:童狐 帖子:255 积分:2280 威望:0 精华:0 注册:2020/6/28 8:43:00
drawcell的样式可以直接代码定义吗  发帖心情 Post By:2024/5/15 12:04:00 [只看该作者]

如题,一定要建立一个样式才可以指定字体或者背景颜色吗?在代码中直接定义可以吗?

Select Case e.Col.name
    Case "DFM剩余天数"
        If e.Row.IsNull("DFM时间节点") = False Then'且该列已经输入内容
            Dim d1 As Date = e.Row("DFM时间节点")
            Dim d2 As Date = Date.Today
            Dim tp As TimeSpan = d1 - d2
            If tp.TotalDays > 0 Then
                
                
                e.Text = "剩余" & tp.TotalDays & "天"
                
            Else
                e.Text = "已脱期" & tp.TotalDays & "天"
               e.BackColor = Color.Red       (这个实际会出错,实现不了)

                
            End If 
            
        End If 
        
        
End Select

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


加好友 发短信
等级:狐精 帖子:3094 积分:20656 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2024/5/15 12:33:00 [只看该作者]


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


加好友 发短信
等级:超级版主 帖子:107147 积分:544978 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/5/15 13:31:00 [只看该作者]

一定要建立一个样式。不能直接在事件里设置的,没有1楼这种用法。

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


加好友 发短信
等级:童狐 帖子:255 积分:2280 威望:0 精华:0 注册:2020/6/28 8:43:00
  发帖心情 Post By:2024/5/15 15:13:00 [只看该作者]

但是,我的表格是窗口里的表格,直接使用SQL语句加载过来的,所以我不知道表的样式应该在哪里建立?

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


加好友 发短信
等级:狐精 帖子:3094 积分:20656 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2024/5/15 15:18:00 [只看该作者]

1、用代码自定义样式,代码写在窗口加载后哦
2、在菜单自定义样式,在窗口加载后调用样式应该也行啊
[此贴子已经被作者于2024/5/15 15:18:40编辑过]

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


加好友 发短信
等级:童狐 帖子:255 积分:2280 威望:0 精华:0 注册:2020/6/28 8:43:00
  发帖心情 Post By:2024/5/15 15:21:00 [只看该作者]

我就是想知道代码要怎么写,可以写个例子吗

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


加好友 发短信
等级:狐精 帖子:3094 积分:20656 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2024/5/15 15:24:00 [只看该作者]

2楼用代码自定义一个样式,其他就一样的了

第一步:在全局表DrawCell事件
DataTables("表A").AddUserStyle("样式1", Color.Red, Color.White)
For Each t As Table In Tables
    If t.Name = "表A" Then
        If e.Col.Name = "第二列" Then
            If e.Row("第二列") = 4 Then
                e.Style = "样式1"
            End If
        End If
    End If 
Next
第二步:在项目Initialize事件
DataTables("表A").GlobalHandler.DrawCell = True  '开启全局表事件

其他就根据你需求自己完善了吧

[此贴子已经被作者于2024/5/15 15:57:32编辑过]

 回到顶部