  | 
				VFP 愛用者社區 本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.   
				 | 
			 
		 
		 
	
		| 上一篇主題 :: 下一篇主題   | 
	 
	
	
		| 發表人 | 
		內容 | 
	 
	
		芝風
 
 
  註冊時間: 2006-08-09 文章: 45 來自: 台灣,巴西
  第 1 樓
  | 
		
			
				 發表於: 星期日 八月 13, 2006 9:33 pm    文章主題: 新手,已搜尋過資料庫和buffer,仍是找不到問題,只好大膽發問 | 
				     | 
			 
			
				
  | 
			 
			
				是這樣的,小弟接觸vfp大概也才一個月左右吧,之前自己用一用,覺得跟access很像,但是最近遇到一個問題,實在不知道如何解決,故上來發言,請大大解惑一下
 
 
資料庫enterprise,裡面一張資料表user_data
 
 
做了一個form,上有一個grid跟pageframe,grid跟pageframe裡面的資料都是按右鍵 data environment之後,選擇資料表user_data直接拖曳而成的
 
 
現在我想要在grid的afterrowcolchange事件中設定,讓在pageframe中的textbox能夠隨我在grid的指標改變而自動更新
 
 
可是我試過很多方法,都不成功,在form的init()中寫 use enterprise!user_data或是use user_data之後,grid欄就一片空白
 
 
可是我不寫,直接在grid的afterrowcolchange中寫 
 
with thisform.pagframe1.page1
 
 
   .txtbox.setfocus
 
 
endwith
 
 
執行之後,當我換行又會出現unkown member txtbox
 
 
 
我朋友則是說要像access一樣,設定一個buffer
 
 
OPEN DATABASE enterprise SHARED
 
 
SELECT 1
 
USE user_data SHARED ALIAS ud
 
=CURSORSETPROP("BUFFERING",5,"user_data")
 
GO TOP
 
 
 
SELECT ud
 
 
 
可當我這樣跑的時候,連執行都不能執行,直接出現一個訊息,no table is open in current area,debugger會指向「=CURSORSETPROP("BUFFERING",5,"user_data")」這一行
 
 
 
 
我一個星期都已經會這個問題所煩惱,以前在銀行實習用access的時候,都是先設一個database,就是buffer。然後更新刪除都在這個buffer中,確定要更改了,才用tableupdate
 
 
我實在不知道該怎麼設buffer,若是有大大能詳解,或是可以給個參考書籍,就真的是萬分感謝! _________________ 一籬一櫓一漁舟,一個艄公一釣勾 
 
一拍一呼還一笑,一人獨佔一江秋 
 
~清.紀昀~ | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		nelsonchuang
 
 
  註冊時間: 2003-09-04 文章: 564 來自: 臺灣
  第 2 樓
  | 
		
			
				 發表於: 星期一 八月 14, 2006 9:15 am    文章主題: 每一個輸入物件都有來源 | 
				     | 
			 
			
				
  | 
			 
			
				vfp跟其它的程式有點不太一樣哦!
 
它是有所謂的資料來源!
 
在vb中你可以設定
 
testform.text1.value="this is a test"
 
在vfp你除了可以這樣指定外,你還可以這樣指定
 
testvar="this is a test"
 
testform.text1.controlsource=testvar
 
你一定很奇怪,為什麼還會有這玩意....
 
這個也是vfp他比別人強的地方.
 
你可以把value當作是一個看得到的身體,而controlsource當作是靈魂...
 
我知道會有點抽象,但是你可以試著去改成
 
testvar="test is over"
 
再去看看testform.text1.value
 
他的值就變了,這...當然有玄機在...一般人通常會用物件.value=值 來設定
 
但我比較不喜歡這樣用!
 
這在你真的熟悉了vfp之後你會發現使用controlsource的好處.
 
好,我說了很多的廢話.但是有印象對你將來寫程式會有很大的助益
 
現在回到問題點.grid中有一個recordsource,一個recordsourcetype
 
請你先去查一下help如何使用.並且設定,此外,各個欄位也要設定controlsource
 
基本上這樣就可以看到你要的東西了! _________________ 大家好,請多指教 | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		芝風
 
 
  註冊時間: 2006-08-09 文章: 45 來自: 台灣,巴西
  第 3 樓
  | 
		
			
				 發表於: 星期一 八月 14, 2006 9:24 am    文章主題: Re: 每一個輸入物件都有來源 | 
				     | 
			 
			
				
  | 
			 
			
				 	  | nelsonchuang 寫到: | 	 		  vfp跟其它的程式有點不太一樣哦!
 
它是有所謂的資料來源!
 
在vb中你可以設定
 
testform.text1.value="this is a test"
 
在vfp你除了可以這樣指定外,你還可以這樣指定
 
testvar="this is a test"
 
testform.text1.controlsource=testvar
 
你一定很奇怪,為什麼還會有這玩意....
 
這個也是vfp他比別人強的地方.
 
你可以把value當作是一個看得到的身體,而controlsource當作是靈魂...
 
我知道會有點抽象,但是你可以試著去改成
 
testvar="test is over"
 
再去看看testform.text1.value
 
他的值就變了,這...當然有玄機在...一般人通常會用物件.value=值 來設定
 
但我比較不喜歡這樣用!
 
這在你真的熟悉了vfp之後你會發現使用controlsource的好處.
 
好,我說了很多的廢話.但是有印象對你將來寫程式會有很大的助益
 
現在回到問題點.grid中有一個recordsource,一個recordsourcetype
 
請你先去查一下help如何使用.並且設定,此外,各個欄位也要設定controlsource
 
基本上這樣就可以看到你要的東西了! | 	  
 
 
 
原來如此,謝謝指教
 
 
後來是自己全部重新做,直接用拉的,問題就都解決了…
 
 
但是vfp有一個特性實在很怪,就是當你對一個物件寫一些程式碼的時候,有問題而不能執行,你若把他comment起來,反而會出現其他的問題
 
 
這樣不是很怪嗎?我本來好好的部份能用,多的部份有問題把他comment起來,反而連原本的都有問題 _________________ 一籬一櫓一漁舟,一個艄公一釣勾 
 
一拍一呼還一笑,一人獨佔一江秋 
 
~清.紀昀~ | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		 | 
	 
 
  
  	 
	    
  	   | 
 	
您 無法 在這個版面發表文章 您 無法 在這個版面回覆文章 您 無法 在這個版面編輯文章 您 無法 在這個版面刪除文章 您 無法 在這個版面進行投票 您 無法 在這個版面附加檔案 您 無法 在這個版面下載檔案
  | 
   
  
		 |