以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]关于选定区域的颜色  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=41667)

--  作者:yokeishun
--  发布时间:2013/10/24 17:10:00
--  [求助]关于选定区域的颜色
设置了选定行的背景色和字体色,发现在显示上面有些不足:
1、只能在数据区域随便点一格,这时整行颜色才会变,但其实我这只是选定了一格。
    而真正点行号选定一行的时候,只有第一格的颜色会按设置变化,后面的都是默认的背景色,而且这种背景色很淡,有的电脑上几乎看不出区别。
2、点行号连续选择多行、情况和上面类似,看不出多选的样子,效果比较差。
3、点数据格选区域时,第一格那行颜色会变,但往下拖动选择时,整个区域只有左上角那格颜色是对的,其他又是那种很淡的背景色。

像了解下怎么改善,用什么语句设定选定格背景色,在什么事件触发比较好,谢谢!



--  作者:狐狸爸爸
--  发布时间:2013/10/24 17:21:00
--  

呵呵,你说的这个问题,在正常的显示器上不会有的,换个显示器吧


--  作者:yokeishun
--  发布时间:2013/10/24 17:23:00
--  
我在两台电脑上试过了。
--  作者:狐狸爸爸
--  发布时间:2013/10/24 17:29:00
--  

说明这两个显示器都不咋的了。


--  作者:shenyl0211
--  发布时间:2013/10/26 18:49:00
--  

你要设置选定区的背景色:

For Each dt As DataTable In DataTables
    \'设置表样式的背景色,网格线和行号的颜色在表样式中设置
    dt.SysStyles("Fixed").BackColor = Color.FromARGB(255,255,255,0) \'标题行,统一设为黄色,表示需要手工输入
    dt.SysStyles("Frozen").BackColor = Color.FromARGB(255,255,192,128) \'冻结区
    dt.SysStyles("Highlight").BackColor = Color.FromARGB(255,0,0,255) \'选定区
    dt.SysStyles("CurrentRow").BackColor = Color.FromARGB(255,255,128,255) \'当前行
    dt.SysStyles("Focus").BackColor = Color.FromARGB(255,255,128,255) \'焦点单元格
    dt.SysStyles("SelectedColumnHeader").BackColor = Color.FromARGB(255,255,128,255) \'选定列的列标题
    dt.SysStyles("SelectedRowHeader").BackColor = Color.FromARGB(255,255,128,255) \'选定行的行标题
\'    dt.SysStyles("Alternate").BackColor = Color.FromARGB(255,192,255,255) \'交替行,如果要使用单元格的背景色、批注,不要使用该设置
    dt.SysStyles("ModifiedCell").BackColor = Color.red \'已修改单元格
    dt.SysStyles("GrandTotal").BackColor = Color.PaleGreen \'总计行
    dt.SysStyles("Subtotal0").BackColor = Color.FromARGB(255,255,255,0) \'小计行0
Next