Foxtable(狐表)用户栏目专家坐堂 → 带条件的背景样式,为什么不对?(完美解决)


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

主题:带条件的背景样式,为什么不对?(完美解决)

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


加好友 发短信
等级:四尾狐 帖子:867 积分:6210 威望:0 精华:0 注册:2012/11/24 20:44:00
带条件的背景样式,为什么不对?(完美解决)  发帖心情 Post By:2013/4/5 13:54:00 [显示全部帖子]

想实现效果:如下图,几列数据中,当比率小于30%时,背景红色,小于50%时,背景黄色,否则背景无(即白色),首先设立了2种样式(在界面中设置的,俺还不会用代码设置样式),名为:clr,cly,然后在表的DateChanged中写入代码:
Select Case e.Col.Name
    Case
"回款占总应收比率
"
         if e.datarow(
"回款占总应收比率")>0.5 then ‘比率大于50%时无背景颜色
             e.style=isnothing
         elseif e.datarow("回款占总应收比率")>0.3 then ’比率大于30%时背景样式为黄色
             e.style="cly"  ‘比率小于30%时背景样式为红色
         else e.style="clr“
     end if
end if
  Case "回款占总应收比率"
         if e.datarow("确认收入占总应收比率")>0.5 then‘比率大于50%时无背景颜色
             e.style=isnothing
         elseif e.datarow("确认收入占总应收比率")>0.3 then’比率大于30%时背景样式为黄色
             e.style="cly"‘比率小于30%时背景样式为红色
         else e.style="clr“
     end if
end if
End Select
 


此主题相关图片如下:bilu.png
按此在新窗口浏览图片

[此贴子已经被作者于2013-4-6 20:15:49编辑过]

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


加好友 发短信
等级:四尾狐 帖子:867 积分:6210 威望:0 精华:0 注册:2012/11/24 20:44:00
回复:(FoxMan)窗口Table与数据标记如果窗口Table是...  发帖心情 Post By:2013/4/5 14:23:00 [显示全部帖子]

 我也在帮助中看到了这段,可是,我这个表不是在窗口中,是直接的一个数据表,如何弄?

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


加好友 发短信
等级:四尾狐 帖子:867 积分:6210 威望:0 精华:0 注册:2012/11/24 20:44:00
回复:(FoxMan)if e.Col.Name = "回款占总应收比率"...  发帖心情 Post By:2013/4/5 15:12:00 [显示全部帖子]

谢谢,完美解决。

不过感觉代码有点多,能不能精简使得运行更快点呢?

If e.col.Name = "回款占总应收比率" Then
    If e.Row.IsNull("回款占总应收比率") = False  
        If e.Row("回款占总应收比率") < 0.3  Then
            e.Style = "clr"
                ElseIf e.Row("回款占总应收比率") < 0.5  Then
                    e.style ="cly"
                        ElseIf e.Row("回款占总应收比率") < 0.7  Then
                            e.style ="clb"
                            End If
                    End If
               End If

If e.col.Name = "回款占应收比率"  Then
    If e.Row.IsNull("回款占应收比率")=False  
        If e.Row("回款占应收比率")  < 0.3 Then
            e.Style = "clr"
                ElseIf e.Row("回款占应收比率") < 0.5 Then
                    e.style ="cly"
                        ElseIf e.Row("回款占应收比率") < 0.7 Then
                            e.style ="clb"
                            Else e.style =""
                            End If
                    End If
               End If
[此贴子已经被作者于2013-4-6 20:38:36编辑过]

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


加好友 发短信
等级:四尾狐 帖子:867 积分:6210 威望:0 精华:0 注册:2012/11/24 20:44:00
  发帖心情 Post By:2013/4/7 9:24:00 [显示全部帖子]

这句如何精简?

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


加好友 发短信
等级:四尾狐 帖子:867 积分:6210 威望:0 精华:0 注册:2012/11/24 20:44:00
回复:(blackzhu)说的好 ,现在的电脑 速度都很好,所...  发帖心情 Post By:2013/4/7 12:21:00 [显示全部帖子]

OK,谢谢各位大师们,明白了

 回到顶部