以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  高亮行和列  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=188313)

--  作者:lesei
--  发布时间:2023/9/13 23:32:00
--  高亮行和列
如何高亮当前选中单元格所在的行和列?
--  作者:有点蓝
--  发布时间:2023/9/14 8:50:00
--  

drawcell事件:http://www.foxtable.com/webhelp/topics/0656.htm

 

If e.Row.index = e.Table.RowSel OrElse e.Col.index = e.Table.ColSel Then
    e.style = "样式1"
End If



--  作者:lesei
--  发布时间:2023/9/16 21:07:00
--  
我想高亮所选中单元格所在的行和列,按您写的代码做的,放在了全局表事件drawcell里。
但为什么显示效果跟预想的不一样啊?

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


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


--  作者:有点蓝
--  发布时间:2023/9/17 20:16:00
--  
AfterSelChange事件加上以下代码:
e.table.Refresh

另外不要在菜单里设置整行突出

--  作者:lesei
--  发布时间:2023/9/17 23:01:00
--  
您说:不要在菜单里设置整行突出,是啥意思?
--  作者:有点蓝
--  发布时间:2023/9/17 23:07:00
--  
帮助搜“整行突出
--  作者:lesei
--  发布时间:2023/9/19 21:43:00
--  
1.我在initialize事件里,通过globalhandler把drawcell的值设为了true。
2.在全局表事件drawcell里,写如下代码
if e.row.index = e.table.rowsel orelse e.col.index = e.table.colsel then
    e.style = "十字高亮行列"
end if
3.在afterselchange里,加入代码:
e.table..refresh
4.在部分表的表事件drawcell里,设定了自己表的显示规则。

问题:
在全局事件drawcell里设置的显示规则,对设置了个别drawcell事件的表,怎么不管用?
就是说,全局drawcell事件是十字高亮,但是在设置了个别drawcell事件的表里,十字高亮不起作用。

--  作者:有点蓝
--  发布时间:2023/9/19 21:57:00
--  
和其它事件不一样,因为绘制会有冲突,当同时有全局drawcell事件和表属性的drawcell事件,则只会处理表属性的drawcell事件
--  作者:lesei
--  发布时间:2023/10/11 15:35:00
--  
版主,按这个方法,行和列都高亮为绿色了。
但是,行列相交的焦点单元格的颜色不太明显,我想改为黄色(其余仍为绿色),请问怎么办?

--  作者:有点蓝
--  发布时间:2023/10/11 15:42:00
--  
再加一段代码,注意下面红字和之前不一样

if e.row.index = e.table.rowsel andalso e.col.index = e.table.colsel then
    e.style = "黄色样式"
end if