以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]自定义样式统一设置  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=194182)

--  作者:lgj716330
--  发布时间:2024/11/15 18:32:00
--  [求助]自定义样式统一设置
在项目AfterOpenProject事件中设置了以下代码
For Each t As DataTable In DataTables
    t.AddUserStyle("红色", Color.Red, Color.White)
    t.AddUserStyle("橙色", Color.Orange, Color.White)
    t.AddUserStyle("黄色", Color.Yellow, Color.White)
    t.AddUserStyle("绿色", Color.Green, Color.White)
Next

然后在全局表事件DrawCell中如下设置
Select Case e.Table.Name
    Case "测试数据","示例_Table1"
    If e.Col.Name = "本期销售" Then
        If e.Row.IsNull(e.Col.Name) = False Then 
            If e.Row("本期销售") < 80 Then
                e.Style = "橙色"
            End If
        End If
    End If
End Select

其中"测试数据"是项目固定的表,"示例_Table1"是窗口统计生成的,但上述设置对"测试数据"有效,对"示例_Table1"无效,不知什么原因。"示例_Table1"代码如下

Dim b As New SQLGroupTableBuilder("统计表1", "测试数据")
b.C
b.Groups.AddDef("年份")
b.Groups.AddDef("月份")
b.Totals.AddDef("本期销售")
b.Totals.AddDef("同期销售")
b.Build

Tables("示例_Table1").DataSource = DataTables("统计表1")

Dim t As Table = Tables("示例_Table1")
t.DataTable.GlobalHandler.DrawCell = True

[此贴子已经被作者于2024/11/15 18:54:31编辑过]