标题:vfp中如何自动滚动显示grid的内容?
只看楼主
liyuezb
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2006-3-23
 问题点数:0 回复次数:2 
vfp中如何自动滚动显示grid的内容?

同时,可不可以做到根据一定条件控制一行单元格的颜色?

搜索更多相关主题的帖子: vfp grid 滚动 自动 
2006-03-23 22:29
zengxingye
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2006-2-24
得分:0 
自动滚动:比如说在 GRid的mouseenter事件(事件看你想让它什么时候自动滚动)中下面代码:
LPARAMETERS nButton, nShift, nXCoord, nYCoord &&这行本来就有的
thisform.grid1.DoScroll (1)
这样每当鼠标移进表格时都会自动滚一下.
控制一行的颜色可以在表格init事件中加入如下代码:
PUBLIC xx
xx=RECNO()
this.SetAll("dynamicbackcolor","iif(RECNO()=xx,RGB(255,255,0),RGB(255,255,255))","column")
表格的afterrowcolchange 事件中写
LPARAMETERS nColIndex
xx=RECNO()
this.Refresh
这样可以在当移到某行上来时,这行以黄颜色显示,当然,你可以在其它事件中让它变色,

2006-03-24 19:52
zengxingye
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2006-2-24
得分:0 
哦,你的意思是根据条件控制颜色,也是可以的,比方说我的库存表中就有下面语句,可以当某种产品有效期中有三个月了就自动变为红色:
this.column7.DynamicBackColor ="iif(input.cq<=ALLTRIM(STR(YEAR(DATE() +90)))+PADL(ALLTRIM(STR(MONTH(DATE()+90))),2,'0'),RGB(255,0,0),RGB(255,255,255))"
我这只是使这一行的7列的单元格变红色,如果要使整行都变红,就这样写:
this.SetAll("dynamicbackcolor="iif(input.cq<=ALLTRIM(STR(YEAR(DATE()+90)))+PADL(ALLTRIM(STR(MONTH(DATE()+90))),2,'0'),RGB(255,0,0),RGB(255,255,255))"
代码写在表格的init事件中
2006-03-24 19:58



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-52388-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016891 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved