打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
grid 当前记录行 反色显示 总弄不成?解决方法
userphoto

2016.11.27

关注
grid 当前记录行 反色显示 总弄不成?!
我通过 seek 查找一个表 如果命中 则反色显示当前记录  

我再 grid1 的 AFTERROWCOLCHANGE事件里如下写
SQL code
LPARAMETERS nColIndexCURREC=RECN()this.setall("dynamicbackcolor","iif(recn()=CURREC,rgb(255,255,0),rgb(255,255,255))","column")   &&使当前记录变颜色*this.grid1.setfocus

提示 : 表达式无效 请使用有效表达式设置 dynamicbackcolor属性

SQL code
在AFTERROWCOLCHANGE事件中写入下面代码:this.setall("dynamicbackcolor","iif(this.activerow=recno,rgb(127,0,127),rgb(255,255,255))","column")this.setall("dynamicforecolor","iif(this.activerow=recno,rgb(255,255,255),rgb(0,0,0))","column")


这个则没有反色效果

------解决方案--------------------
如果是VFP7以上:

修改Grid的HighlightStyle、HighlightBackColor和HighlightForeColor值即可。
HighlightStyle设为2
HighlightBackColor设为“182,202,234”或你自定义一个喜欢的颜色 &&"0,128,255"
HighlightForeColor设为“0,0,0”或你自定义一个喜欢的颜色 &&"255,255,255"

------解决方案--------------------
如果是VFP6:

在 Grid 的 AfterRowColChange 事件中,写入如下代码

Lparameters nColIndex && 系统代码
Select (This.RecordSource)
lcCurrRec=Transform(Recno()) && 获取当前所在记录号(行)
This.SetAll("DynamicBackColor",'Iif(Recno()=&lcCurrRec.,Rgb(0,128,255),Rgb(255,255,255))',"Column") && 设置当前行背景色,满足条件为蓝色,不满足为白色
This.Refresh && 这个刷新必须要,不然不满足条件的记录所显示的高亮显示就不会退去 
------解决方案--------------------
问题出在:

rgb(255,255,0)必须用引号括起来,注意引号的嵌套

this.setall("dynamicbackcolor","iif(recn()=CURREC,'rgb(255,255,0)','rgb(255,255,255)')","column") 




另外:动态背景色应当在INIT事件中设置或者直接设置在表格的列中
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
关于GRID记录实现隔行变色的问题
vfp6.0表格控件(grid)技巧篇
如何在VFP表格控件中用颜色区分特定的记录?
Vfp中Grid的使用技巧
VFP表格的刷新问题
Visual FoxPro GRID中的條件格式設定
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服