标题:如何將表格中的奇數行和偶數行用不同的底色顯示
取消只看楼主
GEORGECHIN
Rank: 2
等 级:论坛游民
帖 子:43
专家分:16
注 册:2009-8-25
结帖率:62.5%
已结贴  问题点数:20 回复次数:10 
如何將表格中的奇數行和偶數行用不同的底色顯示
設計要求:表格是隨時刷新的,但不管表格如何刷新,記錄如何增減,如何排序,都要使表格中的奇偶行用兩種不同的底色顯示.即交替顯示.現在的問題是:
1.用RECN()%2=0來控制.當記錄按鍵值排序時,就會有多個記錄號為奇或偶數的排在一起,而不是按單偶分開顯示的.
2.用記錄中的順序號(字段)控制.篩選后也會同樣出現第一個問題.
我認為應該是要用表格的行來控制,可是表格的
111.rar (2.97 KB)
總行要用什麼函數或命令來統計呢.
搜索更多相关主题的帖子: 底色 表格 
2009-09-03 08:34
GEORGECHIN
Rank: 2
等 级:论坛游民
帖 子:43
专家分:16
注 册:2009-8-25
得分:0 
還是一樣啊,如果將兩個T中間的F過濾掉不就是有兩個T出現了嗎,所以用字段不行的,因為表格里的內容是隨機刷新的所以不能用字段來控制.
2009-09-03 15:01
GEORGECHIN
Rank: 2
等 级:论坛游民
帖 子:43
专家分:16
注 册:2009-8-25
得分:0 
2 4樓的方法可行.但是如果數據量大的話這個處理應該很慢哦.還有就是如果數據源是視圖的話,還沒有辦法增加字段,除非原表中就有這樣的字段.有沒有可以計算表格中活動行總數的函數,如果有,就很方便了.
2009-09-04 00:05
GEORGECHIN
Rank: 2
等 级:论坛游民
帖 子:43
专家分:16
注 册:2009-8-25
得分:0 
樓上的這位仁兄,ACTIVEROW是指光標所在的行吧,如果這樣,是不是有焦點才會計算呢?如果焦點不到的話還是不會刷新吧!篩選前用ERCN()也是不行的,因為記錄號的排序和索引的排序是沒有規律可尋的.隨時都有可能雙/單記錄號的兩記錄排在一起.

[ 本帖最后由 GEORGECHIN 于 2009-9-4 12:23 编辑 ]
2009-09-04 12:09
GEORGECHIN
Rank: 2
等 级:论坛游民
帖 子:43
专家分:16
注 册:2009-8-25
得分:0 
還有一個問題就是如果數據源是視圖的話,就非得轉成表才可以.不然字段加不進.
2009-09-04 14:08
GEORGECHIN
Rank: 2
等 级:论坛游民
帖 子:43
专家分:16
注 册:2009-8-25
得分:0 
回复 12楼 sd_tysd
試用,解決了!3Q!
2009-09-04 15:41
GEORGECHIN
Rank: 2
等 级:论坛游民
帖 子:43
专家分:16
注 册:2009-8-25
得分:0 
只要是用RECN()就不可能解決,因為要知道表中的資料是隨時刷新的(會用SET FILTER過濾),用ACTIVEROW參數是最簡單的方法.
2009-09-05 18:11
GEORGECHIN
Rank: 2
等 级:论坛游民
帖 子:43
专家分:16
注 册:2009-8-25
得分:0 
以下是引用sywzs在2009-9-6 05:31的发言:
我在15楼的回帖,经多次测试,效果比较理想,其中的“条件表达式”就是搂主要过滤的条件,正如楼上所说,希望搂主各个回帖的方法都测试一下。
1.表中的记录不是一次性筛选后就不再筛选。而是在很大量的数据表中按用户想要的方式筛选(提供了=,<>,<,>,$,<=,>=七種運算方式及與或連接方式),即用戶想要找什麼都可以通過篩選隨機查找(如附件),而不是一次性按某個表達式進行篩選.
2.隨時刷新記錄中的邏輯變量是可以達到效果,可是一經篩選就要重新用循環語句重新給值.對於數據量小來說,沒有什麼,只不過多幾條代碼,可是數據量大的時候(比如要在倉庫物料異動中找半年中的一筆異動資料,對於一個小工廠來說至少也
123.rar (384.54 KB)
有幾萬筆記錄,每次都要循上萬次,那應該不是理想的辦法.
3.用activerow控制是有在滾動mouse滾輪及表格右邊滾動條而出現全部成一種顏色的現象,但是只要表格一有焦點,馬上就能恢復到自己想要的效果.(當然,是什麼原因造成的,還不得而知)
2009-09-07 01:15
GEORGECHIN
Rank: 2
等 级:论坛游民
帖 子:43
专家分:16
注 册:2009-8-25
得分:0 
以下是引用sywzs在2009-9-7 05:22的发言:
所提的表达式不是固定的,每次都可以用新的表达式替换呀。把筛选条件表达式写成一个变量,用宏替换即可。
您的意思我還沒有理解透徹,我的意思是,數據源為兩個表共同所有的全部記錄,篩選只是提供給用戶按照自己想要的數據進行過濾,其過濾的條件是不知道的,他要通過什麼字段及聯合什麼字段過濾也是不知道的.如果客戶不想篩選了,按下取消篩選之后,數據又全部顯示.我知道可能建立一個帶變量的SQL視圖,但是只是變量是可選的.如果要用宏替換操作運算符,是不是意味著每次的篩選都要進行一次遠程視圖的生成動作?如果有可能,不知是否可以加我QQ:108088690,謝謝!
2009-09-07 08:53
GEORGECHIN
Rank: 2
等 级:论坛游民
帖 子:43
专家分:16
注 册:2009-8-25
得分:0 
1.在一個表生成后,其RECN()相對於記錄就是不變的?如果是,那我把RECN()=2和RECN()=4之間的過濾掉會出現什麼情況呢?是不是兩個非值的接著顯示?

2.不是用SELE篩選的,是用SET FILTER過濾的.因為篩選變量根本都不知道.那麼多的字段和記錄,誰也不知道用戶想要用什麼字段什麼變量什麼操作符進行過濾.

3.用ACTIVEROW就會在用MOUSE滾輪和表格滾動條時出現全部一種顏色.這個問題不知是啥原因.

4.加一字段然后每次過濾后都重新給值的方法是可行的,但是數據量大時,那是惡夢.

終上所述,我認為用表格的行控制才是對的,只是要解決第三個問題.解決的狐友請指點一下.
2009-09-08 22:00



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




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

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