  | 
				VFP 愛用者社區 本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.   
				 | 
			 
		 
		 
	
		| 上一篇主題 :: 下一篇主題   | 
	 
	
	
		| 發表人 | 
		內容 | 
	 
	
		holycastle
 
 
  註冊時間: 2004-05-29 文章: 11 來自: 香港-大陸(兩邊走...)
  第 1 樓
  | 
		
			
				 發表於: 星期一 五月 31, 2004 12:29 am    文章主題: 點樣可以係個browse window可取得值呀~~ | 
				     | 
			 
			
				
  | 
			 
			
				你地好呀, 好多謝你地之前幫過我有關read events的問題
 
 
我le個外行人..又有問題想請教大家啦~~ 
 
 
我係個form入面, 利用 data environment 加入左個browse table, 但係我唔知點知做d咩先可以用mouse click這個 table 的 value就可以攞到這個value呀
 
 
你地可以教下我嗎~~~   | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		Ruey
 
 
  註冊時間: 2003-03-12 文章: 1698 來自: tunglo
  第 2 樓
  | 
		
			
				 發表於: 星期一 五月 31, 2004 1:38 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				1.Grid的屬性--RecordSource設定你要關聯的資料表
 
如客戶基本資料
 
RecordSourceType設定為0.Table
 
 
在TextBox的屬性--ControlSource設定你要關聯的資料表欄位
 
如客戶基本資料.客戶代號
 
 
2.在Grid中的Text1事件Click
 
THISFORM.REFRESH
 
這時使用者按下按鈕即會更新畫面內容.
 
 
 
 
 
 
或許這你用的上
 
1.如何從表單return 一個以上的變數 
 
http://fox.hanyu.com.tw/View.aspx?fbId=1&Id=16249
 
 
2.請教如何在調用表單後讓它返回一個數組? 
 
http://fox.hanyu.com.tw/View.aspx?fbId=1&Id=8715
 
 
來源:紅狐網站 Jack許
 
 	  | 代碼: | 	 		  ********************************
 
******************************
 
****************************** Save as SelForm.prg //Do it
 
 Form1=  CreateObject("Form1")
 
 Form1.Show
 
 Read Events
 
 RELEASE ALL EXTENDED
 
*On Shutdown
 
 Clear ALL
 
*Quit
 
 RETURN
 
 
*====================
 
DEFINE CLASS Form1 AS form
 
Top = 0
 
Left = 74
 
DoCreate = .T.                                                                  
 
ShowTips = .T.                                                                  
 
Caption = "Form1"                                                               
 
WindowType = 1                                                                  
 
AlwaysOnTop = .T.                                                               
 
Name = "Form1"                                                                  
 
 
*====================
 
ADD OBJECT LBL客戶編號1 AS LABEL WITH ;
 
Caption = "客戶編號:"                                                        ,;
 
Left = 16, Top = 7, Width = 51                                               ,;
 
Visible = .T.                                                                ,;
 
Name = "LBL客戶編號1"                                                           
 
                                                                                
 
*====================
 
ADD OBJECT 客戶編號1 AS TEXTBOX WITH ;
 
ControlSource = "oCust.客戶編號"                                             ,;
 
InputMask = "XXXXX"                                                          ,;
 
Left = 72, Top = 4, Width = 63                                               ,;
 
Visible = .T.                                                                ,;
 
Name = "客戶編號1"                                                              
 
                                                                                
 
*====================
 
ADD OBJECT LBL公司名稱1 AS LABEL WITH ;
 
Caption = "公司名稱:"                                                         ,;
 
Left = 16, Top = 60, Width = 51                                               ,;
 
Visible = .T.                                                                 ,;
 
Name = "LBL公司名稱1"                                                           
 
                                                                                
 
*====================
 
ADD OBJECT 公司名稱1 AS TEXTBOX WITH ;
 
ControlSource = "oCust.公司名稱"                                             ,;
 
InputMask = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"                       ,;
 
Left = 72, Top = 58, Width = 288                                             ,;
 
Visible = .T.                                                                ,;
 
Name = "公司名稱1"
 
                                                                                
 
*====================
 
ADD OBJECT LBL連絡人1 AS LABEL WITH ;
 
Caption = "連絡人:"                                                          ,;
 
