以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  选定行字体颜色  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=169604)

--  作者:cd_tdh
--  发布时间:2021/6/22 17:43:00
--  选定行字体颜色

老师,窗口中的sqlTable,设置了选定行的字体颜色为red,为什么焦点单元格的字体颜色没有变为红色呢?

 我用代码设置了选中区域的字体颜色都不行

 

With Tables("主窗口_Table1")
    .DataSource = dt4
    .Cols.Remove("发布机构","发布部门","类别","主题","通知部门","内容","登记状态","登记人","登记日期","备注")
    .DefaultRowHeight  = 25 \'所有行高
    .Cols("发布日期").TextAlign = TextAlignEnum.Center  \'发布日期列数据居中
    .grid.ScrollBars = 0 \'禁止滚动条,0 无 1 横向 2 纵向 3 横向纵向
    .DataTable.SysStyles("EmptyArea").BackColor = Color.White \'空白区背景色
    .DataTable.SysStyles("Alternate").BackColor = Color.Azure \'交替行颜色
    .DataTable.SysStyles("Highlight").ForeColor = Color.Red   \'选定行字体颜色
    .grid.Styles("EmptyArea").Border.Color = Color.White  \'表格边框颜色
    .grid.rows(0).height = 0  \'隐藏表头
End With

 


图片点击可在新窗口打开查看此主题相关图片如下:2222.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2021/6/22 17:45:24编辑过]

--  作者:cd_tdh
--  发布时间:2021/6/22 17:51:00
--  
测试只有设置焦点单元格字体颜色才有效
--  作者:有点蓝
--  发布时间:2021/6/22 19:43:00
--  
焦点单元格既然有独立的样式,当然也要另外设置的
--  作者:cd_tdh
--  发布时间:2021/7/6 9:27:00
--  

老师,为什么不设置焦点单元格样式,设置了选定行字体颜色无效呢?

.DataTable.SysStyles("Highlight").ForeColor = Color.Red   \'选定行字体颜色


--  作者:有点蓝
--  发布时间:2021/7/6 9:28:00
--  
焦点单元格要单独设置
--  作者:cd_tdh
--  发布时间:2021/7/15 16:37:00
--  

老师,还是有个问题,我单独设置了焦点单元格字体颜色后,鼠标不点击窗口表,有一列字体还是红色,这样就点丑,怎么解决?

With Tables("主窗口_Table1")
    .DataSource = dt4
    .Cols.Remove("发布机构","发布部门","类别","主题","通知部门","内容","登记状态","登记人","登记日期","备注")
    .DefaultRowHeight  = 25 \'所有行高
    .Cols("发布日期").TextAlign = TextAlignEnum.Center  \'发布日期列数据居中
    .grid.ScrollBars = 0 \'禁止滚动条,0 无 1 横向 2 纵向 3 横向纵向
    .Theme = "(none)"  \'清除表样式
    .grid.rows(0).height = 0  \'隐藏表头
    .grid.Styles("EmptyArea").Border.Color = Color.White  \'表格边框颜色
    .DataTable.SysStyles("CurrentRow").ForeColor = Color.Red   \'当前行字体颜色
    .DataTable.SysStyles("Focus").ForeColor = Color.Red   \'焦点单元格字体颜色
    .DataTable.SysStyles("EmptyArea").BackColor = Color.White  \'空白区背景色
    .DataTable.SysStyles("Alternate").BackColor = Color.Azure  \'交替行颜色
    \'.DataTable.SysStyles("CurrentRow").BackColor = Color.Transparent \'当前行背景颜色
    .Select(-1,-1) \'移除焦点行
End With

 


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

--  作者:有点蓝
--  发布时间:2021/7/15 16:46:00
--  
试试

With Tables("主窗口_Table1")
    .DataSource = dt4
    .Cols.Remove("发布机构","发布部门","类别","主题","通知部门","内容","登记状态","登记人","登记日期","备注")
    .DefaultRowHeight  = 25 \'所有行高
    .Cols("发布日期").TextAlign = TextAlignEnum.Center  \'发布日期列数据居中
    .grid.ScrollBars = 0 \'禁止滚动条,0 无 1 横向 2 纵向 3 横向纵向
    .Theme = "(none)"  \'清除表样式
    .Select(-1,-1) \'移除焦点行
    .grid.rows(0).height = 0  \'隐藏表头
    .grid.Styles("EmptyArea").Border.Color = Color.White  \'表格边框颜色
    .DataTable.SysStyles("CurrentRow").ForeColor = Color.Red   \'当前行字体颜色
    .DataTable.SysStyles("Focus").ForeColor = Color.Red   \'焦点单元格字体颜色
    .DataTable.SysStyles("EmptyArea").BackColor = Color.White  \'空白区背景色
    .DataTable.SysStyles("Alternate").BackColor = Color.Azure  \'交替行颜色
    \'.DataTable.SysStyles("CurrentRow").BackColor = Color.Transparent \'当前行背景颜色
.Refresh
End With

--  作者:cd_tdh
--  发布时间:2021/7/15 16:52:00
--  
这样,还是这种情况,这个是主窗口中的分区的一小部分,当鼠标点击了窗口中其他部分,前面一列字体是黑色,日期列还是红色
--  作者:有点蓝
--  发布时间:2021/7/15 16:58:00
--  
我测试没有问题,上传实例说明

可以试试到表AfterSelChange事件
e.table.Refresh

--  作者:cd_tdh
--  发布时间:2021/7/15 17:16:00
--  

老师,窗口的全局表enter事件这样写

With Tables("主窗口_Table1")
    .Theme = "(none)"  \'清除表样式
    .Select(-1,-1) \'移除焦点行
    .DataTable.SysStyles("CurrentRow").ForeColor = Color.Red   \'当前行字体颜色
    .DataTable.SysStyles("Focus").ForeColor = Color.Red   \'焦点单元格字体颜色
End With

leave事件这样写,

With Tables("主窗口_Table1")
    .Theme = "(none)"  \'清除表样式
    .Select(-1,-1) \'移除焦点行
    .DataTable.SysStyles("CurrentRow").ForeColor = Color.Black  \'当前行字体颜色
    .DataTable.SysStyles("Focus").ForeColor = Color.Black   \'焦点单元格字体颜色
End With

为什么离开的事件无效呢?

[此贴子已经被作者于2021/7/15 17:51:42编辑过]