grid 当前记录行 反色显示 总弄不成?!我通过 seek 查找一个表 如果命中 则反色显示当前记录 我再 grid1 的 AFTERROWCOLCHANGE事件里如下写SQL codeLPARAMETERS 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设为2HighlightBackColor设为“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事件中设置或者直接设置在表格的列中