Left = 16, Top = 111, Width = 51                                             ,;
 
Visible = .T.                                                                ,;
 
Name = "LBL連絡人1"                                                             
 
                                                                                
 
*====================
 
ADD OBJECT 連絡人1 AS TEXTBOX WITH ;
 
ControlSource = "oCust.連絡人"                                               ,;
 
InputMask = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"                                 ,;
 
Left = 72, Top = 108, Width = 218                                            ,;
 
Visible = .T.                                                                ,;
 
Name = "連絡人1"                                                                
 
                                                                                
 
*====================
 
ADD OBJECT LBL電話1 AS LABEL WITH ;
 
Caption = "電話:"                                                            ,;
 
Left = 16, Top = 147, Width = 51                                             ,;
 
Visible = .T.                                                                ,;
 
Name = "LBL電話1"
 
                                                                                
 
*====================
 
ADD OBJECT 電話1 AS TEXTBOX WITH ;
 
ControlSource = "oCust.電話"                                                 ,;
 
InputMask = "XXXXXXXXXXXXXXXXXXXXXXXX"                                       ,;
 
Left = 72, Top = 144, Width = 175                                            ,;
 
Visible = .T.                                                                ,;
 
Name = "電話1"                                                                  
 
                                                                                
 
 
*[x]=================
 
PROCEDURE Destroy
 
          RELEASE THISFORM
 
          CLEAR EVENTS
 
          QUIT
 
ENDPROC
 
 
*====================
 
PROCEDURE Load
 
    SET SAFE off
 
 
    CREATE CURSOR Cust (客戶編號 C(5),公司名稱 C(40),連絡人 C(30),電話 C(24))
 
 
    Insert INTO Cust Values ( "ALFKI","三川實業有限","陳小姐","(02) 968-9652")
 
    Insert INTO Cust Values ( "ANATR","東南實業    ","黃小姐","(03) 862-9682")
 
    Insert INTO Cust Values ( "ANTON","坦森行貿易  ","胡先生","(04) 256-6932")
 
    Insert INTO Cust Values ( "AROUT","國頂有限公司","王先生","(05) 555-7788")
 
    Insert INTO Cust Values ( "BERGS","喻台生機械  ","李先生","(06) 245-9636")
 
    Insert INTO Cust Values ( "BLAUS","琴花卉      ","劉先生","(07) 556-6665")
 
    Insert INTO Cust Values ( "BLONP","皓國廣兌    ","方先生","(08) 889-6698")
 
    Insert INTO Cust Values ( "BOLID","邁多貿易    ","劉先生","(02) 221-2555")
 
    Insert INTO Cust Values ( "BONAP","琴攝影      ","謝小姐","(03) 247-9682")
 
    Insert INTO Cust Values ( "BOTTM","中央?#125;發    ","王先生","(04) 358-6932")
 
    Insert INTO Cust Values ( "BSBEV","宇奏雜誌    ","?#125;先生","(05) 999-7788")
 
    Insert INTO Cust Values ( "CACTU","威航貨運承攬","李先生","(06) 852-9636")
 
    Insert INTO Cust Values ( "CENTC","三捷實業    ","林小姐","(07) 223-6665")
 
    Insert INTO Cust Values ( "CHOPS","嗨天旅行社  ","林小姐","(08) 784-6698")
 
    Insert INTO Cust Values ( "COMMI","美國運海    ","鍾小姐","(02) 555-7647")
 
    Insert INTO Cust Values ( "THECR","新巨企業    ","劉先生","(03) 862-9682")
 
    Insert INTO Cust Values ( "TOMSP","東帝望      ","謝小姐","(04) 256-6932")
 
    Insert INTO Cust Values ( "TORTU","協昌妮絨有限","王先生","(05) 555-7788")
 
    Insert INTO Cust Values ( "TRADH","亞太公司    ","?#125;先生","(06) 245-9636")
 
    Insert INTO Cust Values ( "TRAIH","伸格公司    ","周先生","(07) 556-6665")
 
    Insert INTO Cust Values ( "VAFFE","中碩貿易    ","方先生","(08) 889-6698")
 
    Insert INTO Cust Values ( "VICTE","千固        ","陳先生","(02) 221-2555")
 
    Insert INTO Cust Values ( "VINET","山泰企業    ","余小姐","(03) 247-9682")
 
    Insert INTO Cust Values ( "WANDK","凱旋科技    ","蘇先生","(04) 358-6932")
 
    Insert INTO Cust Values ( "WARTH","升格企業    ","成先生","(05) 999-7788")
 
    Insert INTO Cust Values ( "WELLI","凱誠國際顧問","何先生","(06) 852-9636")
 
    Insert INTO Cust Values ( "WHITC","椅天文化事業","黎先生","(07) 223-6665")
 
    Insert INTO Cust Values ( "WILMK","志遠有限公司","唐小姐","(08) 784-6698")
 
    Insert INTO Cust Values ( "WOLZA","漢典電機    ","吳小姐","(02) 555-7647")
 
    Insert INTO Cust Values ( "XXYYZ","二鄰五金行  ","陳清煜","(02) 508-7883")
 
 
    INDEX ON 客戶編號 Tag 客戶編號
 
 
    PUBLIC oCust
 
    SCATTER NAME oCust
 
