MasteringVFP/2/4/1
出自VFP Wiki
在2009年7月9日 (四) 14:23由SitraCpast (對話 | 貢獻)所做的修訂版本
http://www.textacelca.com For-loop,æÂÂè®Â夾å¨ For è next ä¹ÂéÂÂçÂÂç¨Âå¼ÂéÂÂè¤Âå·衠n 次. èÂÂä¾Âä¾Â說:
For i=1 to 10 ? "Hello world" next
å°±æÂÂå°åºåÂÂ次 "Hello world"
å¦å¤Âä¸ÂÃ¥ÂÂè®ÂÃ¥ÂÂå½¢çÂÂæÂÂç¨,æ¯Âå¦ÂéÂÂ樣:
For i=1 to 10 step 2 ? "Hello world" next
éÂÂ樣就åªæÂÂå°åºäºÂ次 "Hello world" Ã¥ÂÂ.
å¦ÂæÂÂæÂ³å¨ For-loop 裡é¢ä½Âå¤æÂ·,符åÂÂæ¢Â件就跳åº,é£麼你å¯以驿ÂÂçÂÂå 丠if, continue è exit. å¦Âä¸Âä¾Â:
For i=1 to 10 if i=5 exit else ? "Hello world" continue endif next <pre> ç¶ i=5 çÂÂæÂÂÃ¥ÂÂ,å°±æÂÂè·³åº迴åÂÂ,å¦ÂæÂÂå°ÂæÂ¼ 5 çÂÂ話,Ã¥ÂÂå°åº "Hello world",並繼çºÂéÂÂÃ¥ÂÂè¿´åÂÂ. ---- = FOR ... ENDFOR å½令 = == ç¨é == :æÂÂæÂÂå®ÂçÂÂ次æÂ¸éÂÂè¤Âå·è¡Âä¸ÂçµÂå½令ã == èªÂæ³ == :FOR ''Var'' = ''nInitialValue'' TO ''nFinalValue'' [STEP ''nIncrement''] ::''Commands'' ::[EXIT] ::[LOOP] :ENDFOR | NEXT == Ã¥ÂÂæÂ¸ == === ''Var'' === *æÂÂå®Âä½Âçºè¨ÂæÂ¸å¨çÂÂè¨ÂæÂ¶é«Âè®ÂæÂ¸æÂÂé£åÂÂå Âç´ ãÂÂå¨ FOR ... ENDFOR å·è¡Âä¹ÂÃ¥ÂÂï¼ÂæÂ¤è¨ÂæÂ¶é«Âè®ÂæÂ¸æÂÂé£åÂÂå Âç´ ä¸Âä¸Âå®ÂÃ¥ÂÂå¨ã === ''nInitialValue'' TO ''nFinalValue'' === *''nInitialValue'' æÂ¯è¨ÂæÂ¸å¨çÂÂÃ¥ÂÂå§Âå¼ï¼Âè ''nFinalValue'' æÂ¯è¨ÂæÂ¸å¨çÂÂçµÂæÂ¢å¼ã === STEP ''nIncrement'' === *''nIncrement'' æÂ¯è¨ÂæÂ¸å¨éÂÂå¢ÂæÂÂéÂÂæ¸ÂçÂÂæÂ¸éÂÂãÂÂå¦ÂæÂ ''nIncrement'' çº負ï¼ÂÃ¥ÂÂè¨ÂæÂ¸å¨éÂÂæ¸Âï¼Âå¦ÂæÂÂçÂÂçÂÂ¥ STEP Ã¥ÂÂå¥ï¼Âè¨ÂæÂ¸å¨æ¯Â次çÂÂå¢ÂéÂÂçº 1ã === ''Commands'' === *æÂÂå®Âè¦Âå·è¡Âç Visual !FoxPro å½令ï¼Â''Commands'' å¯以å å«任æÂÂæÂ¸ç®çÂÂå½令ã === EXIT === *å¨ FOR ... ENDFOR 循ç°ä¸Âï¼Âå°ÂæÂ§å¶æ¬Âè¿ éÂÂç§»è½Â給ç·ÂæÂ¥å¨ ENDFOR çÂÂä¸Âä¸ÂÃ¥ÂÂå½令ãÂÂæÂ¨å¯以尠EXIT å¯以æÂ¾å¨ FOR è ENDFOR ä¹ÂéÂÂçÂÂä»»ä½Âä½Âç½®ã === LOOP === *å°ÂæÂ§å¶æ¬Âç´æÂ¥å³給 FOR Ã¥ÂÂå¥ï¼Âä¸ÂÃ¥ÂÂå·衠LOOP è ENDFOR ä¹ÂéÂÂçÂÂæÂÂè¿°ãÂÂè¨ÂæÂ¸å¨æÂ£å¸¸éÂÂå¢ÂæÂÂéÂÂæ¸Âï¼Âå°±åÂÂå·è¡Âå° ENDFOR ä¸Â樣ãÂÂLOOP å¯以æÂ¾å¨ FOR è ENDFOR ä¹ÂéÂÂçÂÂä»»ä½Âä½Âç½®ã == éÂÂ註 == *å¯以ç¨è¨ÂæÂ¶é«Âè®ÂæÂ¸æÂÂé£åÂÂå Âç´ ä½Âçºè¨ÂæÂ¸å¨ï¼ÂæÂÂå® FOR ... ENDFOR 循ç°丠Visual !FoxPro å½令çÂÂå·è¡Â次æÂ¸ã *å¨éÂÂå° ENDFOR æÂ NEXT ä¹ÂÃ¥ÂÂï¼Âå§ÂçµÂå·衠FOR å¾Âé¢ç Visual !FoxPro å½令ãÂÂå·è¡ÂéÂÂç¨Âä¸Âï¼Âæ¯Â循ç°ä¸Â次ï¼Âè¨ÂæÂ¸å¨ ''Var'' 齿ÂÂéÂÂå¢Âï¼Âå¢ÂéÂÂçº ''nIncrement''ï¼Âå¦ÂæÂÂçÂÂçÂÂ¥ STEP Ã¥ÂÂå¥ï¼ÂÃ¥ÂÂè¨ÂæÂ¸å¨æ¯Â次çÂÂå¢ÂéÂÂçº 1ï¼Âï¼Âç¶å¾ÂæÂÂè¨ÂæÂ¸å¨çÂÂå¼è ''nFinalValue'' ä½Âæ¯Âè¼ÂãÂÂå¦ÂæÂÂè¨ÂæÂ¸å¨çÂÂå¼å°ÂæÂ¼æÂÂçÂÂæÂ¼ ''nFinalValue''ï¼Âå°ÂÃ¥ÂÂ次å·衠FOR Ã¥ÂÂå¥å¾ÂçÂÂå½令ï¼Âå¦ÂæÂÂè¨ÂæÂ¸å¨çÂÂå¼大æÂ¼ ''nFinalValue''ï¼ÂÃ¥ÂÂéÂÂåº FOR ... ENDFOR 循ç°ï¼Âç¨ÂåºÂç¹¼çºÂå·衠ENDFOR æÂ NEXT ä¹Âå¾ÂçÂÂä¸Âä¸ÂÃ¥ÂÂå½令ã **'''注æÂÂ''' ::''nInitialValue''ãÂÂ''nFinalValue'' å ''nIncrement'' åªè½æÂ¯åÂÂ次è®Âå ¥çÂÂå¼ãÂÂå¨循ç°éÂÂç¨Âä¸ÂæÂ´æÂ¹è¨ÂæÂ¸å¨ ''Var'' çÂÂå¼å°Âå½±é¿循ç°çÂÂå·è¡Â次æÂ¸ã *å¦ÂæÂ ''nIncrement'' çº負ï¼Âä¸ÂÃ¥ÂÂå§Âå¼ ''nInitialValue'' 大æÂ¼çµÂæÂ¢å¼ ''nFinalValue''ï¼ÂÃ¥ÂÂæ¯Âç¶ÂéÂÂä¸Â次循ç°ï¼Âè¨ÂæÂ¸å¨é½å°ÂéÂÂæ¸Âã == ç¯Âä¾ == å¨ç¯Âä¾ 1 ä¸Âï¼Â顯示æÂ¸å 1 å° 10ã ç¯Âä¾ 2 使ç¨è¨ÂæÂ¶é«Âè®ÂæÂ¸ä½ÂçºåÂÂå§Âå¼ãÂÂçµÂæÂ¢å¼å STEP å¼ï¼Â顯示 customer è³ÂæÂÂ表格ä¸Âå¾ 2 èÂÂå° 10 èÂÂè¨ÂéÂÂä¸ÂæÂÂæÂÂè¨ÂéÂÂèÂÂçºå¶æÂ¸çÂÂè¨ÂéÂÂã ç¯Âä¾ 1 <pre> CLEAR FOR gnCount = 1 TO 10 ãÂÂ? gnCount ENDFOR ç¯Âä¾ 2 SET TALK OFF CLOSE DATABASES OPEN DATABASE (HOME(2) + 'Data\testdata') USE customerãÂÂãÂÂã && éÂÂå Customer è³ÂæÂÂ表格 STORE 2 TO gnIãÂÂã && Ã¥ÂÂå§Âå¼ STORE 10 TO gnJãÂÂãÂÂ&& çµÂæÂ¢å¼ STORE 2 TO KãÂÂãÂÂã && Step å¼ FOR gnCount = gnI TO gnJ STEP K ãÂÂGOTO gnCountãÂÂã && ç§»åÂÂè¨ÂéÂÂæÂÂ樠ãÂÂDISPLAY companyãÂÂ&& 顯示堬å¸åÂÂ稱 ENDFOR