  | 
				VFP 愛用者社區 本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.   
				 | 
			 
		 
		 
	
		| 上一篇主題 :: 下一篇主題   | 
	 
	
	
		| 發表人 | 
		內容 | 
	 
	
		chinsavi
 
 
  註冊時間: 2004-05-03 文章: 9
 
  第 1 樓
  | 
		
			
				 發表於: 星期一 六月 14, 2004 12:26 pm    文章主題: 有無方法取得grid當時螢幕上第一筆的筆數或是指標所在grid螢幕 | 
				     | 
			 
			
				
  | 
			 
			
				或許是我講得不清楚
 
引起"先進"誤會我問的不必要
 
我主要的問題是...
 
原先指標是放於GRID顯示的最上筆 
 
但隨著翻頁及上下移動指標動作後,指標不一定在當時GRID顯示的最上筆
 
但是經過一些本人程序處理後,GRID又自動把指標是放於顯示的最上筆...雖然所在的筆數沒改變
 
我是希望指標回到原來的位置,
 
所以才希望得知有無方法取得grid當時螢幕上第一筆的筆數,或是指標所在grid螢幕上的筆數,以便使指標回到螢幕原來的位置 ,以合乎一般人的操作習慣 | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		elleryq
 
  
  註冊時間: 2007-06-21 文章: 768
 
  第 2 樓
  | 
		
			
				 發表於: 星期一 六月 14, 2004 8:36 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				local ln_oldrecno
 
ln_oldrecno=recno()   && save the position
 
*
 
* do something what you want.....
 
*
 
go ln_oldrecno  && restore the position
 
 
收工   --> 這裡不用照抄... | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		chinsavi
 
 
  註冊時間: 2004-05-03 文章: 9
 
  第 3 樓
  | 
		
			
				 發表於: 星期二 六月 15, 2004 10:18 am    文章主題: 很遺憾,沒有人看得懂我想要做什麼 | 
				     | 
			 
			
				
  | 
			 
			
				ellerq對不起,你還是不瞭解我的意思
 
recno()我當然知道是何用途
 
我要的不是在資料表格的筆數,
 
而是 grid顯示時從當時頁面從最上筆,數下來到指標所在的筆數
 
或許我表達能力太差ㄋ
 
希望有其他人看的懂的人可以幫忙 | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		chengsioieng
 
 
  註冊時間: 2004-05-31 文章: 35 來自: 澳門
  第 4 樓
  | 
		
			
				 發表於: 星期二 六月 15, 2004 10:53 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				| 你嘗試不要把grid refresh | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		an1060
 
 
  註冊時間: 2004-02-29 文章: 48 來自: 高雄
  第 5 樓
  | 
		
			
				 發表於: 星期二 六月 15, 2004 10:56 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				步驟如下: (自己寫程式碼)
 
1.取得目錄記錄指標 x_rec = RECNO(table名稱)
 
2.skip -(ThisForm.gird名稱.ActiveRow - 1) IN table名稱  &&就是目標ROW位置往上移回去至第一列
 
3.再用RECNO()取得第一列之record number
 
4.還原回第一步驟之記錄指標 GO x_rec IN table名稱 | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		chinsavi
 
 
  註冊時間: 2004-05-03 文章: 9
 
  第 6 樓
  | 
		
			
				 發表於: 星期二 六月 15, 2004 12:46 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				TO:AN1060
 
你文中:
 
2.skip -(ThisForm.gird名稱.ActiveRow - 1) IN table名稱 &&就是目標ROW位置往上移回去至第一列
 
"第一列"是指整個TABLE的第一列
 
而我需要的是"grid顯示時從當時頁面的最上筆"
 
是有不同的
 
 
 
TO:CHENSIOEIENG
 
對不起,我一定要REFRESH
 
因我GRID中的欄位CONTROLSOURCE都已更改ㄋ | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		syntech
 
 
  註冊時間: 2003-05-16 文章: 4252 來自: Taipei,Taiwan
  第 7 樓
  | 
		
			
				 發表於: 星期三 六月 16, 2004 9:38 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				VFP 的grid 是純種的data grid,
 
可以由recordsourcetype得知,
 
基本上都是由table 去決定 row,column.
 
因此, grid 的scope 是個private 屬性,
 
想由外部去控制似乎很困難.
 
 
實際上使用者是不會在乎畫面上的第一筆或是哪一筆等一下會有focus,
 
他們還是會自己找到要編輯的記錄,
 
很多時候都是程式設計人員自己想歪了. _________________ 如果公司有下列困擾:
 
1. 找不到便宜,快速,簡易的 生產排程軟體
 
2. 不知道如何快速排定 採購計劃
 
3. 成本抓不準,自己算比軟體算有用
 
4. 想學習系統規劃,想找系統架構的顧問
 
 
請聯絡我們,也許我們幫得上忙 | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		an1060
 
 
  註冊時間: 2004-02-29 文章: 48 來自: 高雄
  第 8 樓
  | 
		
			
				 發表於: 星期三 六月 16, 2004 2:04 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				你先去查一下gird.ActiveRow屬性的用途
 
我給你的第一列是Grid目前畫面中的第一列
 
TABLE的第一列是GO TOP
 
 
------------
 
我忘了補充一點
 
如果,目前記錄指標所指之RECNO不在目前所見之GRID內,亦即已超出目前
 
GRID可視範圍外,那對不起,我以上的方法無法使用.
 
 
其實你可以好好思考一下syntech在另一篇對你所回應的內容. | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		syntech
 
 
  註冊時間: 2003-05-16 文章: 4252 來自: Taipei,Taiwan
  第 9 樓
  | 
		
			
				 發表於: 星期三 六月 16, 2004 3:48 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				我也發現了 chinsavi 似乎搞錯了 activerow和activecolumn 的作用及作用範圍,
 
實際上它只能標示作用 cell 的 row 和 column 值,
 
若要存取記錄,也是利用 recno() (因為 record mark 會自動移動到 作用record 上,也就是作用 row 的那筆記錄)
 
 
但是畫面上 grid 的 srope 卻與 作用 cell 不見得有關係,
 
這點自行點選scroll bar 就會發現了,
 
實際上應該也已經發現了,
 
所以才會這樣問.
 
 
database 操作與陣列操作不太一樣,
 
之前公司的工程師作過一件無聊的事,
 
依index 順序把全table 的record number 存入 一個陣列中(因為不多),
 
這樣只要 activerow 能 mapping 到 array index ,
 
就能利用陣列值找出 record number,
 
然後 go rec_no[grid.activerow + x ],
 
移動到該筆記錄上
 
 
這種方式真的不好,
 
請注意. _________________ 如果公司有下列困擾:
 
1. 找不到便宜,快速,簡易的 生產排程軟體
 
2. 不知道如何快速排定 採購計劃
 
3. 成本抓不準,自己算比軟體算有用
 
4. 想學習系統規劃,想找系統架構的顧問
 
 
請聯絡我們,也許我們幫得上忙 | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		 | 
	 
 
  
  	 
	    
  	   | 
 	
您 無法 在這個版面發表文章 您 無法 在這個版面回覆文章 您 無法 在這個版面編輯文章 您 無法 在這個版面刪除文章 您 無法 在這個版面進行投票 您 無法 在這個版面附加檔案 您 無法 在這個版面下載檔案
  | 
   
  
		 |