ENDPROC
 
 
*====================
 
PROCEDURE 客戶編號1.Valid
 
          flagGridSelected = .f.
 
 
          =CreateObject('SelGridForm',@oCust ;
 
          ,oCust.客戶編號,'客戶編號','Cust'  ; &&必要時封成個物件
 
          ,@flagGridSelected)
 
 
          ThisForm.Refresh
 
          return( flagGridSelected )
 
ENDPROC
 
********************************
 
ENDDEFINE  && From Jack許
 
********************************
 
 
*====================
 
DEFINE CLASS SelGridForm AS form
 
Top=6
 
Left=27
 
Height=350
 
Width=451
 
DoCreate = .T.
 
Caption = "Form1"
 
WindowState = 0
 
WindowType = 1
 
Name = "SelGridForm"
 
 
*====================
 
ADD OBJECT Label1 AS label WITH ;
 
Caption = "確定:[Enter]/[Mouse雙擊]          放棄:[Escape]/[Mouse-Right]",;
 
Height = 25, Left = 24, Top = 0, Width = 385                                 ,;
 
ForeColor = RGB( 255,255,255 )                                               ,;
 
BackColor = RGB( 0,128,128 )                                                 ,;
 
Name = "Label1"                                                                 
 
 
*====================
 
ADD OBJECT Grid1 AS grid WITH ;
 
READONLY = .t.                                                               ,;
 
Height = 288, Left = 9, Top = 35, Width = 432                                ,;
 
Panel = 1                                                                    ,;
 
Name = "Grid1"
 
 
*====================
 
PROCEDURE Grid1.AfterRowColChange
 
LPARAMETERS nColIndex
 
          THIS.nCurrentRecord=recno( THIS.RecordSource )
 
          THIS.refresh
 
ENDPROC
 
 
*====================
 
PROCEDURE INIT
 
LPARAMETERS oRecords,eSeek,eOrder,cTableAlias,flagGridSelected
 
           *!* GRID INIT
 
           With THIS.Grid1
 
                .RecordSource = cTableAlias
 
                .ColumnCount = fcount(cTableAlias)
 
                for fi=1 to .ColumnCount
 
                    oColumn = .Columns[fi]
 
                    with oColumn
 
                        .Header1.Caption=field(fi,cTableAlias)
 
                        .RemoveObject('Text1')
 
                        .AddObject('Text1','udfTextBox')
 
                        .Width = .Width / 2
 
*                       .Width = FSIZE(field(fi,cTableAlias),cTableAlias) * 3 +30
 
                    endwith
 
                next
 
*!*                     messagebox( cIIF )
 
                .AddProperty('nCurrentRecord' , recno(cTableAlias))
 
 
                LOCAL cExp1,cExp2,cRGB1,cRGB2
 
                cExp1=[ThisForm.Grid1.nCurrentRecord]
 
                cExp2=[recno("] +cTableAlias+ [")]
 
                cRGB1=[RGB(0,192,0)]
 
                cRGB2=[RGB(255,255,255)]
 
                cIIF=[IIF(&cExp1=&cExp2,&cRGB1,&cRGB2)]
 
                .SETALL("DynamicBackColor",cIIF,"Column")
 
*!*                     messagebox( cIIF )
 
