| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4677 人关注过本帖
标题:如何將表格中的奇數行和偶數行用不同的底色顯示
只看楼主 加入收藏
GEORGECHIN
Rank: 2
等 级:论坛游民
帖 子:43
专家分:16
注 册:2009-8-25
结帖率:62.5%
收藏
已结贴  问题点数:20 回复次数:25 
如何將表格中的奇數行和偶數行用不同的底色顯示
設計要求:表格是隨時刷新的,但不管表格如何刷新,記錄如何增減,如何排序,都要使表格中的奇偶行用兩種不同的底色顯示.即交替顯示.現在的問題是:
1.用RECN()%2=0來控制.當記錄按鍵值排序時,就會有多個記錄號為奇或偶數的排在一起,而不是按單偶分開顯示的.
2.用記錄中的順序號(字段)控制.篩選后也會同樣出現第一個問題.
我認為應該是要用表格的行來控制,可是表格的
111.rar (2.97 KB)
總行要用什麼函數或命令來統計呢.
搜索更多相关主题的帖子: 底色 表格 
2009-09-03 08:34
Tiger5392
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:88
帖 子:2775
专家分:2237
注 册:2006-5-17
收藏
得分:3 
若增加一个字段存储逻辑记录号,是不是可以达到你的要求呢

感言:学以致用。 博客:http://www./blog/user14/65009/index.shtml email:Tiger5392@
2009-09-03 12:07
GEORGECHIN
Rank: 2
等 级:论坛游民
帖 子:43
专家分:16
注 册:2009-8-25
收藏
得分:0 
還是一樣啊,如果將兩個T中間的F過濾掉不就是有兩個T出現了嗎,所以用字段不行的,因為表格里的內容是隨機刷新的所以不能用字段來控制.
2009-09-03 15:01
sywzs
Rank: 10Rank: 10Rank: 10
来 自:辽宁
等 级:贵宾
威 望:15
帖 子:508
专家分:1725
注 册:2009-5-13
收藏
得分:3 
筛选后重新给这个逻辑字段赋值。
2009-09-03 15:10
sd_tysd
Rank: 5Rank: 5
等 级:职业侠客
威 望:1
帖 子:81
专家分:319
注 册:2009-7-23
收藏
得分:14 
如果在不排序和筛选状态下,在表格的方法程序的 init 添加下列代码
thisform.grid1.setall("dynamicbackcolor",'IIF(MOD(RECNO(),2)=0.,RGB(222,0,255),RGB(150,250,200))')

在排序和筛选状态下,在表格的方法程序的 AfterRowColChange 添加下列代码
thisform.grid1.setall("dynamicbackcolor",'IIF(MOD(thisform.grid1.activerow,2)=0,RGB(222,0,255),RGB(150,250,200))')

[ 本帖最后由 sd_tysd 于 2009-9-4 10:09 编辑 ]
2009-09-03 18:44
茵梦湖
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:31
帖 子:545
专家分:2180
注 册:2009-4-25
收藏
得分:0 
同意2楼和4楼, 用逻辑顺序号控制~
2009-09-03 23:04
GEORGECHIN
Rank: 2
等 级:论坛游民
帖 子:43
专家分:16
注 册:2009-8-25
收藏
得分:0 
2 4樓的方法可行.但是如果數據量大的話這個處理應該很慢哦.還有就是如果數據源是視圖的話,還沒有辦法增加字段,除非原表中就有這樣的字段.有沒有可以計算表格中活動行總數的函數,如果有,就很方便了.
2009-09-04 00:05
sd_tysd
Rank: 5Rank: 5
等 级:职业侠客
威 望:1
帖 子:81
专家分:319
注 册:2009-7-23
收藏
得分:0 
如果在不排序和筛选状态下,在表格的方法程序的 init 添加下列代码
thisform.grid1.setall("dynamicbackcolor",'IIF(MOD(RECNO(),2)=0.,RGB(222,0,255),RGB(150,250,200))')

在运行时 进行排序或筛选状态下,在表格的方法程序的 AfterRowColChange 添加下列代码
thisform.grid1.setall("dynamicbackcolor",'IIF(MOD(thisform.grid1.activerow,2)=0.,RGB(222,0,255),RGB(150,250,200))')

RGB(222,0,255),RGB(150,250,200) 是交替颜色,第2种方法颜色值按表格行变换颜色,不随记录数据变化。


[ 本帖最后由 sd_tysd 于 2009-9-4 10:17 编辑 ]
2009-09-04 10:13
GEORGECHIN
Rank: 2
等 级:论坛游民
帖 子:43
专家分:16
注 册:2009-8-25
收藏
得分:0 
樓上的這位仁兄,ACTIVEROW是指光標所在的行吧,如果這樣,是不是有焦點才會計算呢?如果焦點不到的話還是不會刷新吧!篩選前用ERCN()也是不行的,因為記錄號的排序和索引的排序是沒有規律可尋的.隨時都有可能雙/單記錄號的兩記錄排在一起.

[ 本帖最后由 GEORGECHIN 于 2009-9-4 12:23 编辑 ]
2009-09-04 12:09
sywzs
Rank: 10Rank: 10Rank: 10
来 自:辽宁
等 级:贵宾
威 望:15
帖 子:508
专家分:1725
注 册:2009-5-13
收藏
得分:0 
给表增加一个逻辑字段,比如叫 YS 吧,缺点是数据量大时慢了一点。
GO TOP
TT=.T.
SCAN
REPLACE YS WITH TT
TT=!TT
ENDSCAN
thisform.grid1.setall("dynamicbackcolor",'IIF(YS,RGB(250,250,200),RGB(255,255,255))')
GO TOP
thisform.grid1.Refresh
2009-09-04 13:38
快速回复:如何將表格中的奇數行和偶數行用不同的底色顯示
数据加载中...
 
   



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

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