hur.cn - 华软网

 热门搜索

还是grid中颜色的问题,请教

  作者:未知    来源:网络    更新时间:2018/7/4
对于同一列,怎么设置任意数量的行为红色(其他的行不变,还是黑色)
这段代码只能改变其中一行
dw_1.object.c.color='0~tif(getrow()='+string(dw_1.getrow())+',rgb(255,0,0),0)'
------华软网友回答------
dw_1.object.字段名.background.color = rgb(255,0,0)
这个时候关键的是要知道字段名称!
------华软网友回复------
to :wscft
全被你说对了
不给我一次回答别人问题的机会
呵呵!
------华软网友回复------
这个“任意”数量行如何定义?
------华软网友回复------
字段就是C啊,任意的意思是,程序读该列的每一行,发现有错误将对应行变为红色。

程序是:
for j=1 to dw_1.rowcount()
dw_1.object.c.color='0~tif(getrow()='+string(dw_1.getrow())+',rgb(255,0,0),0)'
next

例如一共有10行,循环到第2,5,8行时分别发现有错误,要变为红色,其他行颜色不变。用那段代码仅改变最后一行的颜色,即第8行的。
------华软网友回复------
你可以在数据窗口中加入一个自定义字段用来标志出现错误的行 sign 1 错误
                                                              不错误

这样的话 在
for j=1 to dw_1.rowcount()
dw_1.object.c.color='0~tif(getrow()='+string(dw_1.getrow())+',rgb(255,0,0),0)'
next
中根据出现错误的行 给sign 赋值
然后在数据窗口中 c  字段background.color 中的写上
if(sign = '1',rgb(255,0,0), rgb(0,0,0)) 表达式
或许不是最好的方法, 但估计能解决问题了
------华软网友回复------
更正:
你可以在数据窗口中加入一个自定义字段用来标志出现错误的行 sign 1 错误
                                                              0 (默认值)不错误

这样的话 在
for j=1 to dw_1.rowcount()
dw_1.object.c.color='0~tif(getrow()='+string(dw_1.getrow())+',rgb(255,0,0),0)'
next
中根据出现错误的行 给sign 赋值
然后在数据窗口中 c  字段background.color 中的写上
if(sign = '1',rgb(255,0,0), rgb(0,0,0)) 表达式
或许不是最好的方法, 但估计能解决问题了
------华软网友回复------
to:  fallingme(连连看也很快哦!) 
不好意思, 最近手里不忙, 就逛逛了哦 ~_~
------华软网友回复------
to: wscft(无欲则刚) 

不行的,我没有说清楚,这个窗口不止一列的
而且只能一行一行的判断


------华软网友回复------
dw_1.object.c.color='0~tif(getrow()='+string(dw_1.getrow())+',rgb(255,0,0),0)'
这句照我的理解,意思是
if getrow()='+string(dw_1.getrow()) then
dw_1.object.c.color=rgb(255,0,0)
else
dw_1.object.c.color=0
end if

但我不清楚else里最后一个0是什么意思,估计是恢复默认值(黑色)的意思。
因此我想问有没有一种颜色代码,使其颜色保持不变?这样第2行及第5行的颜色就不会恢复成黑色的了

当然有其他也行,只要能实现就行@_@
------华软网友回复------
先保存原颜色值,恢复时就用它就是了。
------华软网友回复------


------华软网友回复------
dw_1.object.c.color="0~tif(pos(',2,5,8,',','+string(getrow())+',')>0,rgb(255,0,0),0)"
其中2,5,8为指定的行      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。