*               .ActivateCell(1,1)
 
                .refresh
 
           EndWith
 
           *!* FORM INIT
 
           THIS.AddProperty('oRecords' , oRecords)
 
           THIS.AddProperty('flagGridSelected' , flagGridSelected )
 
           ThisForm.oRecords = oRecords
 
           *!* messagebox( type('oRecords')+type('ThisForm.oRecords') )
 
 
           if SEEK(eSeek,cTableAlias,eOrder)
 
              *!*
 
              flagGridSelected = .t.
 
              SCATTER Name ThisForm.oRecords
 
              oRecords = ThisForm.oRecords
 
              RELEASE THIS
 
           else
 
              SET NEAR ON
 
              if type('eSeek')='C'
 
                 =SEEK(RTrim(eSeek),cTableAlias,eOrder)
 
              else
 
                 *!*
 
                 =SEEK(eSeek,cTableAlias,eOrder)
 
              endif
 
              SET NEAR OFF
 
              *!* ------------------------------
 
                  THIS.SHOW(1)
 
                  if ThisForm.flagGridSelected
 
                     SCATTER Name ThisForm.oRecords
 
                     oRecords = ThisForm.oRecords
 
                  endif
 
                  flagGridSelected = ThisForm.flagGridSelected
 
              *!* ------------------------------
 
              RELEASE THIS
 
           endif
 
 
********************************
 
ENDDEFINE  && From Jack許       
 
********************************
 
 
*====================
 
DEFINE CLASS udfTextBox AS textbox
 
BorderStyle = 0
 
Margin = 0
 
*!* ForeColor = RGB( 0,0,0 )
 
*!* BackColor = RGB( 255,255,255 )
 
SelectedForeColor = RGB(255,255,255)
 
SelectedBackColor = RGB(  0,192,  0)
 
Enabled = .t.
 
Visible = .t.
 
Name = "Text1"
 
 
PROCEDURE DBLClick
 
          ThisForm.flagGridSelected = .t.
 
          THISFORM.HIDE
 
ENDPROC
 
PROCEDURE RightClick
 
          ThisForm.flagGridSelected = .f.
 
          THISFORM.HIDE
 
ENDPROC
 
 
PROCEDURE KeyPress
 
          LPARAMETERS nKeyCode, nShiftAltCtrl
 
          #DEFINE knEscape 27
 
          #DEFINE knEnter  13
 
          do case
 
             case nKeyCode = knEscape .and. nShiftAltCtrl=0
 
                  NoDefault
 
                  ThisForm.flagGridSelected = .f.
 
                  THISFORM.HIDE
 
             case nKeyCode = knEnter .and. nShiftAltCtrl=0
 
                  NoDefault
 
                  ThisForm.flagGridSelected = .t.
 
                  THISFORM.HIDE
 
             case .t.
 
          endcase
 
ENDPROC
 
 
******************************
 
ENDDEFINE  && From Jack許
 
****************************** | 	 
  _________________ #############################
 
快樂媽咪系列幸福宅配,喝十全雞湯~原來幸福那麼簡單!!
 
 
學會VFP使用者社區的搜尋,Code才會更有趣~
 
############################# | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		Ruey
 
 
  註冊時間: 2003-03-12 文章: 1698 來自: tunglo
  第 3 樓
  | 
		
			
				 發表於: 星期一 五月 31, 2004 1:48 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				to holycastle :
 
 
麻煩你以後標題用繁體字(Big5)!! _________________ #############################
 
快樂媽咪系列幸福宅配,喝十全雞湯~原來幸福那麼簡單!!
 
 
學會VFP使用者社區的搜尋,Code才會更有趣~
 
############################# | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		holycastle
 
 
  註冊時間: 2004-05-29 文章: 11 來自: 香港-大陸(兩邊走...)
  第 4 樓
  | 
		
			
				 發表於: 星期四 六月 03, 2004 9:13 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				   war~~~
 
好深呀....不過都多謝你的reply~~~ | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		 | 
	 
 
  
  	 
	    
  	   | 
 	
您 無法 在這個版面發表文章 您 無法 在這個版面回覆文章 您 無法 在這個版面編輯文章 您 無法 在這個版面刪除文章 您 無法 在這個版面進行投票 您 無法 在這個版面附加檔案 您 無法 在這個版面下載檔案
  | 
   
  
		 |