问题:
请教下,在PB9.0数据窗口中,选中某行,然后就高亮选中的那行。我用的代码是:
if GetRow() > 0 then
SelectRow(0,false)
SelectRow(GetRow(),true)
end if
if this.rowcount()=0 then
return
end if
但是这样的代码有个问题,比如我这个数据窗口只有3列,但是窗口又是比较大的话,在选中的那个行在数据列后面已经没有数据列了,但是那个高亮的颜色会一直延长,这样的话,就不是很美观,请问这个延长的高亮尾巴怎么去掉,谢谢。
我要的结果是高亮的时候就把选中的那行的有数据列的高亮,没有数据列的不要高亮。
方法一:
在DW的rowfocuschanged事件:
if currentrow > 0 then
this.selectrow(0,false) //清以前选中的行 或者 dw_control.SelectRow(0,False)
this.selectrow(currentrow,true) )//选中Row指定的行 或者dw_control.SelectRow(Row,True)
end if
方法二:
可以改数据窗口对象的前景色,背景色来完成
选择数据窗口对象的所有列,
text colr属性表达式中写 if(getrow()=currentrow(),rgb(255,255,255),rgb(0,0,0))
background color属性表达式中写 if(getrow()=currentrow(),rgb(64,0,128),rgb(255,255,255)))
本文参照http://www.qqgb.com/Program/PowerBuilder/PBwindows/Program_262901.html