home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 5 / 05.iso / a / a024 / 2.ddi / SYSTEM.DT_ / WBSEDIT.DAT < prev    next >
Encoding:
Text File  |  1994-02-17  |  352.2 KB  |  13,995 lines

  1. %%               
  2. 9,1:1
  3. %%
  4. .1
  5. WinBase ▓╬┐╝╩╓▓ß
  6.     ╩╣╙├    @700[▒α╝¡╞≈]        @699[WinBase╜Γ╩═╞≈├ⁿ┴ε╝»] 
  7.  
  8.     ⌐░⌐ñ⌐ñ⌐ñ⌐ñ⌐╨⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐╨⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐┤
  9.     ⌐ª        ⌐ª@10[┤░┐┌║»╩²]            ⌐ª @18[╩²╫Θ║»╩²]               ⌐ª
  10.     ⌐ª WinBase⌐ª@13[╗ß╗░║»╩²]            ⌐ª @19[╚╒╞┌║»╩²]               ⌐ª
  11.     ⌐ª   ║»   ⌐ª@14[▓╦╡Ñ║»╩²]            ⌐ª @20[╩²╤º║»╩²]               ⌐ª
  12.     ⌐ª   ╩²   ⌐ª@15[╩≤▒Ω╝ⁿ┼╠║»╩²]        ⌐ª @21[╫¬╗╗║»╩²]               ⌐ª
  13.     ⌐ª   ╖╓   ⌐ª@16[═╝╨╬═╝╧≤║»╩²]        ⌐ª @22[╫╓╖√┤«║»╩²]             ⌐ª
  14.     ⌐ª   └α   ⌐ª@17[╧╡═│║»╩²]            ⌐ª @23[╡═╝╢╬─╝■║»╩²]           ⌐ª
  15.     ⌐ª        ⌐ª@11[╩²╛▌┐Γ╬¼╗ñ║»╩²]      ⌐ª @24[╩²╛▌┐Γ▓┘╫≈║»╩²]         ⌐ª
  16.     ⌐ª        ⌐ª@12[▒¿▒φ╔Φ╝╞║»╩²]        ⌐ª @25[├ⁿ┴ε║»╩²]               ⌐ª
  17.     ⌐╕⌐ñ⌐ñ⌐ñ⌐ñ⌐╪⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐╪⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐╝
  18.     ⌐░⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐┤
  19.     ⌐ª                    WinBase├ⁿ┴ε╖╓└α                     ⌐ª
  20.     ⌐└⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐╚
  21.     ⌐ª     @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]         @34[╝ⁿ┼╠╗║│σ╟°├ⁿ┴ε]            ⌐ª
  22.     ⌐ª     @31[╩²╛▌┐Γ├ⁿ┴ε]               @35[╡═╝╢╬─╝■├ⁿ┴ε]              ⌐ª
  23.     ⌐ª     @32[╩²╤º╔Φ╓├├ⁿ┴ε]             @36[─┌┤µ▒Σ┴┐├ⁿ┴ε]              ⌐ª
  24.     ⌐ª     @33[╚╒╞┌╔Φ╓├├ⁿ┴ε]             @37[╧╡═│├ⁿ┴ε]                  ⌐ª
  25.     ⌐╕⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐╝
  26.  
  27.  
  28. .10
  29. ┤░┐┌║»╩²
  30. @1001 [gotowindow]        ▓╗▒ú┤µ╡▒╟░┤░┐┌, ╫¬╡╜╓╕╢¿╡─┤░┐┌
  31. @1002 [makebotton]        ╘┌┤░┐┌╓╨┤┤╜¿░┤┼Ñ
  32. @1003 [makewindow]        ┤┤╜¿┤░┐┌
  33. @1004 [redrawwin]        ╓╪╗¡╦∙╙╨┤░┐┌
  34. @1005 [removewindow]    ╣╪▒╒╡▒╟░┤░┐┌
  35. @1006 [shiftwindow]        ▒ú┤µ╡▒╟░┤░┐┌, ╫¬╡╜╓╕╢¿╡─┤░┐┌
  36. @1007 [wbedit]            ╡»│÷┐╔╜°╨╨╬─▒╛▒α╝¡╡─┤░┐┌
  37. @1008 [winclear]        ╦ó╨┬┤░┐┌
  38. @1009 [window]            ╖╡╗╪╡▒╟░┤░┐┌╛Σ▒·
  39. @1010 [windowexit]        ═╦│÷Winbase ╧╡═│
  40. @1011 [windowget]        ╗∙╙┌┤░┐┌╡─GET ▓┘╫≈
  41. @1012 [windowsay]        ╗∙╙┌┤░┐┌╡─SAY ▓┘╫≈
  42. @1013 [windowstart]        │⌡╩╝╗»Winbase ╧╡═│
  43. @1014 [winoutput]        ╘┌┤░┐┌╓╨╡─╡▒╟░╨╨╩Σ│÷┤«
  44. @1015 [winscroll]        ╣÷╢»┤░┐┌╓╨╡──┌╚▌
  45. @1016 [wintitle]        ╕─▒Σ╡▒╟░┤░┐┌╡─▒Ω╠Γ║═▒│╛░╔½
  46.  
  47.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  48.  
  49. .11
  50.  ╩²╛▌┐Γ╬¼╗ñ║»╩²
  51. @1101 [winbrows]        ╢╘╩²╛▌┐Γ╜°╨╨╬¼╗ñ▓┘╫≈▓ó┐╔╔Φ╝╞íó┤≥╙í▒¿▒φ
  52.  
  53.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  54.  
  55. .12
  56. ▒¿▒φ╔Φ╝╞║»╩²
  57. @1201 [ave_cond]        ╢╘╥╗╓╕╢¿╡─╫╓╢╬╟≤╞╜╛∙
  58. @1202 [ave_all]            ╢╘╥╗╓╕╢¿╡─"▒φ┤∩╩╜" ╟≤╞╜╛∙
  59. @1203 [c]                ╚í╡▒╟░╨╨─│┴╨╡─╓╡ú¿╩²╓╡ú⌐
  60. @1204 [countfor]        ═│╝╞╡▒╟░╩²╛▌┐Γ╓╨┬·╫π╠⌡╝■╡─╦∙╙╨╝╟┬╝╕÷╩²
  61. @1205 [ctack]            ╚í┬·╫π╠⌡╝■╡─╝╟┬╝╡──┌╚▌
  62. @1206 [cv]            ╜½┤·┬δ╫¬╗╗╬¬╩╡╝╩─┌╚▌╩Σ│÷
  63. @1207 [dage]            ╜½╚╒╞┌╫¬╗╗╬¬─Ω┴Σ
  64. @1208 [dates]            ╜½╩²╓╡╫¬╗╗╬¬╚╒╞┌╫╓╖√┤«
  65. @1209 [design]            ╙├╙┌╔Φ╝╞╢α╓╓╢α╤∙╡─╩²╛▌▒¿▒φ
  66. @1210 [in]                ╙├╙┌╘┌┤≥╙í╣²│╠╓╨╩╡╩▒╩Σ╚δ╫╓╖√┤«
  67. @1211 [itack]            ░┤╣╪╝ⁿ╫╓▓Θ╒╥╫╓╢╬─┌╚▌
  68. @1212 [nage]            ╜½╩²╓╡╫¬╗╗╬¬─Ω┴Σ
  69. @1213 [out]                ╩Σ│÷╫╓╢╬─┌╚▌
  70. @1214 [page]            ╖╡╗╪┤≥╙í╡─╡▒╟░╥│║┼
  71. @1215 [pages]            ╖╡╗╪▒¿▒φ╡─╫▄╥│╩²
  72. @1216 [r]                ╚í╡▒╟░┴╨─│╨╨╡─╓╡
  73. @1217 [rtack]            ╚í│÷╓╕╢¿╝╟┬╝╫╓╢╬╡──┌╚▌
  74. @1218 [sum_all]         ╢╘╥╗╓╕╢¿╡─"▒φ┤∩╩╜" ╟≤║═íú 
  75. @1219 [sum_cond]        ╢╘╥╗╓╕╢¿╡─╫╓╢╬╟≤║═íú
  76. @1220 [sumc]            ┴╨╟≤║═
  77. @1221 [sumr]            ╨╨╟≤║═
  78. @1222 [tack]            ╡▒╟░╝╟┬╝─│╫╓╢╬╡──┌╚▌
  79. @1223 [usec]            ╚í╡▒╟░╧ε╡─╓╡
  80. @1224 [usenum]            ╩╣╙├╨≥║┼
  81.  
  82.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  83.  
  84. .13
  85.  ╗ß╗░║»╩²
  86. @1301 [deldlg]        ╔╛│²─│└α╢╘╗░┐≥
  87. @1302 [drawdlg]        ╗¡│÷─│└α╢╘╗░┐≥
  88. @1303 [getcond]        ╠⌡╝■╫Θ║╧╢╘╗░┐≥
  89. @1304 [getdlg]         ╗±╡├─│└α╢╘╗░┐≥╖╡╗╪╓╡
  90. @1305 [getfile]        ╬─╝■╤í╘±╢╘╗░┐≥
  91. @1306 [inputbox]    ╘┌▓╗═¼╨╨╧╘╩╛╨┼╧ó, ▓ó╜╙╩▄╩Σ╚δ
  92. @1307 [makedlg]        ╝ñ╗ε╢╘╗░┐≥
  93. @1308 [modifydlg]    ╨▐╕──│└α╢╘╗░┐≥─┌╚▌
  94. @1309 [msgbox]        ╘┌▓╗═¼╨╨╧╘╩╛╨┼╧ó
  95. @1310 [msgshow]        ╡»│÷╢α╨╨╨┼╧ó╝░╢α╕÷░┤┼Ñ╡─╨┼╧ó╢╘╗░┐≥
  96. @1311 [removedlg]    ╔╛│²╢╘╗░┐≥
  97. @1312 [setdlg]        ╔Φ╓├─│└α╢╘╗░┐≥
  98.  
  99.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  100.  
  101. .14
  102. ▓╦╡Ñ║»╩²
  103. @1401 [achoice]        ░┤╩²╫Θ╡──┌╚▌╔·│╔▓╦╡Ñ
  104. @1402 [makemenu]    ┤┤╜¿▓ó╝ñ╗ε╧┬└¡╩╜▓╦╡Ñ
  105. @1403 [menudel]        ╔╛│²▓╦╡Ñ╧ε
  106. @1404 [menuget]        ┤╙▓╦╡Ñ╩²╫Θ╓╨╚í▓╦╡Ñ─┌╚▌
  107. @1405 [menugetc]    ╗±╚í▓╦╡Ñ╤╒╔½
  108. @1406 [menuins]        ╘┌╓╕╢¿╬╗╓├▓σ╚δ▓╦╡Ñ╧ε
  109. @1407 [menuset]        ╔Φ╓├▓╦╡Ñ╩²╫Θ
  110. @1408 [menusetc]    ╔Φ╓├▓╦╡Ñ╤╒╔½
  111. @1409 [popgetc]        ╚í╡»│÷╩╜▓╦╡Ñ╤╒╔½
  112. @1410 [poplist]        ┤┤╜¿▓ó╝ñ╗ε╡»│÷╩╜▓╦╡Ñ
  113. @1411 [popsetc]        ╔Φ╓├╡»│÷╩╜▓╦╡Ñ╡─╤╒╔½
  114. @1412 [popup]        ┤┤╜¿▓ó╝ñ╗ε╡»│÷╩╜▓╦╡Ñ
  115.  
  116.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  117.  
  118. .15
  119.  ╝ⁿ┼╠╩≤▒Ω║»╩²
  120. @1501 [capslock]        ┤≥┐¬Capslock ╝ⁿ
  121. @1502 [capsloff]        ╣╪▒╒Capslock ╝ⁿ
  122. @1503 [fullkey]            ╚╖╢¿╚╬║╬░┤╝ⁿ╡─ASCII ┬δ╓╡║═╔¿├Φ┬δ
  123. @1504 [inkey]            ╢┴╝ⁿ┼╠╔╧▒╗╝ⁿ╚δ╡─╫╓╖√
  124. @1505 [keybd]            ╚í╝ⁿ┼╠╡─╫┤╠¼
  125. @1506 [keybdbuf]        ╟σ╝ⁿ┼╠╗║│σ╟°
  126. @1507 [lastkey]            ╚╖╢¿╝ⁿ┼╠╗║│σ╟°╫ε║≤╥╗╕÷╩Σ╚δ╝ⁿ╡─ASCII ┬δ╓╡
  127. @1508 [m_hide]            ╥■▓╪╩≤▒Ω
  128. @1509 [m_inbox]            ┼╨╢╧─│╧≤╦╪╡π╩╟╖±╘┌╓╕╢¿╟°╙≥╓╨
  129. @1510 [m_init]            │⌡╩╝╗»╩≤▒Ω
  130. @1511 [m_move]            ╥╞╢»╩≤▒Ω╡╜╓╕╢¿╧≤╦╪╡π
  131. @1512 [m_press]            ▓Γ╩╘╩≤▒Ω░┤┼Ñ╩╟╖±░┤╧┬
  132. @1513 [m_rele]            ▓Γ╩╘╩≤▒Ω░┤┼Ñ╩╟╖±╩═╖┼
  133. @1514 [m_reset]            ╓╪╓├╩≤▒Ω
  134. @1515 [m_show]            ╧╘╩╛╩≤▒Ω
  135. @1516 [m_where]            ╖╡╗╪╩≤▒Ω╡▒╟░╬╗╓├
  136. @1517 [mouse]            ╧╘╩╛╗≥╒▀╣╪▒╒╩≤▒Ω
  137. @1518 [mousebox]        ┼╨╢╧╩≤▒Ω╩╟╖±╘┌─│╥╗╧≤╦╪╖╢╬º─┌
  138. @1519 [mousecol]        ╚í╩≤▒Ω╬╗╓├╡─╫°▒Ω┴╨
  139. @1520 [mousein]            ┼╨╢╧╩≤▒Ω╩╟╖±╘┌─│╥╗╫°▒Ω╖╢╬º─┌
  140. @1521 [mousekey]        ═¼╩▒▓Γ╩╘╝ⁿ┼╠░┤╝ⁿ║═╩≤▒Ω░┤┼Ñ
  141. @1522 [mouseread]        ┐╔╩╣╙├╩≤▒Ω╡─READ
  142. @1523 [mouserow]        ╖╡╗╪╩≤▒Ω╬╗╓├╡─╫°▒Ω╨╨
  143. @1524 [mskeyb]            ╦═╝ⁿ╓╡╡╜mousekey ╩╣╙├╡─╗║│σ╟°
  144. @1525 [newmskeyb]        ╟σ│²mousekey ╩╣╙├╡─╗║│σ╟°
  145. @1526 [nextkey]            ╢┴╚í╝ⁿ┼╠╗║│σ╟°╓╨╡╚┤²┤ª└φ╡─╩Σ╚δ╝ⁿ╓╨╡─╡┌╥╗╕÷
  146. @1527 [numlock]            ┤≥┐¬Num lock ╝ⁿ
  147. @1528 [numloff]            ╣╪▒╒Num lock ╝ⁿ
  148. @1529 [readkey]            ╚╖╢¿╓╒╓╣╫ε║≤READ ├ⁿ┴ε╡─╗≈╝ⁿ
  149. @1530 [scankey]            ╚╖╢¿╚╬║╬░┤╝ⁿ╡─ASCII ┬δ╓╡
  150. @1531 [scrollock]        ┤≥┐¬Scroll Lock ╝ⁿ
  151. @1532 [scrolloff]        ╣╪▒╒Scroll Lock ╝ⁿ
  152. @1533 [sethotkey]        ╔Φ╓├╚╚╝ⁿ╣ª─▄
  153. @1534 [setkey]            ╙├╚╚╝ⁿ╝ñ╗ε╥╗╕÷┤·┬δ┐Θ
  154.  
  155.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  156.  
  157. .16
  158. ═╝╨╬═╝╧≤║»╩²
  159. @1601 [att]                ╕─▒Σ╞┴─╗╔╧╓╕╢¿╟°╙≥╡─╩⌠╨╘, ▓ó╠ε│Σ╫╓╖√
  160. @1602 [box3d]            ╗¡┴ó╠σ╖╜┐≥
  161. @1603 [c_botton]        ╗¡│÷╙δmakebotton ╢¿╥σ╡─░┤┼Ñ═Ω╚½═¼╤∙╡─░┤┼Ñ
  162. @1604 [c_window]        ╗¡│÷╙δmakewindow ╢¿╥σ╡─┤░┐┌═Ω╚½═¼╤∙╡─┤░┐┌
  163. @1605 [dispform]        ╡≈╚δ▓ó╧╘╩╛BSV ═╝╧±
  164. @1606 [drawbox]            ╘┌╓╕╢¿╟°╙≥╗¡╥╗╓╕╢¿╤╒╔½╡─▒▀┐≥
  165. @1607 [drawline]        ┤╙╥╗╧≤╦╪╬╗╓├╗¡╥╗╓╕╢¿╤╒╔½╡─╓▒╧▀╡╜┴φ╥╗
  166.                 ╧≤╦╪╬╗╓├
  167. @1608 [drawtext]        ╨┤16í┴16 ╡π╒≤╡─╫╓╖√┤«
  168. @1609 [drawvcf]            ╨┤╩╕┴┐╫╓╖√┤«
  169. @1610 [fontinit]        │⌡╩╝╗»(┤≥┐¬) 16í┴16 ╡π╒≤║║╫╓┐Γ
  170. @1611 [fontexit]        ╣╪▒╒║║╫╓┐Γ
  171. @1612 [g_close]            ╣╪▒╒╥╤│⌡╩╝╗»╡─╧╘╩╛─ú╩╜
  172. @1613 [g_color]            ╔Φ╓├╫≈═╝╡▒╟░╤╒╔½
  173. @1614 [g_ellips]        ╗¡═╓╘▓
  174. @1615 [g_get]            ╜½╓╕╢¿╟°╙≥╡─╞┴─╗═╝╧≤╚í╧┬
  175. @1616 [g_getpixel]         ╚í╞┴─╗╔╧─│╡π╡─╤╒╔½
  176. @1617 [g_gettmp]        ╜½═╝╧±╖┼╚δ┴┘╩▒╟°
  177. @1618 [g_init]            │⌡╩╝╗»╧╘╩╛─ú╩╜
  178. @1619 [g_lineto]        ┤╙╡▒╟░╧≤╦╪╬╗╓├╗¡╧▀╡╜─│╥╗╡π
  179. @1620 [g_mappal]        ╔Φ╓├╓╕╢¿╤╒╔½╓╡╡─╔½▓╩
  180. @1621 [g_mapall]        ╙╔╤╒╔½╩²╫Θ╥╗┤╬╔Φ╓├╡≈╔½░σ
  181. @1622 [g_mode]            ╔Φ╓├╗¡╧▀íó╗¡┐≥╡╚╡─╖╜╩╜
  182. @1623 [g_moveto]        ╜½╧≤╦╪╓╕╒δ╥╞╡╜─│╥╗╡π
  183. @1624 [g_port]            ╔Φ╓├═╝╨╬╧╘╩╛╟°╙≥
  184. @1625 [g_put]            ╜½═╝╧±╒╗╢Ñ─┌╚▌╡»│÷▓ó╧╘╩╛
  185. @1626 [g_puti]            ╧╘╩╛═╝╧±╒╗╓╨╓╕╢¿╛Σ▒·╡─═╝╧±
  186. @1627 [g_puttmp]        ╧╘╩╛┴┘╩▒╟°╡─═╝╧±
  187. @1628 [g_rect]            ╗¡╖╜┐≥╗≥╠ε│Σ
  188. @1629 [g_rgb]            ╟≤╙╔R, G, B ╣╣│╔╡─│ñ╒√╩²╤╒╔½╓╡
  189. @1630 [g_setpixel]         ╘┌╞┴─╗╔╧╗¡╡π
  190. @1631 [g_style]            ╔Φ╓├╗¡╧▀─ú╩╜
  191. @1632 [getrname]        ┤╙╬─╝■╓╨╗╓╕┤═╝╧≤╡╜╞┴─╗
  192. @1633 [getwname]        ╜½╓╕╢¿╡─╞┴─╗╟°╙≥┤µ╓ⁿ╡╜╬─╝■╓╨
  193. @1634 [loadform]        ┤╙╬─╝■╓╨╗╓╕┤╞┴─╗
  194. @1635 [loadpcx]            ╧╘╩╛pcx ═╝╧≤
  195. @1636 [mappal16]        ╔Φ╓├╡≈╔½░σ╬¬▒Ω╫╝16 ╔½╡≈╔½░σ
  196. @1637 [pcx]                ╜½PCX ╬─╝■╧╘╩╛╘┌─│╥╗╟°╙≥╓╨
  197. @1638 [pcx16]            ░┤╡▒╟░╡≈╔½░σ╧╘╩╛pcx ═╝╧±≤
  198. @1639 [pcx256]            ╧╘╩╛256 ╔½pcx ═╝╧±
  199. @1640 [pcxtype]            ╗±╡├pcx ╬─╝■└α╨═
  200. @1641 [putform]            ╡≈╚δ▓ó╧╘╩╛BSV ═╝╧±
  201. @1642 [saveform]        ╜½╓╕╢¿╡─╞┴─╗╟°╙≥┤µ╓ⁿ╡╜╬─╝■╓╨
  202. @1643 [swapcolor]        ╡▀╡╣╤╒╔½┤«╓╨▒Ω╫╝║═╘÷╟┐╡─╤╒╔½
  203. @1644 [vgaclose]        ╣╪▒╒╞┴─╗╧╘╩╛
  204. @1645 [vgaopen]            ┤≥┐¬╞┴─╗╧╘╩╛
  205.  
  206.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  207.  
  208. .17
  209. ╧╡═│║»╩²
  210. @1701 [__pcheck]        ╙├╙┌╝∞▓Γ║»╩²┤½╡▌╡─▓╬╩²╝░╞Σ└α╨═╡─║╧╖¿╨╘
  211. @1702 [__ptypes]        ╚í╩²╫Θ╓╨├┐╥╗╕÷╘¬╦╪╡─└α╨═
  212. @1703 [c_clip]            ╖╡╗╪╤╒╔½╓╡╢╘╙ª╡─╟░╛░╗≥▒│╛░╤╒╔½╫╓╖√┤«
  213. @1704 [calculator]        ╡»│÷╝╞╦π╞≈╣ª─▄┤░┐┌
  214. @1705 [clock]            ╡»│÷╩▒╓╙┤░┐┌
  215. @1706 [col]                ╖╡╗╪╞┴─╗╣Γ▒Ω╡─╡▒╟░╬╗╓├╡─┴╨╫°▒Ω╓╡
  216. @1707 [curdrive]        ╚í╡▒╟░╟²╢»╞≈║┼
  217. @1708 [curoff]            ╣╪▒╒╣Γ▒Ω
  218. @1709 [curon]            ┤≥┐¬╣Γ▒Ω
  219. @1710 [delay]            ╤╙│┘╓╕╢¿╡─╩▒╝Σ
  220. @1711 [devout]            ╜½╥╗╕÷▒φ┤∩╩╜╖ó╦═╡╜╡▒╟░╩Σ│÷╔Φ▒╕╔╧
  221. @1712 [devpos]            ╓╪╓├╣Γ▒Ω╗≥╓╪╓├┤≥╙í═╖
  222. @1713 [dial]            ▓ª╡τ╗░║┼┬δ
  223. @1714 [dialclr]            ┤╙═¿╤╢╢╦┐┌▓≡│²╡≈╓╞╜Γ╡≈╞≈
  224. @1715 [dispbox]            ╘┌╞┴─╗╔╧╓╕╢¿╬╗╓├╗¡╥╗╖╜┐≥
  225. @1716 [doserror]        ╚╖╢¿╩╟╖±╥²╖ó┴╦╥╗╕÷DOS ┤φ╬≤
  226. @1717 [donebeep]        ▓·╔·╥╗░π╙├╙┌╓╕╩╛▓┘╫≈╜ß╩°╡─┴╜╓╓╥⌠╡≈╡─╔∙╥⌠
  227. @1718 [errorbeep]        ▓·╔·╔╘▓╗╩µ╖■╡─╢╠┤┘╔∙
  228. @1719 [errorlevel]        ╢┴╚í╗≥╔Φ╓├DOS │÷┤φ╝╢▒≡
  229. @1720 [findtsr]            ▓Θ╒╥─┌┤µ╫ñ┴⌠│╠╨≥
  230. @1721 [fklabel]            ╚í╙δ╣ª─▄╝ⁿ╧α╣╪┴¼╡─▒Ω║┼
  231. @1722 [fkmax]            ╚í┐╔▒α│╠╣ª─▄╝ⁿ╡─╫ε┤≤╨≥║┼
  232. @1723 [getenv]            ╚íDOS ╗╖╛│▒Σ┴┐╡──┌╚▌
  233. @1724 [initline]        ╔Φ╓├├┐╥╗╬─▒╛╨╨╡─╧≤╦╪┐φ╢╚
  234. @1725 [iscolor]            ╚╖╢¿╝╞╦π╗·╩╟╖±╛▀╙╨▓╩╔½╧╘╩╛─▄┴ª
  235. @1726 [isprint]            ╝∞▓ΘLPT1 ┤≥╙í┐┌, ▓ó╚╖╢¿╩╟╖±╫≈║├┴╦╩²╛▌╜╙╩╒╫╝▒╕
  236. @1727 [iswbsdos]        ▓Γ╩╘╩╟╖±╩╟WBSDOS ║║╫╓╧╡═│
  237. @1728 [maxcol]            ╚╖╢¿╝╞╦π╗·╡─╝α╩╙╞≈─▄╧╘╩╛╡─╫ε┤≤╫╓╖√┴╨╩²
  238. @1729 [maxrow]            ╚╖╢¿╝╞╦π╗·╡─╝α╩╙╞≈─▄╧╘╩╛╡─╫ε┤≤╫╓╖√╨╨╩²
  239. @1730 [memvarblock]        ╜¿┴ó╥╗╕÷" ╔Φ╓├- ╤í╚í" ┤·┬δ┐Θ
  240. @1731 [nop]             ╓┤╨╨╥╗┤╬┐╒▓┘╫≈╡─║»╩²
  241. @1732 [os]                ╚í▓┘╫≈╧╡═│╡─├√│╞║═░µ▒╛║┼
  242. @1733 [outerr]            ╜½╩Σ│÷╢¿╧≥╡╜DOS ╡─▒Ω╫╝┤φ╬≤╩Σ│÷(stderr) ╔╧
  243. @1734 [outstd]            ╜½┐╔▒╗DOS ╓╪╢¿╧≥╡─╩Σ│÷╢¿╧≥╡╜DOS 
  244.                 ╡─▒Ω╫╝╩Σ│÷╔Φ▒╕╔╧
  245. @1735 [pause]            ╬▐╠⌡╝■╡╪╘▌═ú╓╕╢¿╩▒╝Σ
  246. @1736 [pcol]            ╕·╫┘┤≥╙í═╖╡─╦«╞╜╥╞╢»
  247. @1737 [printcode]        ╦═┐╪╓╞┬δ╡╜┤≥╙í╗·╡½▓ó▓╗╕─▒Σ┤≥╙í╬╗╓├
  248. @1738 [prow]            ╕·╫┘┤≥╙í═╖╡─╩·╓▒╥╞╢»
  249. @1739 [putstr]            ╘┌╓╕╢¿╬╗╓├╩Σ│÷╫╓╖√┤«
  250. @1740 [restscreen]        ╗╓╕┤╥╘╟░╙├SAVESCREEN () ║»╩²┤µ╓ⁿ╡─╞┴─╗╟°╙≥
  251. @1741 [row]                ╚í╞┴─╗╣Γ▒Ω╡─╡▒╟░╬╗╓├╡─╨╨╫°▒Ω╓╡
  252. @1742 [runmacro]        ╜½╫╓╖√┤«╡──┌╚▌╫¬╗╗╬¬║»╩²╘╦╨╨
  253. @1743 [savescreen]        ╜½╞┴─╗╔╧╡─╥╗╕÷╛╪╨╬╟°╙≥┤µ╚δ─┌┤µ╥╘▒π╘┌║≤├µ╗╓╕┤
  254. @1744 [scroll]            ╕∙╛▌╓╕╢¿╨╨╩²╣÷╢»┤░┐┌─┌╡──┌╚▌
  255. @1745 [sernum]            ╖╡╗╪╨≥┴╨║┼
  256. @1746 [set]            ╚╖╢¿║═╕─▒ΣWINBASE ╡─SET├ⁿ┴ε╗≥║»╩²╡─╫┤╠¼íú
  257. @1747 [setblink]        ┐¬╣╪SETCOLOR () ║»╩²▒φ┤∩╩╜╓╨╦∙╙├╡─╨╟║┼"*"
  258. @1748 [setcancel]        ╘╩╨φ╗≥╜√╓╣╩╣╙├ALT-C ╫≈╬¬╙ª╙├│╠╨≥╡─═╦│÷╝ⁿ
  259. @1749 [setcolor]        ╬¬╧┬╥╗╕÷╞┴─╗╩Σ│÷╔Φ╓├╤╒╔½
  260. @1750 [setcursor]        ╕─▒Σ╣Γ▒Ω╡─╨╬╫┤
  261. @1751 [sethelp]            ╔Φ╓├░∩╓·║»╩²
  262. @1752 [setmode]            ╖├╬╩╖╟╚▒╩í╡─╬─▒╛╧╘╩╛─ú╩╜
  263. @1753 [setpos]            ╜½╣Γ▒Ω╥╞╡╜╓╕╢¿╡─╞┴─╗╬╗╓├╔╧
  264. @1754 [setprc]            ╜½┤≥╙í═╖╔Φ╓├╡╜╓╕╢¿╡─╓╡
  265. @1755 [settrace]        ╘┌┤φ╬≤┤ª└φ╢╘╗░┐≥╓╨╔Φ╓├╡≈╙├╣∞╝ú
  266. @1756 [stacknew]        ╗±╡├╥╗╕÷╨┬╡─╒╗
  267. @1757 [stackpop]        ┤╙╒╗╓╨╡»│÷╩²╛▌
  268. @1758 [stackpush]        ╧≥╒╗╓╨╤╣╚δ╩²╛▌
  269. @1759 [stackisempty]    ┼╨╢╧╒╗╩╟╖±╬¬┐╒
  270. @1760 [stacktop]        ╗±╡├(╡½▓╗╡»│÷) ╒╗╢Ñ╘¬╦╪
  271. @1761 [swprun]            ╓┤╨╨═Γ▓┐┐╔╓┤╨╨╬─╝■╗≥DOS ├ⁿ┴ε
  272. @1762 [tone]            ╙├╓╕╢¿╞╡┬╩║═│╓╨°╩▒╝Σ╖ó╔∙
  273. @1763 [updated]            ╚╖╢¿╘┌╢┴▓┘╫≈╟°╝Σ─│╕÷╫╓╢╬╗≥─│╕÷▒Σ┴┐╩╟╖±▒╗╨▐╕─
  274. @1764 [version]            ╚╖╢¿╦∙╙├╡─WINBASE ░µ▒╛
  275. @1765 [wbhelp]            ┤╙░∩╓·╬─╝■╓╨╠ß╚í▓ó╧╘╩╛╨┼╧ó
  276. @1766 [wbs_off]            ╘┌WBSDOS ║║╫╓╧╡═│╧┬, ╣╪▒╒═╝╨╬╣Γ▒Ω
  277. @1767 [wbs_on]            ╘┌WBSDOS ║║╫╓╧╡═│╧┬, ┤≥┐¬═╝╨╬╣Γ▒Ω
  278.  
  279.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  280.  
  281. .18
  282. ╩²╫Θ║»╩²
  283. @1801 [aadd]        └⌐│Σ╩²╫Θ, ╩╣╞Σ╘÷╝╙╘¬╦╪
  284. @1802 [aclone]        ╔·│╔╓╕╢¿╩²╫Θ╡─╥╗╕÷┐╜▒┤╩²╫Θ
  285. @1803 [acomp]        ╢╘╩²╫Θ╓╨╡─╧α┴┌╘¬╦╪╕∙╛▌▒╚╜╧┤·┬δ┐Θ╟≤╓╡
  286. @1804 [acopy]        ┐╜▒┤╩²╫Θ
  287. @1805 [adel]        ┤╙╩²╫Θ╓╨╔╛╚Ñ╓╕╢¿╨≥║┼╡─╘¬╦╪
  288. @1806 [aeval]        ▒Θ└·╥╗╩²╫Θ▓ó╘┌╞Σ├┐╕÷╘¬╦╪╔╧╢╘┤·┬δ┐Θ╟≤╓╡
  289. @1807 [afill]        ╠ε│Σ╩²╫Θ
  290. @1808 [ains]        ╘┌╩²╫Θ╓╨╓╕╢¿┤ª▓σ╚δ╥╗╓╕╢¿╓╡╡─╘¬╦╪
  291. @1809 [amax]        ╟≤╩²╫Θ╓╨╫ε┤≤╘¬╦╪╦∙╘┌╡─╬╗╓├
  292. @1810 [amin]        ╟≤╩²╫Θ╓╨╫ε╨í╘¬╦╪╦∙╘┌╡─╬╗╓├
  293. @1811 [array]        ╜¿┴ó╩²╫Θ
  294. @1812 [ascan]        ┤╙╩²╫Θ╓╨╦╤╦≈╡┌╥╗╕÷╙δ╓╕╢¿╓╡╞Ñ┼Σ╡─╘¬╦╪
  295. @1813 [asize]        ╕─▒Σ╩²╫Θ╡─╘¬╦╪╩²─┐
  296. @1814 [asort]        ╢╘╩²╫Θ╓╨╘¬╦╪┼┼╨≥
  297. @1815 [atail]        ╚í╩²╫Θ╡─╫ε╕▀╨≥║┼╡─╘¬╦╪╓╡
  298. @1816 [atodbf]        ╙├╩²╫Θ╓╨╡─╩²╛▌╠µ╗╗╡▒╟░╩²╛▌┐Γ
  299. @1817 [atorec]        ╙├╩²╫Θ╓╨╡─╩²╛▌╠µ╗╗╡▒╟░╝╟┬╝
  300. @1818 [rectoa]        ╜½╡▒╟░╝╟┬╝╩²╛▌┤µ╓ⁿ╙┌╩²╫Θ╓╨
  301. @1819 [dbftoa]        ╙├╡▒╟░╩²╛▌┐Γ─┌╚▌╣╣│╔╢■╬¼╩²╫Θ    
  302.  
  303.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  304.  
  305. .19
  306. ╚╒╞┌╙δ╩▒╝Σ║»╩²
  307. @1901 [addmonth]        ╟≤╘┌╓╕╢¿╚╒╞┌╩²╘┬║≤╡─╚╒╞┌
  308. @1902 [ampm]            ╗±╡├┤°╙╨am ╗≥pm ╡─╩▒╝Σ╫╓╖√┤«
  309. @1903 [atodate]            ╜½╙╔{─Ωíó╘┬íó╚╒} ╣╣│╔╡─╩²╫Θ╫¬╗»│╔╚╒╞┌╓╡
  310. @1904 [cdow]            ┤╙╚╒╞┌╓╡╖╡╗╪─│╥╗╠∞╘┌╥╗╓▄╓╨╡─╨≥║┼
  311. @1905 [chinesedate]        ╜½╚╒╞┌╫¬╗╗╬¬╓╨╣·╧░╣▀╡─╙├─Ωíó╘┬íó╚╒
  312.                 ▒φ╩╛╡─╫╓╖√┤«
  313. @1906 [cmonth]            ┤╙╚╒╞┌╓╡╓╨╖╡╗╪╘┬╖▌├√│╞
  314. @1907 [ctod]            ╜½╫╓╖√┤«╨╬╩╜╡─╚╒╞┌╫¬╗╗│╔╚╒╞┌┤«
  315. @1908 [date]            ╚í╧╡═│╡─╚╒╞┌
  316. @1909 [dateisleap]        ╚╖╢¿╓╕╢¿╚╒╞┌╩╟╖±╩╟╚≥─Ω
  317. @1910 [datetoa]            ╜½╚╒╞┌╫¬╗╗│╔╡─╩²╓╡╩²╫Θ, ╩²╫Θ╕±╩╜╬¬{─Ωíó╘┬íó╚╒}
  318. @1911 [datetoage]        ╜½╚╒╞┌╫¬╗╗╬¬─Ω┴Σ╩²╓╡
  319. @1912 [day]                ╢╘╥╗╕÷╚╒╞┌╟≤╓╡▓ó┤╙╓╨│Θ╚í│÷╘┬╓╨╡─╚╒╨≥║┼
  320. @1913 [daynum]            ╟≤╥╗─Ω╓╨╥╤╣²╚Ñ╡─╠∞╩²
  321. @1914 [dow]                ╖╡╗╪╚╒╞┌╓╨╨╟╞┌╝╕╡─╩²╫╓▒φ╩╜
  322. @1915 [dtoc]            ╜½╚╒╞┌╫¬╗╗│╔╥╗╕÷╫╓╖√┤«
  323. @1916 [dtof]            ╚í╥╗╕÷╘┬╡─╡┌╥╗╠∞╡─╚╒╞┌
  324. @1917 [dtol]            ╚í╥╗╕÷╘┬╡─╫ε║≤╥╗╠∞╡─╚╒╞┌
  325. @1918 [dtos]            ╜½╚╒╞┌╫¬╗╗│╔╥╗╕÷╫╓╖√┤«
  326. @1919 [hsecond]            ╟≤▒╛╠∞╥╤┴≈╩┼╡─├δ╩²
  327. @1920 [islastday]        ╚╖╢¿╚╒╞┌╩╟╖±╩╟╥╗╕÷╘┬╡─╫ε║≤╥╗╠∞
  328. @1921 [istime]            ┼╨╢╧╩▒╝Σ┤«╩╟╖±║╧╖¿ 
  329. @1922 [lastday]            ╚╖╢¿╥╗╕÷╘┬╡─╫ε║≤╥╗╠∞
  330. @1923 [lupdate]            ╝∞▓Θ╩²╛▌┐Γ╬─╝■═╖▓ó╢┴╚í╫ε╜ⁿ╥╗┤╬╕ⁿ╨┬╡─╚╒╞┌
  331. @1924 [month]            ╢╘╥╗╕÷╚╒╞┌╟≤╓╡▓ó┤╙╓╨│Θ╚í│÷╩²╫╓╨╬╩╜╡─╘┬╨≥║┼
  332. @1925 [ntod]            ╗±╡├╚╒╞┌╓╡
  333. @1926 [seconds]            ╖╡╗╪╫╘╬τ╥╣┐¬╩╝╡╜╧╓╘┌╬¬╓╣╡─╩▒╝Σ╝Σ╕⌠
  334. @1927 [sectoday]        ╜½├δ╩²╫¬╗╗╬¬╠∞╩²
  335. @1928 [sectotime]        ╜½├δ╩²╫¬╗╗╬¬╩▒╝Σ
  336. @1929 [time]            ╚í╧╡═│╩▒╝Σ
  337. @1930 [timediff]        ╟≤┴╜╕÷╩▒╝Σ╡─▓ε
  338. @1931 [timetosec]        ╜½╩▒╝Σ╫╓╖√┤«╫¬╗╗╬¬├δ╩²
  339. @1932 [year]            ╢╘╥╗╕÷╚╒╞┌╟≤╓╡▓ó┤╙╓╨│Θ╚í│÷─Ω┤·▓┐╖▌
  340.     
  341.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  342.  
  343. .20
  344. ╩²╤º║»╩²
  345. @2001 [abs]            ╢╘╩²╤º▒φ┤∩╩╜╟≤╓╡▓ó╚í╛°╢╘╓╡
  346. @2002 [binand]        ╢╘┴╜╕÷╩²░┤╬╗╟≤╙δ
  347. @2003 [binnot]        ╢╘╩²╓╡░┤╬╗╟≤╖┤
  348. @2004 [binor]        ╢╘┴╜╕÷╩²░┤╬╗╟≤╗≥
  349. @2005 [binshl]        ╢╘╩²╓╡░┤╬╗╫≤╥╞
  350. @2006 [binshr]        ╢╘╩²╓╡░┤╬╗╙╥╥╞
  351. @2007 [binxor]        ╢╘┴╜╕÷╩²░┤╬╗╟≤╥∞╗≥
  352. @2008 [btob]        ╜°╨╨╜°╓╞╫¬╗╗
  353. @2009 [ceiling]        ╟≤┤≤╙┌╗≥╡╚╙┌─│╩²╡─╫ε╨í╒√╩²
  354. @2010 [dtor]        ╜½╜╟╢╚╫¬╗╗╬¬╗í╢╚
  355. @2011 [exp]            ╝╞╦π╩²╤º▒φ┤∩╩╜╡─╫╘╚╗╓╕╩²
  356. @2012 [floor]        ╟≤╨í╙┌╗≥╡╚╙┌─│╩²╡─╫ε┤≤╒√╩²
  357. @2013 [int]            ╖╡╗╪╩²╤º▒φ┤∩╩╜╡─╒√╩²▓┐╖▌
  358. @2014 [lennum]        ╟≤╩²╓╡│ñ╢╚
  359. @2015 [log]            ╝╞╦π╩²╤º▒φ┤∩╩╜╡─╫╘╚╗╢╘╩²
  360. @2016 [log10]        ╟≤╥╘10 ╬¬╡╫╡─╢╘╩²╓╡
  361. @2017 [max]            ╢╘┴╜╩²╤º▒φ┤∩╩╜╟≤╓╡▓ó╚í╜╧┤≤╒▀
  362. @2018 [min]            ╢╘┴╜╩²╤º▒φ┤∩╩╜╟≤╓╡▓ó╚í╜╧╨í╒▀
  363. @2019 [mod]            ╟≤╙α╩²
  364. @2020 [round]        ╢╘╩²╤º▒φ┤∩╩╜╦─╔ß╬σ╚δ
  365. @2021 [rtod]        ╗í╢╚╫¬╗╗╬¬╜╟╢╚
  366. @2022 [sign]        ╟≤╩²╡─╖√║┼
  367. @2023 [sqrt]        ╝╞╦π╩²╤º▒φ┤∩╩╜╡─╞╜╖╜╕∙
  368.  
  369.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  370.         
  371. .21
  372. ╫¬╗╗║»╩²
  373. @2101 [bin2i]        ╜½╥╗╕÷2 ╫╓╜┌╖√║┼╒√╩²╕±╩╜╡─╫╓╖√┤«╫¬╗╗│╔╥╗╕÷╒√╩²
  374. @2102 [bin2l]        ╜½╥╗╕÷4 ╫╓╜┌╖√║┼╒√╩²╕±╩╜╡─╫╓╖√┤«╫¬╗╗│╔╥╗╕÷╩²╫╓╓╡
  375. @2103 [bin2w]        ╜½╥╗╕÷2 ╫╓╜┌│ñ╒√╩²╕±╩╜╡─╫╓╖√┤«╫¬╗╗│╔╥╗╕÷╒√╩²
  376. @2104 [i2bin]        ╜½╩²╫╓╓╡╫¬╗╗│╔2 ╫╓╜┌╖√║┼╒√╩²╕±╩╜╡─╫╓╖√┤«
  377. @2105 [l2bin]        ╜½╩²╫╓╓╡╫¬╗╗│╔4 ╫╓╜┌╖√║┼╒√╩²╕±╩╜╡─╫╓╖√┤«
  378. @2106 [numtostr]    ╜½╩²╓╡(┐╔║¼╨í╩²╬╗) ╫¬╗╗╬¬╫╓╖√┤«
  379. @2107 [soundex]        ╜½╥╗╕÷╫╓╖√┤«╫¬╗╗│╔╥╗╕÷╙∩╥⌠┤«
  380. @2108 [val]            ░╤╫╓╖√┤«╫¬╗╗╬¬╩²╫╓╓╡
  381.  
  382.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  383.  
  384. .22
  385. ╫╓╖√┤«║»╩²
  386. @2201 [alltrim]        ┤╙╫╓╖√┤«╓╨╔╛│²╟░╡╝┐╒╕±║═╬▓▓┐┐╒╕±
  387. @2202 [asc]            ╚╖╢¿╫╓╖√┤«╓╨╡┌╥╗╕÷╫╓╖√╡─ASCII ┬δ╓╡
  388. @2203 [at]            ╚╖╢¿╥╗╕÷╓╕╢¿╡─╫╙┤«╘┌░ⁿ║¼╕├╫╙┤«╡─╫╓╖√┤«╓╨╡─╬╗╓├
  389. @2204 [atnbr]        ▓Θ╒╥─│╫╓╖√╘┌╫╓╖√┤«╓╨│÷╧╓╡─╬╗╓├
  390. @2205 [chr]            ╜½╥╗╕÷╩«╜°╓╞╩²╫¬╗╗│╔╢╘╙ª╡─ASCII ╫╓╖√
  391. @2206 [countchr]    ╝╞╦π╫╓╖√╘┌╫╓╖√┤«╓╨│÷╧╓╡─┤╬╩²
  392. @2207 [empty]        ╚╖╢¿▒φ┤∩╩╜╩╟╖±╬¬╖╟┐╒╓╡, ╗≥╒▀╩╟╖±╬¬╒µ╓╡╗≥╖╟0╓╡
  393. @2208 [hardcr]        ╜½╫╓╖√┤«╗≥▒╕╫ó╬─╝■╓╨╦∙╙╨╚φ╗╪│╡╗╗│╔╙▓╗╪│╡
  394. @2209 [isalpha]        ╚╖╢¿╫╓╖√┤«╓╨╡┌╥╗╕÷╫╓╖√╩╟╖±╬¬╫╓─╕
  395. @2210 [isdigit]        ╚╖╢¿╫╓╖√┤«╓╨╡┌╥╗╕÷╫╓╖√╩╟╖±╬¬╩²╫╓
  396. @2211 [islower]        ╚╖╢¿╫╓╖√┤«╓╨╡┌╥╗╕÷╫╓╖√╩╟╖±╬¬╨í╨┤╫╓─╕
  397. @2212 [isnumber]    ┼╨╢╧╫╓╖√┤«╩╟╖±╩╟╓╗╙╔╩²╫╓íó.íó+íó- ╫Θ│╔
  398. @2213 [isupper]        ╚╖╢¿╫╓╖√┤«╓╨╡┌╥╗╕÷╫╓╖√╩╟╖±╬¬┤≤╨┤╫╓─╕
  399. @2214 [left]        ┤╙╫╓╖√┤«╡─╫≤╢╦┐¬╩╝╠ß╚í╫╙┤«
  400. @2215 [len]            ╚í╫╓╖√┤«╡─┤«│ñ
  401. @2216 [listtoa]        ╜½║¼╙╨╖╓╕⌠╖√╡─╫╓╖√┤«╫¬╗╗│╔╫╓╖√╩²╫Θ
  402. @2217 [lower]        ░╤╫╓╖√┤«╓╨╡─╫╓─╕╫¬╗╗╬¬╨í╨┤╫╓─╕
  403. @2218 [ltrim]        ╚Ñ╡⌠╫╓╖√┤«╓╨╡─╟░╡╝┐╒╕±
  404. @2219 [memoat]        ▓Θ╒╥╫╓╖√┤«
  405. @2220 [memocount]    ═│╝╞╫╓╖√┤«
  406. @2221 [memodel]        ╔╛│²╫╓╖√┤«─┌╚▌
  407. @2222 [memoedit]    ╢╘╫╓╖√┤«╗≥╒▀▒╕╫ó╫╓╢╬╜°╨╨╡»│÷╩╜▒α╝¡
  408. @2223 [memoins]        ╘┌╫╓╖√┤«▓σ╚δ╨┬╫╓╖√┤«
  409. @2224 [memoline]    ╠ß╚í╗≥╕±╩╜╗»▒╕╫ó╬─╝■╓╨╡─╬─▒╛╨╨╗≥╫╓╖√┤«
  410. @2225 [memorat]        ▓Θ╒╥╫╓╖√┤«
  411. @2226 [memoread]    ┤╙┤┼┼╠╓╨╢┴╚í╬─╝■
  412. @2227 [memorepl]    ╠µ╗╗╫╓╖√┤«
  413. @2228 [memory]        ╚╖╢¿WINBASE ╔Φ╓├" ┐╒╧╨─┌┤µ│╪" ╦∙╙├╡──┌┤µ╫▄┴┐
  414. @2229 [memotake]    ╚í│÷╫╓╖√┤«
  415. @2230 [memotran]    ╜½╗╪│╡/ ╗╗╨╨╫¬╗╗│╔╞Σ╦ⁿ╕±╩╜╡─╫╓╖√
  416. @2231 [memowrite]    ╜½╫╓╖√┤«╡──┌╚▌╨┤╚δ┤┼┼╠╬─╝■╓╨
  417. @2232 [mlctopos]    ╘┌╕±╩╜╗»╫╓╖√┤«╓╨╖╡╗╪─│╨╨┴╨╓╡╧α╢╘╫╓┤«═╖╡─
  418.             ╞½╥╞╬╗╓├
  419. @2233 [mlcount]        ═│╝╞╫╓╖√▒Σ┴┐╗≥▒╕╫ó╫╓╢╬╓╨╕±╩╜╗»╨╨╡─╩²─┐
  420. @2234 [mlpos]        ╘┌MEMOREAD() ║»╩²╡─╖╡╗╪┤«╓╨╤░╒╥╕±
  421.                 ╩╜╗»╨╨╡─╧α╢╘╬╗╓├
  422. @2235 [mpostolc]    ╘┌╕±╩╜╗»╫╓╖√┤«╓╨╖╡╗╪╞½╥╞╬╗╓├╡─╨╨┴╨╓╡
  423. @2236 [occurs]        ╚í╫╓╖√┤«╘┌┴φ╥╗╫╓╖√┤«╓╨│÷╧╓╡─┤╬╩²
  424. @2237 [parse]        ┤╙╫╓╖√┤«╓╨│Θ╚í╙╔┐╒╕±╖╓╕⌠╡─╫╙┤«
  425. @2238 [proper]        ╜½╫╓╖√╓╨╡─├┐╥╗╕÷╡Ñ┤╩╡─═╖╥╗╕÷╫╓╖√╫¬╗╗╬¬┤≤╨┤
  426. @2239 [pad└α]        ░╤╫╓╖√╫¬╗╗╬¬╢╘╞δ─ú╩╜
  427. @2240 [rat]            ╘┌╥╗╕÷╫╓╖√┤«╓╨╦╤╦≈┴φ╥╗╕÷╫╓╖√┤«╡─╫ε║≤╥╗┤╬│÷╧╓╬╗╓├
  428. @2241 [replicate]    ░▓▓σ╥╗╕÷╫╓╖√┤«▓ó╢╘╦ⁿ╜°╨╨╕┤╓╞
  429. @2242 [right]        ┤╙╫╓╖√┤«╡─╬▓▓┐┐¬╩╝╠ß╚í╫╙┤«
  430. @2243 [rtrim]        ╚Ñ╡⌠╫╓╖√┤«╓╨╡─╬▓▓┐┐╒╕±
  431. @2244 [space]        ╙├╓╕╢¿╩²─┐╡─┐╒╕±╠ε│Σ╥╗╕÷┤«
  432. @2245 [str]            ╜½╥╗╕÷╩²╫╓▒φ┤∩╩╜╫¬╗╗│╔╫╓╖√┤«
  433. @2246 [strexpand]    ╜½╫╓╖√┤«╡─├┐╥╗╕÷╫╓─╕(╗≥║║╫╓) ║≤▓σ╚δ╥╗╕÷┐╒╕±
  434. @2247 [strtran]        ╘┌╘┤┤«╓╨╦╤╦≈─┐▒Ω┤«, ▓ó╙├┴φ╥╗┤«╠µ╗╗─┐▒Ω┤«
  435. @2248 [stuff]        ═¿╣²╔╛│², ▓σ╚δ, ╥╘╝░╠µ╗╗└┤╨▐╕─┤«
  436. @2249 [substr]        ┤╙╘┤╫╓╖√┤«╓╨│Θ╚í│÷╫╙┤«
  437. @2250 [takeout]        ╚í│÷╙╔╧▐╢¿╖√╖╓╕⌠╡─╫╓╖√┤«╓╨╡─╡┌n ╕÷▓┐╖╓
  438. @2251 [trim]        ┤╙╫╓╖√┤«╓╨╔╛│²╦∙╙╨╡─╬▓▓┐┐╒╕±
  439. @2252 [type]        ╚╖╢¿╦∙╓╕╢¿╫╓╖√▒φ┤∩╩╜<cExp> ─┌╚▌╡─╩²╛▌└α╨═
  440. @2253 [upper]        ░╤╫╓╖√┤«╓╨╡─╫╓─╕╫¬╗╗╬¬┤≤╨┤╫╓─╕
  441. @2254 [valtype]        ╢╘╥╗╕÷▒φ┤∩╩╜<exp> ╡─╖╡╗╪╓╡╚╖╢¿╩²╛▌└α╨═
  442.  
  443.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  444.  
  445. .23
  446. ┤┼┼╠╝░╬─╝■║»╩²
  447. @2301 [adir]            ░╤╒╥╡╜╡─╬─╝■╨┼╧ó┤µ╚δ╥╗╕÷╩²╫Θ
  448. @2302 [appext]            ╕°╬─╝■├√╫╓╖√┤«╝╙╔╧(╗≥╗╗╔╧) ║≤╫║
  449. @2303 [curdir]            ╚╖╢¿╡▒╟░╣ñ╫≈─┐┬╝╓╨╡─DOS ─┐┬╝
  450. @2304 [d_chdir]            ╕─▒Σ┬╖╛╢
  451. @2305 [d_chdrv]            ╕─▒Σ╟²╢»╞≈
  452. @2306 [d_drive]            ╖╡╗╪╡▒╟░╟²╢»╞≈║┼
  453. @2307 [d_mkdir]            ╜¿┴ó╫╙─┐┬╝
  454. @2308 [d_path]            ╖╡╗╪╚½┬╖╛╢├√
  455. @2309 [d_rmdir]            ╔╛│²╓╕╢¿─┐┬╝
  456. @2310 [defdrive]        ╚╖╢¿╚▒╩í╡─DOS ┤┼┼╠╟²╢»╞≈
  457. @2311 [delfiles]        ╔╛│²╓╕╢¿╡─╦∙╙╨╬─╝■
  458. @2312 [dirdirs]            ╘┌╓╕╢¿╡─┬╖╛╢╓╨▓Θ╒╥┬╖╛╢├√
  459. @2313 [directory]        ╚í╓╕╢¿─┐┬╝╓╨╡─╬─╝■╨┼╧ó
  460. @2314 [direval]            ╢╘┬·╫π╠⌡╝■╡─╬─╝■├√╓┤╨╨┤·┬δ┐Θ
  461. @2315 [dirfiles]        ╘┌╓╕╢¿╡─┬╖╛╢╓╨▓Θ╒╥╬─╝■├√
  462. @2316 [dirtolist]        ╚í╓╕╢¿┬╖╛╢╧┬┤°╙╨┬╖╛╢├√╡─╦∙╙╨╬─╝■
  463. @2317 [disksize]        ╚í┤┼┼╠╡─╕±╩╜╗»║≤╡─╚▌┴┐
  464. @2318 [diskspace]        ╚╖╢¿┤┼┼╠╡─╩ú╙α┐╒╝Σ
  465. @2319 [disktest]        ▓Γ╩╘┤┼┼╠╟²╢»╞≈
  466. @2320 [f_comp]            ▒╚╜╧┴╜╕÷╬─╝■╡─╚╒╞┌╝░╩▒╝Σ
  467. @2321 [f_gettm]            ╙╔╬─╝■╛Σ▒·╗±╡├╬─╝■╡─╚╒╞┌╝░╩▒╝Σ
  468. @2322 [f_settm]            ╔Φ╓├╬─╝■╡─╚╒╞┌╝░╩▒╝Σ
  469. @2323 [fclose]            ╣╪▒╒╬─╝■
  470. @2324 [fcreate]            ╜¿┴ó╥╗╕÷╬─╝■╗≥╜½╥╗╕÷╬─╝■╡─│ñ╢╚╜╪╬¬0
  471. @2325 [fearse]            ┤╙┤┼┼╠╔╛│²╬─╝■
  472. @2326 [feof]            ╚╖╢¿╬─╝■╩╟╖±╜ß╩°
  473. @2327 [ferror]            ╚╖╢¿┤φ╬≤└α╨═
  474. @2328 [fgets]            ┤╙╬─╝■╓╨╢┴╥╗╨╨╗≥╢α╨╨
  475. @2329 [file]            ▓Γ╩╘╬─╝■╩╟╖±┤µ╘┌
  476. @2330 [filebase]        ╚í╬─╝■├√╓╨╡─╗∙▒╛╬─╝■├√(▓╗║¼║≤╫║)
  477. @2331 [filebottom]        ╜½╬─╝■╓╕╒δ╫¬╡╜╬─╝■╬▓
  478. @2332 [filedate]        ╗±╚í╗≥╔Φ╓├DOS ╬─╝■╡─╚╒╞┌
  479. @2333 [filedrive]        ╚í╬─╝■├√╓╨╡─╟²╢»╞≈├√
  480. @2334 [fileeval]        ░╤╬─╝■╓╨╡─├┐╥╗╨╨╢╘┤·┬δ┐ΘBlock ╟≤╓╡
  481. @2335 [fileext]            ╚í╬─╝■├√╓╨╡─└⌐╒╣├√
  482. @2336 [filelen]            ╚í╬─╝■│ñ╢╚
  483. @2337 [filepath]        ╕∙╛▌SET PATH ╡─╔Φ╓├╦╤╦≈╬─╝■├√
  484. @2338 [filepos]            ╚í╬─╝■╡▒╟░╓╕╒δ╬╗╓├
  485. @2339 [filesize]            ╚╖╢¿╬─╝■╡─┤≤╨í
  486. @2340 [filetop]            ╜½╬─╝■╓╕╒δ╫¬╡╜╬─╝■═╖
  487. @2341 [filetime]        ╗±╚í╗≥╔Φ╓├DOS ╬─╝■╔╧╡─╩▒╝Σ
  488. @2342 [filetouch]        ░╤╬─╝■╡─╚╒╞┌/ ╩▒╝Σ▒Ω╝╟╕ⁿ╨┬╬¬╧╡═│╚╒╞┌║═╩▒╝Σ
  489. @2343 [findfirst]        ╘┌╡▒╟░┬╖╛╢╓╨▓Θ╒╥╡┌╥╗╕÷╬─╝■├√
  490. @2344 [findnext]         ╘┌╡▒╟░┬╖╛╢╓╨▓Θ╒╥╧┬╥╗╕÷╬─╝■├√
  491. @2345 [fopen]            ╬¬╞Σ╦ⁿ╡═╝╢╬─╝■▓┘╫≈║»╩²┤≥┐¬╥╗╕÷╬─╝■
  492. @2346 [fputs]            ╧≥╬─╝■╓╨╨┤╚δ╫╓╖√┤«
  493. @2347 [fread]            ╜½╥╗╕÷dos ╬─╝■╓╨╡─╥╗▓┐╖▌─┌╚▌╢┴╚δ╥╗╕÷─┌┤µ▒Σ┴┐╓╨
  494. @2348 [freadln]            ┤╙╬─╝■╓╨╢┴╥╗╨╨╗≥╢α╨╨
  495. @2349 [freadstr]        ╢┴╚í╬─╝■╓╨╡─▓┐╖▌─┌╚▌
  496. @2350 [frename]            ╕°╬─╝■╗╗├√
  497. @2351 [fseek]            ╢¿╬╗╥╗╕÷┤≥┐¬╡─╬─╝■╓╨╡─dos ╬─╝■╓╕╒δ
  498. @2352 [fwrite]            ╜½─┌┤µ▒Σ┴┐╡──┌╚▌╨┤╚δ╬─╝■╓╨
  499. @2353 [fwriteln]        ╧≥╬─╝■╓╨╨┤╚δ╫╓╖√┤«
  500. @2354 [fullpath]        ╚í╬─╝■╡─┬╖╛╢╡─╚½├√
  501. @2355 [getattr]            ╗±╡├╬─╝■╡─╩⌠╨╘
  502. @2356 [getfilepath]        ╚í╬─╝■├√╡─┬╖╛╢
  503. @2357 [getint24]        ╗±╚íINT 24 ┤ª└φ╡─│÷┤φ┤·┬δ
  504. @2358 [getpath]            ╘┌╓╕╢¿╡─┬╖╛╢╓╨╚╖╢¿╬─╝■╩╟╖±┤µ╘┌
  505. @2359 [hard_chdir]        ░╤╡▒╟░─┐┬╝╫¬╡╜╓╕╢¿╡─╟²╢»╞≈║═┬╖╛╢╓╨
  506. @2360 [isdir]            ┼╨╢╧╫╓┤«╩╟╖±╬¬┬╖╛╢
  507. @2361 [ismemo]            ╚╖╢¿╥╗╕÷╩²╛▌┐Γ╩╟╖±░ⁿ║¼▒╕╫ó╫╓╢╬
  508. @2362 [lastdrive]        ╚í║╧╖¿╡─DOS ┤┼┼╠╟²╢»╞≈╡─╫ε╕▀╟²╢»╞≈╖√
  509. @2363 [pathparse]        ░╤╬─╝■├√╖╓╜Γ╬¬┼╠║┼íó┬╖╛╢íó╗∙▒╛╬─╝■├√╝░└⌐╒╣├√
  510. @2364 [setattr]            ╔Φ╓├╬─╝■╩⌠╨╘
  511. @2365 [setint24]        ╔Φ╓├╗≥╗╓╕┤╤╧╓╪┤φ╬≤┤ª└φ╓╨╢╧INT24
  512. @2366 [tempfile]        ╘┌╓╕╢¿╡─┤┼┼╠╔╧╜¿┴ó╥╗╕÷╬─╝■├√╬¿╥╗╡─┴┘╩▒╬─╝■
  513. @2367 [wbsbackup]        ▒╕╖▌╗≥╗╓╕┤╬─╝■
  514.     
  515.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  516.  
  517. .24
  518.  ╩²╛▌┐Γ▓┘╫≈║»╩²
  519. @2401 [afields]            ╜½╡▒╟░╩²╛▌┐Γ╡─╕≈╫╓╢╬─┌╚▌╠ε╚δ╩²╫Θ╓╨
  520. @2402 [alias]            ╚╖╢¿╥╤┤≥┐¬╩²╛▌┐Γ╡─▒≡├√
  521. @2403 [bof]                ╚╖╢¿╝╟┬╝╓╕╒δ╩╟╖±▒╗╢¿╬╗╡╜╡┌╥╗╕÷╝╟┬╝╓«╟░
  522. @2404 [closealias]        ╣╪▒╒▒≡├√╓╕╢¿╡─╩²╛▌┐Γ
  523. @2405 [clrvars]            ╟σ│²╙╔initvars() ║»╩²┤┤╜¿╡─╫╓╢╬▒Σ┴┐╝»
  524. @2406 [dbappend]        ╕°╡▒╟░╣ñ╫≈╟°╓╨╡─╩²╛▌┐Γ╘÷╝╙╥╗╠⌡┐╒░╫╨┬╝╟┬╝
  525. @2407 [dbclearall]        ╩═╖┼╦∙╙╨▒╗╒╝╙├╡─╣ñ╫≈╟°
  526. @2408 [dbclearfil]        ╟σ│²╡▒╟░╣ñ╫≈╟°╓╨╣²┬╦╞≈╡─┬▀╝¡╣²┬╦╠⌡╝■
  527. @2409 [dbclearind]        ╘┌╡▒╟░╣ñ╫≈╟°╓╨╣╪▒╒╦∙╙╨╗ε╢»╦≈╥²
  528. @2410 [dbclearral]        ╘┌╡▒╟░╣ñ╫≈╟°╓╨╣╪▒╒╦∙╙╨╗ε╢»╣╪╧╡
  529. @2411 [dbclosearea]        ╩═╖┼╡▒╟░╣ñ╫≈╟°
  530. @2412 [dbcommit]        ╩╣╡▒╟░╣ñ╫≈╟°╓╨╚╬║╬╬─╝■▒╕╖▌▒╗╨┤╚δ┤┼┼╠╓╨
  531. @2413 [dbcommitall]        ╩╣╦∙╙╨╣ñ╫≈╟°╓╨╡─╬─╝■▒╕╖▌▒╗╨┤╚δ┤┼┼╠╓╨
  532. @2414 [dbcreate]        ╜¿┴ó╥╗╕÷╨┬╡─╩²╛▌┐Γ
  533. @2415 [dbcreateind]        ╕°╡▒╟░╣ñ╫≈╟°╓╨╡─╬─╝■╜°╨╨╦≈╥²
  534. @2416 [dbdelete]        ╕°╩²╛▌┐Γ╡─╡▒╟░╝╟┬╝┤≥╔╧╔╛│²▒Ω╝╟
  535. @2417 [dbeval]            ╗∙╙┌┐Γ╓╨╠⌠╤í│÷╡─├┐╕÷╝╟┬╝╢╘╥╗╕÷┤·┬δ┐Θ╟≤╓╡
  536. @2418 [dbf]                ╚╖╢¿╡▒╟░╣ñ╫≈╟°╡─▒≡├√
  537. @2419 [dbfilter]        ░┤╫╓╖√┤«╨╬╩╜╖╡╗╪╡▒╟░╣²┬╦╞≈▒φ┤∩╩╜
  538. @2420 [dbgobottom]        ╥╞╢»╬─╝■╓╕╒δ╡╜╫ε║≤╥╗╕÷┬▀╝¡╝╟┬╝╔╧
  539. @2421 [dbgoto]            ╜½╝╟┬╝╬─╝■╓╕╒δ╢¿╬╗╡╜╓╕╢¿╡─╝╟┬╝╔╧
  540. @2422 [dbgotop]            ╥╞╢»╬─╝■╓╕╒δ╡┌╥╗╕÷┬▀╝¡╝╟┬╝╔╧
  541. @2423 [dbrecall]        ╗╓╕┤▒╗┤≥╔╧╔╛│²▒Ω╝╟╡─╝╟┬╝
  542. @2424 [dbreindex]        ╓╪╨┬╜¿┴ó╡▒╟░╣ñ╫≈╟°╓╨╡─╦∙╙╨╗ε╢»╦≈╥²╬─╝■
  543. @2425 [dbrelation]        ╚╖╢¿set relation ├ⁿ┴ε╦∙╜¿┴ó╣╪╧╡╡─┴¼╜╙▒φ┤∩╩╜
  544. @2426 [dbrselect]        ╚╖╢¿╡▒╟░╣ñ╫≈╟°╓╨╓╕╢¿╡─╣╪╧╡╣ñ╫≈╟°
  545. @2427 [dbseek]            ╘┌╡▒╟░╣ñ╫≈╟°╓╨╦╤╦≈┬·╫π╠⌡╝■╡─╡┌╥╗╕÷┬▀╝¡╝╟┬╝
  546. @2428 [dbselectar]        ╩╣╤í╢¿╡─╣ñ╫≈╟°│╔╬¬╡▒╟░╣ñ╫≈╟°
  547. @2429 [dbsetdriver]        ╓╕╢¿╚▒╩í╡─╩²╛▌┐Γ╟²╢»╞≈
  548. @2430 [dbsetfilter]        ╕°╡▒╟░╣ñ╫≈╟°╔Φ╓├╥╗╕÷╣²┬╦╞≈
  549. @2431 [dbsetindex]        ╘┌╡▒╟░╣ñ╫≈╟°╓╨┤≥┐¬╥╗╕÷╦≈╥²╬─╝■
  550. @2432 [dbsetorder]        ╘┌╡▒╟░╣ñ╫≈╟°╡─╗ε╢»╦≈╥²╓╨╓╕╢¿╥╗╓≈╦≈╥²
  551. @2433 [dbsetrelat]        ╘┌╡▒╟░╣ñ╫≈╟°╙δ╓╕╢¿╣ñ╫≈╟°╓«╝Σ╜¿┴ó╕╕/ ╫╙╣╪╧╡
  552. @2434 [dbskip]            ╧α╢╘╙┌╡▒╟░╝╟┬╝╥╞╢»╝╟┬╝╓╕╒δ
  553. @2435 [dbstruct]        ╜¿┴ó░ⁿ└¿╡▒╟░┤≥┐¬╩²╛▌┐Γ╨┼╧ó╡─╩²╫Θ
  554. @2436 [dbunlock]        ╩═╖┼╡▒╟░╣ñ╫≈╟°╓╨▒╗╙ª╙├│╠╨≥╦°╢¿╡─╬─╝■╗≥╝╟┬╝
  555. @2437 [dbunlockall]        ╩═╖┼╦∙╙╨╣ñ╫≈╟°╓╨▒╗╙ª╙├│╠╨≥╦°╢¿╡─╬─╝■╗≥╝╟┬╝
  556. @2438 [dbusearea]        ╘┌╣ñ╫≈╟°╓╨┤≥┐¬╩²╛▌┐Γ╬─╝■
  557. @2439 [deleted]            ▓Γ╩╘╡▒╟░╝╟┬╝╩╟╖±╥╤▒╗╫÷╔╧╔╛│²▒Ω╓╛
  558. @2440 [descend]            ╜¿┴ó╥╗╕÷╜╡╨≥╦≈╥²▓ó╘╩╨φ▓┘╫≈╒▀╢╘╦≈╥²╦╤╦≈
  559. @2441 [eof]                ▓Γ╩╘╡▒╟░╝╟┬╝╓╕╒δ╩╟╖±╥╤╥╞╡╜╫ε║≤╕÷╝╟┬╝╓«║≤
  560. @2442 [equvars]            ┤╙╡▒╟░╩²╛▌┐Γ╝╟┬╝╝╙╘╪─┌┤µ▒Σ┴┐
  561. @2443 [fcount]            ╚╖╢¿╥╗╕÷╩²╛▌┐Γ╓╨║¼╙╨╫╓╢╬╡─╩²─┐
  562. @2444 [field]            ╖╡╗╪╢╘╙ª╙┌╩²╛▌┐Γ╓╨─│╕÷╫╓╢╬╨≥║┼╡─╫╓╢╬├√│╞
  563. @2445 [fieldblock]        ╜¿┴ó╥╗╕÷╤í╚í╗≥╔Φ╓├╫╓╢╬╓╡╡─┤·┬δ┐Θ
  564. @2446 [fieldget]        ╘┌╡▒╟░╤í╘±╡─╩²╛▌┐Γ╓╨╝∞╦≈─│╕÷╫╓╢╬╡─╡▒╟░╓╡
  565. @2447 [fieldput]        ╢╘╡▒╟░╤í╘±╡─╩²╛▌┐Γ╓╨╓╕╢¿╡─╫╓╢╬╜°╨╨╕│╓╡▓┘╫≈
  566. @2448 [fieldwblock]        ╜¿┴ó╥╗╕÷╤í╚í╗≥╔Φ╓├╫╓╢╬╓╡╡─┤·┬δ┐Θ
  567. @2449 [flock]            ╦°╢¿╡▒╟░╩²╛▌┐Γ
  568. @2450 [found]            ╚╖╢¿find ╡╚├ⁿ┴ε╩╟╖±╓┤╨╨│╔╣ª
  569. @2451 [freevars]        ╩═╖┼╣½╣▓╫╓╢╬▒Σ┴┐
  570. @2452 [header]            ╝╞╦π╡▒╟░╩²╛▌┐Γ╬─╝■═╖╡─╫╓╜┌╩²
  571. @2453 [indexext]        ╖╡╗╪╚▒╩í╡─╦≈╥²╬─╝■╡─└⌐╒╣├√
  572. @2454 [indextext]        ╚╖╢¿╩╟╖±╙╨╥╗╕÷▒╕╙├╡─╩²╛▌┐Γ╟²╢»│╠╨≥▒╗┴¼╜╙╜°
  573. @2455 [indexkey]        ╚╖╢¿╥╗╕÷╦≈╥²╬─╝■╡─╝ⁿ╜ß╣╣
  574. @2456 [indexord]        ╚╖╢¿╡▒╟░╦≈╥²╬─╝■▒φ╓╨╡─╓≈╦≈╥²╬─╝■
  575. @2457 [initvars]        ┤┤╜¿╥╗╠╫╢╘╙ª╙┌╡▒╟░╩²╛▌┐Γ╓╨╡─╫╓╢╬╡─╣½╣▓─┌
  576.                 ┤µ▒Σ┴┐
  577. @2458 [isalias]            ┼╨╢╧▒≡├√
  578. @2459 [lastrec|reccount]     ╚╖╢¿╩²╛▌┐Γ╓╨╝╟┬╝╡─╫▄╩²─┐
  579. @2460 [lockfile]        ╦°╫í╡▒╟░╩²╛▌┐Γ
  580. @2461 [lockrec]            ╦°╫í╡▒╟░╝╟┬╝
  581. @2462 [memopack]        ┤╙DBT ╬─╝■╔╛│²╬┤╩╣╙├╡─▒╕╫ó╩²╛▌
  582. @2463 [ndxcount]        ╝╞╦π╙δ╡▒╟░╩²╛▌┐Γ╧α╣╪╡─╗ε╢»╦≈╥²╬─╝■
  583. @2464 [ndxkey]            ╢┴╚í╦≈╥²╬─╝■╡─╣╪╝ⁿ╫╓▒φ┤∩╩╜
  584. @2465 [netappend]        ╘÷╝╙╨┬╝╟┬╝, ╙├╙┌░┤╣▓╧φ╖╜╩╜┤≥┐¬╡─╩²╛▌┐Γ
  585. @2466 [netdelete]        ╘┌═°┬τ╔╧╔╛│²╡▒╟░╝╟┬╝
  586. @2467 [neterr]            ╚╖╢¿═°┬τ╔╧╡─USE ├ⁿ┴ε╗≥APPEND ├ⁿ┴ε╩╟╖±╓┤╨╨╩º░▄
  587. @2468 [netfldput]         ╘┌═°┬τ╔╧╢╘╡▒╟░╤í╘±╡─╩²╛▌┐Γ╓╨╓╕╢¿╡─╫╓╢╬╜°
  588.                 ╨╨╕│╓╡▓┘╫≈íú
  589. @2469 [netname]            ╚í═°┬τ╣ñ╫≈╒╛ID
  590. @2470 [netrecall]        ╘┌═°┬τ╔╧╗╓╕┤▒╗┤≥╔╧╔╛│²▒Ω╝╟╡─╝╟┬╝ 
  591. @2471 [netreplfld]        ╘┌═°┬τ╔╧╢╘╫╓╢╬╕│╙Φ╓╡
  592. @2472 [netuse]            ╘┌═°┬τ╔╧┤≥┐¬╩²╛▌┐Γ
  593. @2473 [recno]            ╚╖╢¿╝╟┬╝╓╕╒δ╦∙╓╕╧≥╝╟┬╝╡─╬∩└φ╝╟┬╝║┼
  594. @2474 [recsize]             ╚╖╢¿╩²╛▌┐Γ╓╨├┐╕÷╝╟┬╝╦∙╒╝╛▌┤┼┼╠┐╒╝Σ╡─╫╓╜┌
  595.                 │ñ╢╚
  596. @2475 [replfld]            ╢╘╫╓╢╬╕│╓╡
  597. @2476 [replvars]        ╙├└┤╫╘╣½╣▓╫╓╢╬▒Σ┴┐╡─╓╡┤·╠µ╡▒╟░╩²╛▌┐Γ╓╨╡─
  598.                 ╫╓╢╬
  599. @2477 [rlock|lock]        ╙├╘┌═°┬τ╗╖╛│╓╨╦÷╢¿╥╗╠╪╩Γ╝╟┬╝
  600. @2478 [select]            ╚╖╢¿╡▒╟░╣ñ╫≈╟°
  601. @2479 [setindex]        ╔Φ╓├╨┬╡─╦≈╥²╗≥┤≥┐¬╥╗╕÷╦≈╥²╬─╝■
  602. @2480 [used]            ╚╖╢¿╘┌╡▒╟░╣ñ╫≈╟°╓╨╩╟╖±╙╨╩²╛▌┐Γ▒╗┤≥┐¬
  603.  
  604.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  605.  
  606. .25
  607. ├ⁿ┴ε║»╩²
  608. @2501 [eval]            ╢╘╥╗╕÷┤·┬δ┐Θ╟≤╓╡
  609. @2502 [for]                ░╤╥╗╕÷║»╩²╤¡╗╖╓┤╨╨╢α┤╬
  610. @2503 [if|iif]            ╠ß╣⌐╥╗╓╓╖╜╖¿╥╘╤í╘±╩╣╙├┴╜╓╓┐╔─▄▒φ┤∩╩╜╡─╥╗╓╓
  611. @2504 [loop]            ░╤╥╗╕÷║»╩²╓┤╨╨╢α┤╬
  612. @2505 [pcount]            ╚╖╢¿┤½╡▌╕°╡▒╟░╣²│╠╗≥╙├╗º╫╘╢¿╥σ║»╩²╡─▓╬╩²╩²─┐
  613. @2506 [procline]        ╚╖╢¿╡▒╟░╓┤╨╨╣²│╠╗≥╗ε╢»╒╗╓╨╣²│╠╡─╨╨║┼
  614. @2507 [procname]        ╚╖╢¿╡▒╟░╓┤╨╨╣²│╠╗≥╗ε╢»╒╗╓╨╣²│╠╡─╣²│╠├√
  615. @2508 [qout|qqout]        ╧╘╩╛╗≥┤≥╙í▒φ┤∩╩╜
  616. @2509 [readexit]        ╘╩╨φ╗≥╜√╓╣╙├╣Γ▒Ω╔╧╥╞╝ⁿ╗≥╣Γ▒Ω╧┬╥╞╝ⁿ└┤╓╒╓╣
  617.                 ╥╗╕÷╢┴▓┘╫≈
  618. @2510 [readinsert]        ╘┌╥╗╕÷╢┴▓┘╫≈╞┌╝Σ╘╩╨φ╗≥╜√╓╣▓σ╚δ─ú╩╜
  619. @2511 [readmodal]        ╢╘╡▒╟░┐╔╝√╡─GetList ╩²╫Θ╓┤╨╨╥╗╕÷╚½╞┴─╗▒α╝¡
  620. @2512 [readvar]            ╚╖╢¿GET ╗≥MENU ├ⁿ┴ε╥└╛▌╡─╡▒╟░▒Σ┴┐├√
  621. @2513 [while]            ┬·╫π╠⌡╝■╩▒╓┤╨╨║»╩²
  622.  
  623.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  624.  
  625.  
  626.  
  627. .30
  628. ╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε
  629. @3001 [? |??]                ╜½▒φ┤∩╩╜╡─╓╡╩Σ│÷╡╜╞┴─╗╗≥┤≥╙í╗·
  630. @3002 [ú└...box]            ╘┌╞┴─╗╔╧╧╘╩╛╥╗╕÷╖╜┐≥
  631. @3003 [ú└...clear]            ╘┌╞┴─╗╔╧╟σ│■╥╗┐Θ╛╪╨╬╟°╙≥
  632. @3004[ú└... prompt]        ╘┌╞┴─╗╔╧╧╘╩╛╠ß╩╛
  633. @3005[ú└... say... get]     ╘┌╞┴─╗╗≥┤≥╙í╗·╔╧╢¿╬╗╧╘╩╛╗≥┤≥╙í╩²╛▌║═╧√╧ó
  634. @3006[ú└... to]            ╙├╙┌╗¡╥╗╕÷╡Ñ╧▀╗≥╦½╧▀╖╜┐≥╗≥╓▒╧▀
  635. @3007[accept... to]        ╜½╓▒╜╙╝ⁿ╚δ╡─┤«┤µ╚δ╥╗─┌┤µ▒Σ┴┐╓╨
  636. @3008[clear]                ╙├╡▒╟░▒│╛░╢╘╒√╕÷╞┴─╗╟σ╞┴
  637. @3009[clear gets]            ╙├╙┌╟σ│²╡▒╟░╡─GETLIST ╩²╫Θ, ╚í╧√╢╘GET ╡─╩Σ╚δ
  638. @3010[cls]                    ╟σ│²╒√╕÷╞┴─╗
  639. @3011[eject]                ╧≥┤≥╙í╗·╖ó╦═╥╗╕÷╗╗╥│├ⁿ┴ε
  640. @3012[menu to]                ╢╘╡▒╟░ú└... pormpt ├ⁿ┴ε╠ß╣⌐╥╗╕÷┴┴╠⌡▓╦╡Ñ╤í╘±
  641. @3013[read]                ╜╙╩╒▓┘╫≈╒▀╡─╩Σ╚δ
  642. @3014[restore screen]        ╗╓╕┤╞┴─╗ú¿╙├╙┌╬─▒╛ú⌐
  643. @3015[save screen]            ▒ú┤µ╞┴─╗ú¿╙├╙┌╬─▒╛ú⌐
  644. @3016[set alternate]        ╓╕╢¿╥╗╕÷╬─╝■┤µ╖┼╫≈╙├╞┌╝Σ╙├╗º╖ó│÷╡─├ⁿ┴ε╡─
  645.                     ╩Σ│÷
  646. @3017[set color]            ╙├╙┌╓╕╢¿╥╗╕÷╨┬╡─╡▒╟░╤╒╔½╔Φ╓├
  647. @3018[set confirm]            ╘╩╨φ╗≥╜√╓╣╡▒╙≥╥╤╠ε│Σ┬·╫╓╖√╩▒╣Γ▒Ω╥╞╡╜╧┬╥╗
  648.                     ╕÷GET
  649. @3019[set console]            ╙├└┤┤≥┐¬╗≥╣╪▒╒├ⁿ┴ε╡─╞┴─╗╩Σ│÷
  650. @3020[set cursor]            ╙├└┤╧╘╩╛╗≥╥■▓╪╣Γ▒Ω
  651. @3021[set delimiters]        ╙├╙┌╘╩╨φ╗≥╜√╓╣╩╣╙├╢¿╜τ╫╓╖√└┤╧▐╢¿GET ╖╜┐≥╡─▒▀
  652.                     ╜τ
  653. @3022[set device]            ╙├╙┌╓╕├≈ú└... SAY ├ⁿ┴ε╩Σ│÷╡──┐╡─╡╪
  654. @3023[set escape]            ╙├╙┌┤≥┐¬╗≥╣╪▒╒╙├ESC ╝ⁿ╓╒╓╣READ ├ⁿ┴ε╡─╣ª─▄
  655. @3024[set format]            ╙├╙┌╬¬╧┬╠⌡READ ├ⁿ┴ε╓╕╢¿╥╗╕÷╞┴─╗╕±╩╜
  656. @3025[set intensity]        ╙├╙┌╘╩╨φ╗≥╜√╓╣╙├╕▀┴┴╢╚╤╒╔½╗≥╖┤╩╙╖╜╩╜╧╘╩╛GET
  657. @3026[set margin]            ╙├╙┌╓╕╢¿┤≥╙í╩Σ│÷╩▒╡─╫≤╢╦┐╒╕±╩²─┐
  658. @3027[set message]            ╙├╙┌╔Φ╓├ú└... PROMPT ├ⁿ┴ε╓╨MESSAGE 
  659.                     ▓┐╖▌╡─╩Σ│÷╬╗╓├
  660. @3028[set printer to]         ╙├└┤╜½╦∙╙╨┤≥╙í╩Σ│÷╢¿╧≥╡╜╥╗╕÷╓╕╢¿╡─┤≥╙í┐┌
  661. @3029[set scoreboard]         ╙├╙┌╜½READ ║═MEMOEDIT() 
  662.                     ▓┘╫≈╓╨╡─╧√╧ó╧╘╩╛╘┌╞┴─╗╢Ñ╨╨
  663. @3030[set wrap]            ╙├╙┌═¿╣²╥╗┤╬╗≈╝ⁿ╩╣▓╦╡Ñ╓╨╡─╤í╘±┴┴╠⌡╠°╫¬
  664. @3031[text]                ╙├╙┌╧╘╩╛, ┤≥╙í╥╗╨╨╗≥╢α╨╨╒²╬─
  665. @3032[type]                ┤≥╙í╥╗╕÷ASCII ┬δ╬─▒╛╬─╝■╡──┌╚▌
  666. @3033[wait]                ╙├╙┌╘▌═ú╙ª╙├│╠╨≥╡─╓┤╨╨╓▒╡╜▓┘╫≈╒▀╙├╗≈╝ⁿ╧∞╙ª
  667.     
  668.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  669.  
  670. .31
  671. ╩²╛▌┐Γ├ⁿ┴ε
  672. @3101[append blank]        ╙├╙┌╘┌╩²╛▌┐Γ╡──⌐╬▓╠φ╝╙╥╗╕÷┐╒╝╟┬╝
  673. @3102[append from]        ╜½─│╕÷╩²╛▌┐Γ╝╟┬╝╢┴│÷▓ó╠φ╝╙╡╜┴φ╥╗╕÷╩²╛▌┐Γ
  674.                 ╬─╝■╓╨
  675. @3103[average]            ╙├╙┌╝╞╦π╩²╛▌┐Γ╓╨╩²╛▌└α╨═╡─╞╜╛∙╓╡
  676. @3104[clear all]        ╙├╙┌╣╪▒╒▒╕╫ó╬─╝■║═╩²╛▌┐Γ╥╘╝░╧α╙ª╡─╦≈╥²╬─╝■
  677. @3105[close]            ╙├╙┌╣╪▒╒╬─╝■║═╩═╖┼╕±╩╜╬─╝■, ╣²┬╦╞≈╥╘╝░╣╪╧╡
  678. @3106[commit]            ╨┤═Ω╩²╛▌╓«║≤╟σ│²╦∙╙╨WINBASE ╗║│σ╟°
  679. @3107[continue]        ╙├╙┌╓╪╨┬╝ñ╗ε╡▒╟░╤í╘±╣ñ╫≈╟°╓╨╡─locate ├ⁿ┴ε
  680. @3108[copy structure]    ╔·│╔╥╗╕÷╙δ╡▒╟░╩²╛▌┐Γ═Ω╚½╧α═¼╡─DBF ╬─╝■
  681. @3109[copy structure extended]    ╔·│╔░ⁿ║¼╡▒╟░╩╣╙├╬─╝■╡─╜ß╣╣╨┼╧ó╡─╩²╛▌┐Γ
  682. @3110[copy to]            ╜½╩²╛▌┐Γ╡─╚╬║╬╥╗▓┐╖▌┐╜▒┤╡╜┴φ╥╗╕÷┐Γ╬─╝■
  683. @3111[count]            ╚╖╢¿╩²╛▌┐Γ╓╨, ┬·╫π─│╕÷┬▀╝¡╠⌡╝■╡─╝╟┬╝╡─╩²─┐
  684. @3112[create]            ╔·│╔╥╗╕÷▓╗║¼╨┬╝╟┬╝╡─╨┬structure extended ╬─╝■
  685. @3113[create from]        ╜¿┴ó╥╗╕÷╨┬╡─┐Γ╬─╝■
  686. @3114[delete]            ▒Ω╝╟╔╛│²╡─╝╟┬╝
  687. @3115[display]            ╙├╙┌╧╘╩╛║═┤≥╙í╩²╛▌┐Γ╓╨╦∙╤í╝╟┬╝╡─╫╓╢╬║═╫╓
  688.                 ╢╬╦π╩╜╡─╓╡
  689. @3116[find]            ╜½╝╟┬╝╓╕╒δ╢¿╬╗╡╜╡┌╥╗╕÷╞Ñ┼Σ│╔╣ª╡─╝╟┬╝
  690. @3117[go/goto]            ╙├└┤╜½╝╟┬╝╓╕╒δ╢¿╬╗╡╜╩²╛▌┐Γ╡─╓╕╢¿╬╗╓├
  691. @3118[index]            ╢╘╥╗╕÷╩²╛▌┐Γ╓╨╡─╝╟┬╝╜°╨╨┬▀╝¡┼┼╨≥
  692. @3119[join]            ┴¼╜╙┴╜╕÷╩²╛▌┐Γ╓╨┬·╫π╠⌡╝■╡─╝╟┬╝
  693. @3120[label from]        ╩╣╙├▒Ω╟⌐╬─╝■┤≥╙í╗≥╧╘╩╛▒Ω║┼
  694. @3121[list]            ╧╘╩╛║═┤≥╙í╩²╛▌┐Γ╓╨╦∙╤í╝╟┬╝╡─╫╓╢╬║═╫╓╢╬╦π
  695.                 ╩╜╡─╓╡
  696. @3122[locate]            ░┤╠⌡╝■╘┌╩²╛▌┐Γ╓╨╤í╘±╝╟┬╝
  697. @3123[netappend blank]    ╙├╙┌╘┌═°┬τ╔╧╡─╩²╛▌┐Γ╡──⌐╬▓╠φ╝╙╥╗╕÷┐╒╝╟┬╝
  698. @3124[netappend from]    ╜½─│╕÷═°┬τ╔╧╡─╩²╛▌┐Γ╝╟┬╝╢┴│÷▓ó╠φ╝╙╡╜┴φ╥╗
  699.                 ╕÷ ═°┬τ╔╧╡─╩²╛▌┐Γ╬─╝■╓╨
  700. @3125[netdelete]        ╘┌═°┬τ╔╧╔╛│²╝╟┬╝
  701. @3126[netrecall]        ╘┌═°┬τ╔╧╗╓╕┤╥╤▒╗┬▀╝¡╔╛│²╡─╝╟┬╝
  702. @3127[netreplace]        ╘┌═°┬τ╔╧╠µ╗╗╗ε╢»╩²╛▌┐Γ╡─╫╓╢╬─┌╚▌
  703. @3128[netupdate]        ╘┌═°┬τ╔╧╙├╘┤╩²╛▌┐Γ╡──┌╚▌╕ⁿ╨┬╡▒╟░╩²╛▌┐Γ
  704. @3129[pack]            ╢╘╩²╛▌┐Γ╓╨╫≈╔╧┬▀╝¡╔╛│²▒Ω╝╟╡─╝╟┬╝╜°╨╨╬∩└φ
  705.                 ╔╛│²
  706. @3130[recall]            ╗╓╕┤╥╤▒╗┬▀╝¡╔╛│²╡─╝╟┬╝
  707. @3131[reindex]            ╓╪╜¿╡▒╟░╣ñ╫≈╟°╓╨╦∙╙╨┤≥┐¬╡─╦≈╥²╬─╝■
  708. @3132[replace]            ╠µ╗╗╗ε╢»╩²╛▌┐Γ╡─╫╓╢╬─┌╚▌
  709. @3133[report from]        ╔·│╔╙╔╕±╩╜╬─╝■┐╪╓╞╡─╩Σ│÷
  710. @3134[seek]            ╥└╛▌╓≈╦≈╥²└┤╢¿╬╗╩²╛▌┐Γ╓╨╡─╝╟┬╝
  711. @3135[select]            ╤í╘±╗ε╢»╣ñ╫≈╟°
  712. @3136[set deleted]        ╩╣┤≤▓┐╖▌WINBASE ├ⁿ┴ε║÷┬╘▒╗┬▀╝¡╔╛│²╡─╝╟┬╝
  713. @3137[set exclusive]    ╜√╓╣╗≥╘╩╨φ═°┬τ╓╨╢α╕÷╙├╗º┤≥┐¬═¼╥╗╕÷╩²╛▌┐Γ
  714. @3138[set filter]        ╘┌┬▀╝¡╔╧╣²┬╦▓╗╞Ñ┼Σ╠⌡╝■╡─╦∙╙╨╝╟┬╝íú
  715. @3139[set index]        ╘┌╡▒╟░╣ñ╫≈╟°╓╨╢└┴ó╡╪┤≥┐¬╡─╦≈╥²╬─╝■
  716. @3140[set order]        ╜½╥╗╕÷┤≥┐¬╡─╦≈╥²╬─╝■╓╕╢¿╬¬╓≈╦≈╥²╬─╝■
  717. @3141[set relation]    ╘┌┤≥┐¬╡─╩²╛▌┐Γ╓«╝Σ╢¿╥σ╣╪┴¬
  718. @3142[set softseek]    ╚╖╢¿SEEK ╤░╒╥╝╟┬╝╩º░▄║≤, ╝╟┬╝╓╕╒δ╡─╬╗╓├╔Φ╓├
  719. @3143[set unique]        ╜√╓╣╗≥╘╩╨φ╛▀╙╨╓╪╕┤╝ⁿ╓╡╡─╝╟┬╝
  720. @3144[skip]            ╜½╝╟┬╝╓╕╒δ╥╞╢»╡╜┴φ╥╗╕÷╝╟┬╝╔╧
  721. @3145[sort]            ╘┌╬∩└φ╔╧╢╘╝╟┬╝╓╪╨┬┼┼╨≥
  722. @3146[sum]                ╚╖╢¿╩²╛▌┐Γ╓╨╩²╓╡╨═╫╓╢╬╡─╫▄║═
  723. @3147[total]            ═│╝╞╓╕╢¿╡─╩²╫╓╫╓╢╬
  724. @3148[unlock]            ╩═╖┼▒╗╡▒╟░╙ª╙├│╠╨≥╦°╢¿╡─╬─╝■╗≥╝╟┬╝
  725. @3149[update]            ╙├╘┤╩²╛▌┐Γ╡──┌╚▌╕ⁿ╨┬╡▒╟░╩²╛▌┐Γ
  726. @3150[use]                ╘┌╡▒╟░╣ñ╫≈╟°╓╨┤≥┐¬╩²╛▌┐Γ║═╚╬║╬╓╕╢¿╡─╦≈╥²
  727.                     ╬─╝■
  728. @3151[zap]                ╘┌╩²╛▌┐Γ╓╨┐∞╦┘╔╛│²║═╤╣╦⌡╦∙╙╨╝╟┬╝
  729.  
  730.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  731.  
  732. .32
  733. ╩²╤º╔Φ╓├├ⁿ┴ε
  734. @3201[set decimals]    ╬¬╩²╫╓╝╞╦π╜ß╣√╜¿┴ó╥╗╕÷╚▒╩í╡─╨í╩²╛½╢╚ú¿╓╗╙├╙┌
  735.                 ╧╘╩╛ú⌐
  736. @3202[set exact]        ╓╕╢¿▒╚╜╧┴╜╕÷╫╓╖√┤«╡─╖╜╖¿
  737. @3203[set fixed]        ┐╪╓╞╩Σ│÷╩▒╡─╨í╩²╛½╢╚
  738.  
  739.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  740.  
  741. .33
  742. ╚╒╞┌╔Φ╓├├ⁿ┴ε
  743. @3301[set century]        ┐╪╓╞╩└╝═▒φ╩╛╖╜╩╜
  744. @3302[set date]        ╙├╙┌╕─▒Σ╚╒╞┌╕±╩╜
  745. @3303[set epoch]        ┐╪╓╞╚τ║╬╜Γ╩═─Ω┤·╝≥┬╘▒φ╩╛
  746.  
  747.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  748.  
  749. .34
  750. ╝ⁿ┼╠├ⁿ┴ε
  751. @3401[clear typeahead]        ╟σ│²│¼╟░╝ⁿ╚δ╗║│σ╟°╡──┌╚▌
  752. @3402[input]                ╜½╙├╗º╩Σ╚δ╓▒╜╙▓σ╚δ╥╗╕÷─┌┤µ▒Σ┴┐╓╨
  753. @3403[keyboard]            ╟σ│²│¼╟░╝ⁿ╚δ╗║│σ╟°▓ó╟╥╜½╥╗╕÷┤«╓├╚δ╗║│σ╟°╓╨
  754. @3404[set function]        ╙├└┤╢╘╣ª─▄╝ⁿ╕│╙Φ╫╓╖√┤«╓╡
  755. @3405[set key]                ╔Φ╓├╚╚╝ⁿ
  756. @3406[set typeahead]        ╓╕╢¿│¼╟░╝ⁿ╚δ╗║│σ╟°╡─┤≤╨í
  757.  
  758.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  759.  
  760. .35
  761. ╡═╝╢╬─╝■├ⁿ┴ε
  762. @3501[copy file]            ╢╘╚╬║╬└α╨═╡─╬─╝■╜°╨╨DOS ╖τ╕±╡─┐╜▒┤
  763. @3502[delete file/erase]     ┤╙┤┼┼╠╔╧╔╛│²╥╗╕÷╬─╝■
  764. @3503[dir]                    ╖╡╗╪╬─╝■┴╨▒φ
  765. @3504[rename]                ╕─▒Σ┤┼┼╠╔╧╬─╝■╡─├√│╞
  766. @3505[run]                    ╘┌WINBASE ╙ª╙├│╠╨≥╓╨╓┤╨╨DOS ├ⁿ┴ε╗≥═Γ▓┐╬─╝■
  767. @3506[set default]            ╬¬╢┴╨┤╬─╝■▓┘╫≈╓╕╢¿╥╗╕÷╚▒╩í╡─╟²╢»╞≈
  768. @3507[set path]            ╓╕╢¿╥╗╨⌐╫╙─┐┬╝
  769.  
  770.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  771.  
  772. .36
  773. ─┌┤µ▒Σ┴┐├ⁿ┴ε
  774. @3601[clear memory]    ╟σ│²╦∙╙╨╡─PUBLIC ╨═║═PRIVATE ╨═─┌┤µ▒Σ┴┐
  775. @3602[default with]    ╬¬─┌┤µ▒Σ┴┐╔Φ╢¿╚▒╩í╓╡
  776. @3603[release]            ┤╙─┌┤µ╓╨╔╛│²╦∙╤í╘±╡─▒Σ┴┐║═╩²╫Θ
  777. @3604[restore]            ╘┌─┌┤µ╓╨╓╪╨┬╗╓╕┤─┌┤µ▒Σ┴┐
  778. @3605[save]            ╜½╓╕╢¿╡──┌┤µ▒Σ┴┐╨┤╚δ╥╗╕÷╬─╝■╓╨
  779. @3606[store]            ╜¿┴ó─┌┤µ▒Σ┴┐║═╩²╫Θ╗≥╒▀╕°─┌┤µ▒Σ┴┐║═╩²╫Θ╕│╓╡
  780.  
  781.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  782.  
  783. .37
  784. ╧╡═│├ⁿ┴ε
  785. @3701[cancel|quit]        ╙├╙┌╬▐╠⌡╝■╡╪╓╒╓╣│╠╨≥
  786. @3702[note]            ╙├╙┌╜½╖╟╓┤╨╨╙∩╛Σ╖┼╚δ┤·┬δ╓╨
  787. @3703[on error do]        │÷┤φ╬≤┤ª└φ╙∩╛Σ    
  788. @3704[set bell]        ╙├╙┌┐╪╓╞┤≥┐¬╗≥╣╪▒╒╝╞╦π╗·╤∩╔∙╞≈╖ó│÷╡─├∙╜╨
  789. @3705[set procedure]    ╓╕╢¿╥╗╕÷░ⁿ║¼╣²│╠║═╙├╗º╫╘╢¿╥σ║»╩²╡─╬─╝■
  790.  
  791.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  792.  
  793. .701
  794.            @1[WinBase ▓╬┐╝╩╓▓ß]
  795.  
  796. @1701 [__pcheck ]                @1702 [__ptypes]    
  797.  
  798.  
  799. @1801 [aadd     ]                @1902 [ampm     ]
  800. @2001 [abs      ]                @2302 [appext   ]
  801. @1401 [achoice  ]                @1811 [array    ]
  802. @1802 [aclone   ]                @2202 [asc      ]
  803. @1803 [acomp    ]                   @1812 [ascan    ]
  804. @1804 [acopy    ]                  @1813 [asize    ]
  805. @1901 [addmonth ]                @1814 [asort    ]
  806. @1805 [adel     ]                @2203 [at       ]
  807. @2301 [adir     ]                  @1815 [atail    ]
  808. @1806 [aeval    ]                @2204 [atnbr    ]
  809. @2401 [afields  ]                  @1903 [atodate  ]    
  810. @1807 [afill    ]                @1816 [atodbf   ]    
  811. @1808 [ains     ]               @1817 [atorec   ]    
  812. @2402 [alias    ]                  @1601 [att      ]    
  813. @2201 [alltrim  ]               @1201 [ave_cond ]    
  814. @1809 [amax     ]                  @1202 [ave_all  ]    
  815. @1810 [amin     ]
  816.  
  817.            @1[WinBase ▓╬┐╝╩╓▓ß]
  818.            
  819. @2101 [bin2i    ]                @2005 [binshl   ]    
  820. @2102 [bin2l    ]                  @2006 [binshr   ]    
  821. @2103 [bin2w    ]                  @2007 [binxor   ]    
  822. @2002 [binand   ]                   @2403 [bof      ]        
  823. @2003 [binnot   ]                @1602 [box3d    ]    
  824. @2004 [binor    ]                  @2008 [btob     ]        
  825.  
  826. @1203 [c        ]                @2404 [closealias]
  827. @1603 [c_botton ]                @2405 [clrvars  ]    
  828. @1703 [c_clip   ]               @1906 [cmonth   ]    
  829. @1604 [c_window ]                @1706 [col      ]    
  830. @1704 [calculator]                @2206 [countchr ]    
  831. @1501 [capslock ]                @1204 [countfor ]
  832. @1502 [capsloff ]                @1205 [ctack    ]
  833. @1904 [cdow     ]                @1907 [ctod     ]
  834. @2009 [ceiling  ]                @2303 [curdir   ]    
  835. @1905 [chinesedate]                @1707 [curdrive ]    
  836. @2205 [chr      ]                @1708 [curoff   ]    
  837. @1705 [clock    ]                @1709 [curon    ]    
  838.                         @1206 [cv       ]
  839.  
  840. @2304 [d_chdir  ]                @2432 [dbsetorder]    
  841. @2305 [d_chdrv  ]                @2433 [dbsetrelat]    
  842. @2306 [d_drive  ]                @2434 [dbskip   ]    
  843. @2307 [d_mkdir  ]                @2435 [dbstruct ]    
  844. @2308 [d_path   ]                @2436 [dbunlock ]    
  845. @2309 [d_rmdir  ]                @2437 [dbunlockall]    
  846. @1207 [dage     ]                @2438 [dbusearea]    
  847. @1908 [date     ]                @2310 [defdrive ]    
  848. @1909 [dateisleap]                @1710 [delay    ]        
  849. @1208 [dates    ]                @1301 [deldlg   ]    
  850. @1910 [datetoa  ]               @2439 [deleted  ]    
  851. @1911 [datetoage]                @2311 [delfiles ]    
  852. @1912 [day      ]                @2440 [descend  ]    
  853. @1913 [daynum   ]                @1711 [devout   ]    
  854. @2406 [dbappend ]                @1712 [devpos   ]    
  855. @2407 [dbclearall]                @1713 [dial     ]        
  856. @2408 [dbclearfil]                @1714 [dialclr  ]    
  857. @2409 [dbclearind]                @1715 [dispbox  ]    
  858. @2410 [dbclearral]                @1716 [doserror ]    
  859. @2411 [dbclosearea]                @1717 [donebeep ]
  860. @2412 [dbcommit ]                @1914 [dow      ]        
  861. @2413 [dbcommitall]                @1209 [design   ]    
  862. @2414 [dbcreate ]                @2312 [dirdirs  ]    
  863. @2415 [dbcreateind]                @2313 [directory]    
  864. @2416 [dbdelete ]                @2314 [direval  ]    
  865. @2417 [dbeval   ]                @2315 [dirfiles ]    
  866. @2418 [dbf      ]                @2316 [dirtolist]    
  867. @2419 [dbfilter ]                @2317 [disksize ]    
  868. @1819 [dbftoa   ]                @2318 [diskspace]    
  869. @2420 [dbgobottom]                @2319 [disktest ]    
  870. @2421 [dbgoto   ]                @1605 [dispform ]    
  871. @2422 [dbgotop  ]                @1606 [drawbox  ]    
  872. @2423 [dbrecall ]                @1607 [drawline ]    
  873. @2424 [dbreindex]                @1608 [drawtext ]    
  874. @2425 [dbrelation]                @1609 [drawvcf  ]    
  875. @2426 [dbrselect]                @1302 [drawdlg  ]    
  876. @2427 [dbseek   ]                @1915 [dtoc     ]        
  877. @2428 [dbselectar]                @1916 [dtof     ]        
  878. @2429 [dbsetdriver]                @1917 [dtol     ]        
  879. @2430 [dbsetfilter]                @2010 [dtor     ]        
  880. @2431 [dbsetindex]                @1918 [dtos     ]        
  881.  
  882.            @1[WinBase ▓╬┐╝╩╓▓ß]
  883.  
  884. @2207 [empty     ]                @1719 [errorlevel]
  885. @2441 [eof       ]                @2501 [eval      ]    
  886. @2442 [equvars   ]                @2011 [exp       ]    
  887. @1718 [errorbeep ]
  888.  
  889. @2320 [f_comp    ]                @2340 [filetop   ]    
  890. @2321 [f_gettm   ]                @2341 [filetime  ]    
  891. @2322 [f_settm   ]                @2342 [filetouch ]    
  892. @2323 [fclose    ]                @2449 [flock     ]        
  893. @2443 [fcount    ]                @2343 [findfirst ]    
  894. @2324 [fcreate   ]                @2344 [findnext  ]     
  895. @2325 [fearse    ]                @1720 [findtsr   ]    
  896. @2326 [feof      ]                @1721 [fklabel   ]    
  897. @2327 [ferror    ]                @1722 [fkmax     ]    
  898. @2328 [fgets     ]                @2012 [floor     ]
  899. @2444 [field     ]                @1610 [fontinit  ]    
  900. @2445 [fieldblock]                @1611 [fontexit  ]    
  901. @2446 [fieldget  ]                @2345 [fopen     ]        
  902. @2447 [fieldput  ]                @2502 [for       ]        
  903. @2448 [fieldwblock]                @2450 [found     ]        
  904. @2329 [file      ]                @2346 [fputs     ]        
  905. @2330 [filebase  ]                @2347 [fread     ]        
  906. @2331 [filebottom]                @2348 [freadln   ]    
  907. @2332 [filedate  ]                @2349 [freadstr  ]    
  908. @2333 [filedrive ]                @2451 [freevars  ]    
  909. @2334 [fileeval  ]                @2350 [frename   ]    
  910. @2335 [fileext   ]                @2351 [fseek     ]        
  911. @2336 [filelen   ]                @2352 [fwrite    ]        
  912. @2337 [filepath  ]                @2353 [fwriteln  ]    
  913. @2338 [filepos   ]                @1503 [fullkey   ]    
  914. @2339 [filesize  ]                @2354 [fullpath  ]    
  915.  
  916. @1612 [g_close   ]                @1627 [g_puttmp  ]    
  917. @1613 [g_color   ]                @1628 [g_rect    ]    
  918. @1614 [g_ellips  ]                @1629 [g_rgb     ]    
  919. @1615 [g_get     ]                @1630 [g_setpixel] 
  920. @1616 [g_getpixel]                 @1631 [g_style   ]    
  921. @1617 [g_gettmp  ]                @2355 [getattr   ]    
  922. @1618 [g_init    ]                @1303 [getcond   ]    
  923. @1619 [g_lineto  ]                @1304 [getdlg    ] 
  924. @1620 [g_mappal  ]                @1723 [getenv    ]    
  925. @1621 [g_mapall  ]                @2357 [getint24  ]    
  926. @1622 [g_mode    ]                @1305 [getfile   ]    
  927. @1623 [g_moveto  ]                @2356 [getfilepath]
  928. @1624 [g_port    ]                @2358 [getpath   ]    
  929. @1625 [g_put     ]                @1632 [getrname  ]    
  930. @1626 [g_puti    ]                @1633 [getwname  ]    
  931.                          @1001 [gotowindow]
  932.  
  933.            @1[WinBase ▓╬┐╝╩╓▓ß]
  934.  
  935. @2359 [hard_chdir]                @2452 [header    ]    
  936. @2208 [hardcr    ]                @1919 [hsecond   ]    
  937.  
  938. @2104 [i2bin     ]                @2209 [isalpha   ]
  939. @2503 [if|iif    ]                @1725 [iscolor   ]
  940. @1210 [in        ]              @2210 [isdigit   ]
  941. @2453 [indexext  ]                @2360 [isdir     ]
  942. @2454 [indextext ]                @1920 [islastday ]
  943. @2455 [indexkey  ]                @2211 [islower   ]
  944. @2456 [indexord  ]                @2361 [ismemo    ]
  945. @2457 [initvars  ]                @2212 [isnumber  ]    
  946. @1724 [initline  ]                @1726 [isprint   ]
  947. @1504 [inkey     ]              @1921 [istime    ]    
  948. @1306 [inputbox  ]              @2213 [isupper   ]    
  949. @2013 [int       ]                @1727 [iswbsdos  ]    
  950. @2458 [isalias   ]              @1211 [itack     ]    
  951.  
  952. @1505 [keybd]                    @1506 [keybdbuf]    
  953.  
  954. @2105 [l2bin     ]                @1634 [loadform  ]
  955. @1922 [lastday   ]                @1635 [loadpcx   ]
  956. @2362 [lastdrive ]                @2460 [lockfile  ]
  957. @1507 [lastkey   ]                @2461 [lockrec   ]
  958. @2459 [lastrec|reccount]         @2015 [log       ]    
  959. @2214 [left      ]                @2016 [log10     ]    
  960. @2215 [len       ]                @2504 [loop      ]
  961. @2014 [lennum    ]                @2217 [lower     ]    
  962. @2216 [listtoa   ]                @1923 [lupdate   ]    
  963.                           @2218 [ltrim     ]
  964.  
  965. @1508 [m_hide    ]                @2229 [memotake  ]    
  966. @1509 [m_inbox   ]                @2230 [memotran  ]    
  967. @1510 [m_init    ]                @2231 [memowrite ]    
  968. @1511 [m_move    ]                @1730 [memvarblock]
  969. @1512 [m_press   ]                @1403 [menudel   ]    
  970. @1513 [m_rele    ]                @1404 [menuget   ]    
  971. @1514 [m_reset   ]                @1405 [menugetc  ]    
  972. @1515 [m_show    ]                @1406 [menuins   ]    
  973. @1516 [m_where   ]                @1407 [menuset   ]    
  974. @1002 [makebotton]              @1408 [menusetc  ]    
  975. @1307 [makedlg   ]                @2018 [min       ]        
  976. @1402 [makemenu  ]                @2233 [mlcount   ]    
  977. @1003 [makewindow]              @2232 [mlctopos  ]    
  978. @1636 [mappal16  ]                @2234 [mlpos     ]    
  979. @2017 [max       ]                @2235 [mpostolc  ]    
  980. @1728 [maxcol    ]              @2019 [mod       ]        
  981. @1729 [maxrow    ]              @1308 [modifydlg ]    
  982. @2219 [memoat    ]                @1924 [month     ]
  983. @2220 [memocount ]                @1517 [mouse     ]    
  984. @2221 [memodel   ]                @1518 [mousebox  ]    
  985. @2222 [memoedit  ]                @1519 [mousecol  ]    
  986. @2223 [memoins   ]                @1520 [mousein   ]    
  987. @2224 [memoline  ]                @1521 [mousekey  ]    
  988. @2462 [memopack  ]              @1522 [mouseread ]    
  989. @2225 [memorat   ]                @1523 [mouserow  ]    
  990. @2226 [memoread  ]                @1309 [msgbox    ]     
  991. @2227 [memorepl  ]                @1310 [msgshow   ]    
  992. @2228 [memory    ]              @1524 [mskeyb    ]    
  993.                                 
  994.            @1[WinBase ▓╬┐╝╩╓▓ß]
  995.            
  996. @1212 [nage      ]                @2471 [netreplfld]        
  997. @2463 [ndxcount  ]                @2472 [netuse    ]        
  998. @2464 [ndxkey    ]                @1525 [newmskeyb ]    
  999. @2465 [netappend ]                @1526 [nextkey   ]    
  1000. @2466 [netdelete ]                @1731 [nop       ]         
  1001. @2467 [neterr    ]              @1925 [ntod      ]
  1002. @2468 [netfldput ]                 @1527 [numlock   ]    
  1003. @2469 [netname   ]                @1528 [numloff   ]    
  1004. @2470 [netrecall ]                @2106 [numtostr  ]    
  1005.  
  1006. @2236 [occurs    ]                @1734 [outstd    ]    
  1007. @1732 [os        ]                @1213 [out       ]
  1008. @1733 [outerr    ]
  1009.  
  1010. @2239 [pad└α     ]                @1637 [pcx       ]
  1011. @1214 [page      ]              @1638 [pcx16     ]
  1012. @1215 [pages     ]              @1639 [pcx256    ]
  1013. @2237 [parse     ]                @1640 [pcxtype   ]
  1014. @2363 [pathparse ]                @1409 [popgetc   ]
  1015. @1735 [pause     ]                @1410 [poplist   ]
  1016. @1736 [pcol      ]                @1411 [popsetc   ]
  1017. @1737 [printcode ]                @1412 [popup     ]
  1018. @1738 [prow      ]                @2506 [procline  ]
  1019. @1739 [putstr    ]                @2507 [procname  ]
  1020. @2505 [pcount    ]              @2238 [proper    ]    
  1021.                           @1641 [putform   ]
  1022.  
  1023.            @1[WinBase ▓╬┐╝╩╓▓ß]
  1024.  
  1025. @2508 [qout|qqout]    
  1026.             
  1027. @1216 [r         ]                @1311 [removedlg ]    
  1028. @2240 [rat       ]                @1005 [removewindow]
  1029. @2241 [replicate ]                @2475 [replfld   ]
  1030. @2509 [readexit  ]              @2476 [replvars  ]    
  1031. @2510 [readinsert]              @1740 [restscreen]
  1032. @1529 [readkey   ]              @2242 [right     ]        
  1033. @2511 [readmodal ]              @2243 [rtrim     ]        
  1034. @2512 [readvar   ]              @2477 [rlock|lock]
  1035. @2473 [recno     ]              @2020 [round     ]    
  1036. @2474 [recsize   ]              @1741 [row       ]
  1037. @1818 [rectoa    ]              @2021 [rtod      ]        
  1038. @1004 [redrawwin ]              @1217 [rtack     ]
  1039.                           @1742 [runmacro  ]    
  1040.  
  1041. @1642 [saveform  ]                @1753 [setpos    ]    
  1042. @1530 [scankey   ]                @1754 [setprc    ]    
  1043. @1531 [scrollock ]                @1755 [settrace  ]    
  1044. @1532 [scrolloff ]                @1006 [shiftwindow]
  1045. @1743 [savescreen]              @2022 [sign      ]        
  1046. @1744 [scroll    ]                @2107 [soundex   ]    
  1047. @1926 [seconds   ]                @2244 [space     ]    
  1048. @1927 [sectoday  ]                @2023 [sqrt      ]
  1049. @1928 [sectotime ]                @1756 [stacknew  ]
  1050. @2478 [select    ]                @1757 [stackpop  ]
  1051. @1745 [sernum    ]                @1758 [stackpush ]
  1052. @1746 [set       ]              @1759 [stackisempty]
  1053. @2364 [setattr   ]                @1760 [stacktop  ]
  1054. @1747 [setblink  ]                @2245 [str       ]        
  1055. @1748 [setcancel ]                @2246 [strexpand ]    
  1056. @1749 [setcolor  ]                @2247 [strtran   ]    
  1057. @1750 [setcursor ]                @2248 [stuff     ]        
  1058. @1312 [setdlg    ]                @2249 [substr    ]    
  1059. @1751 [sethelp   ]                @1643 [swapcolor ]    
  1060. @1533 [sethotkey ]                @1761 [swprun    ]    
  1061. @2479 [setindex  ]                @1218 [sum_all   ]     
  1062. @2365 [setint24  ]                @1219 [sum_cond  ]    
  1063. @1534 [setkey    ]                @1220 [sumc      ]        
  1064. @1752 [setmode   ]                @1221 [sumr      ]        
  1065.  
  1066.  
  1067. @1222 [tack      ]                @1931 [timetosec ]    
  1068. @2250 [takeout   ]                @1762 [tone      ]        
  1069. @2366 [tempfile  ]                @2251 [trim      ]        
  1070. @1929 [time      ]                @2252 [type      ]        
  1071. @1930 [timediff  ]    
  1072.            
  1073.            @1[WinBase ▓╬┐╝╩╓▓ß]
  1074.  
  1075. @1007 [wbedit    ]                @1009 [window    ]
  1076. @1765 [wbhelp    ]                @1010 [windowexit]
  1077. @1766 [wbs_off   ]                @1011 [windowget ]
  1078. @1767 [wbs_on    ]                @1012 [windowsay ]
  1079. @2367 [wbsbackup ]                @1013 [windowstart]
  1080. @2513 [while     ]                @1014 [winoutput ]    
  1081. @1101 [winbrows  ]              @1015 [winscroll ]    
  1082. @1008 [winclear  ]              @1016 [wintitle  ]    
  1083.  
  1084. @1763 [updated   ]                @2480 [used      ]        
  1085. @2253 [upper     ]                @1224 [usenum    ]    
  1086. @1223 [usec      ]        
  1087.     
  1088. @2108 [val       ]                @1644 [vgaclose  ]    
  1089. @2254 [valtype   ]                @1645 [vgaopen   ]    
  1090. @1764 [version   ]    
  1091.  
  1092. @1932 [year      ]        
  1093.     
  1094.            @1[WinBase ▓╬┐╝╩╓▓ß]
  1095.  
  1096.    
  1097. .1701
  1098. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1099. @17[╧╡═│║»╩²╦≈╥²]
  1100.  
  1101. __pcheck()
  1102. ╙∩╖¿: __pcheck (<cFuncname>, <nRcount>, <nPcount>, <cPtypes>, <cRtypes>)
  1103. ╙├═╛: ╙├╙┌╝∞▓Γ║»╩²┤½╡▌╡─▓╬╩²╝░╞Σ└α╨═╡─║╧╖¿╨╘íú
  1104. ▓╬╩²:     
  1105.     <cFuncname>     ║»╩²├√╫╓╖√┤«
  1106.     <nPcount>     ╨Φ╥¬╡─▓╬╩²╕÷╩²
  1107.     <nRcount>     ╩╡╝╩╡─▓╬╩²╕÷╩²
  1108.     <cPtypes>     ╨Φ╥¬╡─▓╬╩²└α╨═┤«
  1109.     <cRtypes>     ╩╡╝╩╡─▓╬╩²└α╨═┤«
  1110.     ╩²╛▌└α╨═╢¿╥σ╚τ╧┬:
  1111.     A: ╩²╫Θ    a: ╩²╫Θ╗≥┐╒
  1112.     C: ╫╓╖√    c: ╫╓╖√╗≥┐╒
  1113.     N: ╩²╓╡    n: ╩²╓╡╗≥┐╒
  1114.     D: ╚╒╞┌    d: ╚╒╞┌╗≥┐╒
  1115.     M: ▒╕╫ó    m: ▒╕╫ó╗≥┐╒
  1116.     L: ┬▀╝¡    l: ┬▀╝¡╗≥┐╒
  1117.     X: ╚╬╥Γ└α╨═x: ╚╬╥Γ└α╨═
  1118. ╖╡╗╪╓╡:     ╬▐ú¼╚τ╣√╝∞▓Γ╡──┌╚▌▓╗║╧╖¿ú¼╜½╡»│÷┤φ╬≤╨┼╧ó┤░
  1119. ┐┌íú
  1120. └²╫╙:? __pcheck ("STR() ", 2, 3, "CNN", "CN")
  1121. ▓╬╝√ú║@1702 [__ptypes]( )
  1122.  
  1123. .1702
  1124. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1125. @17[╧╡═│║»╩²╦≈╥²]
  1126.  
  1127. __ptypes()
  1128. ╙∩╖¿: __ptypes (<aParaarray>)
  1129. ╙├═╛: ╚í<par_array> ╩²╫Θ╓╨├┐╥╗╕÷╘¬╦╪╡─└α╨═íú
  1130. ▓╬╩²: 
  1131.     <aPararray>    ┤²▓Θ╩²╫Θíú
  1132. ╖╡╗╪╓╡: <par_array> ╩²╫Θ╓╨├┐╥╗╕÷╘¬╦╪╡─└α╨═╣╣│╔╡─╫╓╖√┤«
  1133.     ╩²╛▌└α╨═╢¿╥σ╚τ╧┬:
  1134.     A: ╩²╫Θ    a: ╩²╫Θ╗≥┐╒
  1135.     C: ╫╓╖√    c: ╫╓╖√╗≥┐╒
  1136.     N: ╩²╓╡    n: ╩²╓╡╗≥┐╒
  1137.     D: ╚╒╞┌    d: ╚╒╞┌╗≥┐╒
  1138.     M: ▒╕╫ó    m: ▒╕╫ó╗≥┐╒
  1139.     L: ┬▀╝¡    l: ┬▀╝¡╗≥┐╒
  1140.     X: ╚╬╥Γ└α╨═x: ╚╬╥Γ└α╨═
  1141. └²╫╙:? __ptypes ( {"WINBASE", 1,.T.})    //╖╡╗╪"CNL"
  1142. ▓╬╝√ú║@1701 [__pcheck]( )
  1143.  
  1144. .1801
  1145. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1146. @18[╩²╫Θ║»╩²╦≈╥²]
  1147.  
  1148. aadd()
  1149. ╙∩╖¿: aadd (<aTarget>, <exp>)
  1150. ╙├═╛: └⌐│Σ╩²╫Θ, ╩╣╞Σ╘÷╝╙╘¬╦╪íú
  1151. ▓╬╩²:     
  1152.     <aTarget>    ╥¬└⌐│Σ╡─╩²╫Θ├√íú
  1153.     <exp>        ╘÷╝╙╡─╘¬╦╪íú
  1154. ╖╡╗╪╓╡: <exp> ╚τ├╗╙╨╓╕╢¿<exp> ▓╬╩², ╘≥╖╡╗╪NILíú
  1155. └²╫╙:    local my_array: = {1, 2, 3}
  1156.     aadd (my_array, 4) //my_array ╧╓╘┌╩╟{1, 2, 3, 4}
  1157.     
  1158. ▓╬╝√: @1805 [adel](), @1808 [ains](), @1813 [asize]()
  1159.  
  1160. .2001
  1161. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1162. @20[╩²╤º║»╩²╦≈╥²]
  1163.  
  1164. abs()
  1165. ╙∩╖¿: abs (<nExp>)
  1166. ╙├═╛: ╖╡╗╪╩²╤º▒φ┤∩╩╜╡─╟≤╓╡╜ß╣√╡─╛°╢╘╓╡íú
  1167. ▓╬╩²: 
  1168.     <nExp>         ▒╗╟≤╓╡╡─╩²╤º▒φ┤∩╩╜íú
  1169. ╖╡╗╪╓╡: ╩²╫╓└α╨═íú
  1170. └²╫╙:    ? abs (4-6) // ╖╡╗╪2
  1171.     ? abs (4. 3-6. 4) // ╖╡╗╪2. 1
  1172.  
  1173. .1401
  1174. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1175. @14[▓╦╡Ñ║»╩²╦≈╥²]
  1176.  
  1177. achoice()
  1178. ╙∩╖¿: achoice (<nTop>, <nLeft>, <nBottom>, <nRight>, <acMenuitems>,;
  1179.      [<alselecttableitems>], [<cUDFcontral>],;
  1180.      [nHiliteItem>], [<nWindowrow>]
  1181. ╙├═╛:     ░┤╩²╫Θ<acMenuitems> ╡──┌╚▌╔·│╔▓╦╡Ñ, ╖╡╗╪╥╗╕÷╩²╫╓╓╡, ╕├╩²╫╓╢╘
  1182. ╙ª╦∙╤í╩²╫Θ╘¬╦╪╡─╬╗╓├╨≥║┼íú
  1183. ▓╬╩²: 
  1184.     <nTop,nLeft>        ▓╦╡Ñ╫≤╔╧╜╟╨╨┴╨╫°▒Ωíú
  1185.     <nBottom,nRight>    ▓╦╡Ñ╙╥╧┬╜╟╨╨┴╨╫°▒Ωíú
  1186.     <acMenuitems>     ╣╣│╔▓╦╡Ñ╤í╘±╧ε╡─╩²╫Θíú
  1187. <alselecttableitems>    ╥╗╕÷┐╔╤í╩²╫Θ, ╞Σ╘¬╦╪╓╡╬¬.T. ╗≥.F., ╚⌠─│╘¬╦╪╓╡╬¬.F.,▒φ╩╛╞Σ╢╘╙ª╧ε
  1188. ▓╗┐╔╤ííú╚⌠╕├▓╬╩²╓╕╢¿╬¬.T. ╢°▓╗╩╟╥╗    ╩²╫Θ, ╘≥▒φ╩╛╦∙╙╨▓╦
  1189. ╡Ñ╧ε╢╝┐╔╤í; ╚⌠╕├▓╬╩²╓╕╢¿╬¬.F. ╢°▓╗╩╟╩²╫Θ╘≥╦∙╙╨▓╦╡Ñ
  1190. ╧ε╢╝▓╗┐╔╤ííú╚▒╩í╬¬.T.íú
  1191. <cUDFcontral>         ┐╪╓╞achoice() ║»╩²╢»╫≈╡─╙├╗º╫╘╢¿╥σ║»╩²íú
  1192. <nHiliteItem>     ╓╕╢¿╡▒achoice() ╞≡╢»╩▒, ╙δ▓╦╡Ñ┴┴╠⌡╡─│⌡╩╝╬╗╓├╢╘╙ª╡─╘¬╦╪
  1193. ╬╗╓├íú
  1194. <nWindowrow>     ╓╕╢¿╡▒achoice() ╞≡╢»╩▒, ╡┌╥╗╕÷╤í╘≥╧ε╙ª╖┼╓├╘┌┤░┐┌╓╨╡─╨╨
  1195. ╬╗╓├íú
  1196. ╖╡╗╪╓╡: ╡▒ESC ╝ⁿ░┤╧┬╩▒ú¼╖╡╗╪0ú¼╖±╘≥╖╡╗╪▓╦╡Ñ╧ε─┐╨≥║┼íú
  1197. └²╫╙:// ─ú─Γ╥╗╕÷╡»│÷╩╜▓╦╡Ñ▓┘╫≈
  1198.  #include "winbase.inc"
  1199. procedure main()
  1200. local myarray: = {"one", "two", "three"}, choice
  1201. windowstart()
  1202. makewindow (9, 9, 13, 21, "First", 1, 1, 1)
  1203. choice: =achoice (10, 10, 12, 20, myarray) // ╔·│╔▓╦╡Ñ, ╖╡╗╪╥╗╕÷╩²╫╓╓╡
  1204. do case
  1205.     case choice=0 //ESC ╝ⁿ▒╗░┤╧┬
  1206.         quit
  1207.     case choice=1
  1208.             ? myarray [choice]
  1209.     case choice=2
  1210.     ? myarray [choice]
  1211.         case choice=3
  1212.         ? myarray [choice]
  1213.     endcase
  1214. inkey (0)    
  1215. windowexit()
  1216. return
  1217.  
  1218. ▓╬╝√: @1412 [popup](), @1410 [poplist]()
  1219.  
  1220. .1802
  1221. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1222. @18[╩²╫Θ║»╩²╦≈╥²]
  1223.  
  1224. aclone()
  1225. ╙∩╖¿: aclone (<aSourceArray>)
  1226. ╙├═╛:     ╔·│╔╓╕╢¿╩²╫Θ╡─╥╗╕÷┐╜▒┤╩²╫Θ, ╘┤╩²╫Θ╡─╘¬╦╪┐╔
  1227. ╥╘╩╟╥╗╕÷╫╙╩²╫Θíú
  1228. ▓╬╩²:
  1229.     <aSourceArray>     ╘┤╩²╫Θíú
  1230. ╖╡╗╪╓╡: ╩²╫Θ└α╨═
  1231. └²╫╙:    array1: = {12, {"as", 2}, 2}
  1232.     array2: =aclone (array1) //array2 ╧╓╘┌╩╟{12, {"as", 2}, 2}
  1233.     
  1234. ▓╬╝√: @1804 [acopy]()
  1235.  
  1236. .1803
  1237. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1238. @18[╩²╫Θ║»╩²╦≈╥²]
  1239.  
  1240. acomp()
  1241. ╙∩╖¿: acomp (<aArray>, <bCompblock>, <nStart>, <nStop>)
  1242. ╙├═╛: ╢╘╩²╫Θ╓╨╡─╧α┴┌╘¬╦╪╕∙╛▌▒╚╜╧┤·┬δ┐ΘbCompblock ╟≤╓╡
  1243.     ╥╘╧┬┤·┬δ┐Θ╥╤╘┌Winbase. inc ╓╨╢¿╥σ:
  1244.     AC_MAX     ╟≤╩²╓╡╫ε┤≤╓╡┤·┬δ┐Θ
  1245.     AC_MIN     ╟≤╩²╓╡╫ε╨í╓╡┤·┬δ┐Θ
  1246.     AC-MAXLEN     ╟≤╩²╫Θ╓╨╘¬╦╪│ñ╢╚╫ε┤≤╓╡┤·┬δ┐Θ
  1247.     AC_MINLEN     ╟≤╩²╫Θ╓╨╘¬╦╪│ñ╢╚╫ε╨í╓╡┤·┬δ┐Θ
  1248. ▓╬╩²:     
  1249.     <aArray>        ┤²▒╚╜╧╩²╫Θíú
  1250.     <bCompblock>     ▒╚╜╧┤·┬δ┐Θíú
  1251.     <nStart>        ┐¬╩╝▒╚╜╧╡─╘¬╦╪╡─╨≥║┼íú
  1252.     <nStop>         ╜ß╩°▒╚╜╧╡─╘¬╦╪╡─╨≥║┼íú
  1253. ╖╡╗╪╓╡: compblock ╡─╓┤╨╨╜ß╣√
  1254. └²╫╙:    arr: = {8, 9, 3, 6, 1, 4, 10}
  1255.     ? acomp (arr, AC_MAX, 1, 5)
  1256.     inkey (0)
  1257.  
  1258. .1804
  1259. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1260. @18[╩²╫Θ║»╩²╦≈╥²]
  1261.  
  1262. acopy()
  1263. ╙∩╖¿: acopy (<aSource>, <aTarget>, [<nStart>], [<nCount>], [<nTargetpos>])
  1264. ╙├═╛: ╜½╥╗╕÷╩²╫Θ╓╨╡─╘¬╦╪┐╜▒┤╡╜┴φ╥╗╕÷╩²╫Θ╓╨╚Ñíú
  1265. ▓╬╩²:     
  1266. <aSource>    ╘┤╩²╫Θíú
  1267. <aTarget>     ─┐▒Ω╩²╫Θíú
  1268. <nStart>     ╘┤╩²╫Θ┐╜▒┤┐¬╩╝╡─╘¬╦╪╞≡╩╝╬╗╓├, ╚▒╩í╓╡╬¬1íú
  1269. <nCount>     ┐╜▒┤╡─╘¬╦╪╕÷╩², ╚▒╩í╘≥╘┤╩²╫Θ╦∙╙╨╘¬╦╪╢╝╜½▒╗┐╜▒┤íú
  1270.  
  1271. <nTargetpos>     ─┐▒Ω╩²╫Θ╓╨╘¬╦╪┤µ╖┼╡─╞≡╩╝╬╗╓├íú
  1272. ╖╡╗╪╓╡: ╩²╫Θ└α╨═ú╗╨┬╨╬│╔╡─╩²╫Θíú 
  1273. └²╫╙:     ar1: = {1, 3, 2, 45, 2}
  1274.     ar2: = {7, 8}
  1275.     acopy (ar1, ar2, 2, 3, 1) //ar2 ╧╓╘┌╩╟{3, 2, 45}
  1276. ▓╬╝√: @1802 [aclone]()
  1277.  
  1278. .1901
  1279. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1280. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  1281.  
  1282. addmonth()
  1283. ╙∩╖¿: addmonth (<dDate>, <nMonths>)
  1284. ╙├═╛: ╟≤╓╕╢¿╚╒╞┌╡─nMonths ╕÷╘┬║≤╡─╚╒╞┌
  1285. ▓╬╩²:     
  1286.     <dDate>         ╓╕╢¿╡─╚╒╞┌íú
  1287.     <nMonths>         ╘÷╝╙╡─╘┬╩²íú
  1288. ╖╡╗╪╓╡: nMonths ╕÷╘┬║≤╡─╚╒╞┌
  1289. └²╫╙:? addmonth ("date() ", 10)
  1290.  
  1291. ▓╬╝√: @1924 [month]( )
  1292.  
  1293. .1805
  1294. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1295. @18[╩²╫Θ║»╩²╦≈╥²]
  1296.  
  1297. adel()
  1298. ╙∩╖¿: adel (<aTarget>, <nPos>)
  1299. ╙├═╛: ┤╙╩²╫Θ╓╨╔╛╚Ñ╓╕╢¿╨≥║┼╡─╘¬╦╪íú
  1300. ▓╬╩²:     
  1301.     <aTarget>     ╥¬╔╛╚Ñ╘¬╦╪╡─╩²╫Θ├√íú
  1302.     <nPos>     ╔╛╚Ñ╘¬╦╪╘┌╩²╫Θ╓╨╡─╨≥║┼íú
  1303. ╖╡╗╪╓╡: ╩²╫Θ└α╨═
  1304. └²╫╙:     ar: = {1, 3, 2, 45, 2}
  1305.     adel (ar, 3) //ar ╧╓╘┌╩╟{1, 3, 45, 2}
  1306.     
  1307. ▓╬╝√: @1807 [afill](), @2215 [len](), @1808 [ains]( ), @1813 [asize]( )
  1308.  
  1309. .2301
  1310. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1311. @23[╡═╝╢╬─╝■║═┤┼┼╠║»╩²╦≈╥²]
  1312.  
  1313. adir()
  1314. ╙∩╖¿: adir ( [<cFileSpec>], [<aFileNames>], [<aSizes>];
  1315.      [<aDates>], [<aTimes>], [<aAttributes>])
  1316. ╙├═╛:     ╖╡╗╪╓╕╢¿─┐┬╝╓╨╡─╬─╝■╩²─┐▓ó░╤╒╥╡╜╡─╬─╝■
  1317. ├√║═╬─╝■╩⌠╨╘┤µ╚δ╥╗╕÷╩²╫Θíú
  1318. ▓╬╩²:  
  1319. <cFileSpec>    ╘┌╡▒╟░─┐┬╝╓╨▓Θ╒╥╡──┐┬╝║═╬─╝■╦╡├≈íú╚▒╩í╡─╦╡
  1320. ├≈╬¬*. *íú
  1321. <aFileNames>    ╙├└┤┤µ╖┼╒╥╡╜╡─╬─╝■├√╡─╥╗╕÷╩²╫Θíú
  1322. <aSizes>      ╥╗╕÷╩²╫Θ, ╙├└┤┤µ╖┼╙δ<cFileSpec> ▓╬╩²╦∙╓╕╢¿─ú╩╜╧α╞Ñ┼Σ╡─╬─
  1323. ╝■╡─╫╓╜┌│ñ╢╚íú
  1324. <aDates>         ╥╗╕÷╩²╫Θ, ╙├└┤┤µ╖┼╙δ<cFileSpec> ▓╬╩²╦∙╓╕╢¿─ú╩╜╧α╞Ñ┼Σ╡─╬─
  1325. ╝■╡─╫ε║≤╨▐╕─╚╒╞┌íú├┐╕÷╘¬╦╪╢╝╩╟╚╒╞┌└α╨═íú
  1326. [<aTimes>]     ╥╗╕÷╩²╫Θ, ╙├└┤┤µ╖┼╙δ<cFileSpec> ▓╬╩²╦∙╓╕╢¿─ú╩╜╧α╞Ñ┼Σ╡─╬─
  1327. ╝■╡─╫ε║≤╨▐╕─╩▒╝Σíú├┐╕÷╘¬╦╪╢╝╩╟╫╓╖√└α╨═íú
  1328. [<aAttributes>]    ╥╗╕÷╩²╫Θ, ╙├└┤┤µ╖┼╙δ<cFileSpec> ▓╬╩²╦∙╓╕╢¿─ú╩╜╧α╞Ñ┼Σ╡─╬─
  1329. ╝■╡─DOS ╩⌠╨╘(A- ╡╡░╕, D- ─┐┬╝, H- ╥■▓╪, R- ╓╗╢┴,S-╧╡═│)íú
  1330. ╖╡╗╪╓╡: ╩²╫╓└α╨═, ╖╡╗╪╓╕╢¿─┐┬╝╓╨╡─╬─╝■╩²─┐    
  1331. ╦╡├≈: ╘┌╜½╬─╝■╠ε╚δ╩²╫Θ╓«╟░, ▒╪╨Φ╧╚╜¿┴ó╒Γ╨⌐╩²╫Θíú
  1332. // ╜½╕∙─┐┬╝╧┬╡─prg ╬─╝■╨┼╧ó┤µ╚δ╩²╫Θ▓ó╧╘╩╛
  1333. └²╫╙: procedure fileshow()
  1334. private arn: =arl: =ard: =art: =ara: = {}
  1335.     ar_len: =adir ("c: \*. prg", arn, arl, ard, art, ara)
  1336.     for i=1 to ar_len
  1337.     ú└ 10, 10 say arn [i] // ╧╘╩╛╬─╝■├√
  1338.     ú└ 11, 10 say arl [i] // ╧╘╩╛╬─╝■╡─╫╓╜┌│ñ╢╚
  1339.     ú└ 12, 10 say ard [i] // ╧╘╩╛╬─╝■╡─╫ε║≤╨▐╕─╚╒╞┌
  1340.     ú└ 13, 10 say art [i] // ╧╘╩╛╬─╝■╡─╫ε║≤╨▐╕─╩▒╝Σ
  1341.     ú└ 14, 10 say ara [i] // ╧╘╩╛╬─╝■╡─DOS ╩⌠╨╘
  1342.     inkey (0)
  1343.     next i
  1344.     return
  1345.  
  1346. ▓╬╝√: @2313 [directory](), @2401 [afields](), @2315 [dirfiles]( ), @2316 [dirtolist]( )
  1347.  
  1348. .1806
  1349. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1350. @18[╩²╫Θ║»╩²╦≈╥²]
  1351.  
  1352. aeval()
  1353. ╙∩╖¿: aeval (<aArray>, <bBlock>, [<nStart>], [<cCount>])
  1354. ╙├═╛: ▒Θ└·╩²╫Θ, ▓ó╘┌╕├╩²╫Θ╡─├┐╕÷╘¬╦╪╔╧╢╘┤·┬δ┐Θ╟≤
  1355. ╓╡íú
  1356. ▓╬╩²:     
  1357.     <aArray>     ▒╗▒Θ└·╡─╩²╫Θ├√íú
  1358.     <bBlock>     ╢╘╩²╫Θ╡─├┐╕÷╘¬╦╪╔╧╟≤╓╡╡─┤·┬δ┐Θíú
  1359.     <nStart>     ╩²╫Θ╓╨╞≡╩╝╡─╟≤╓╡╘¬╦╪╨≥║┼íú╚▒╩í╬¬1íú
  1360. <cCount>     ╟≤╓╡╡─╘¬╦╪╕÷╩²íú╚▒╩í╬¬╩²╫Θ╓╨┤╙<nStart> ┐¬╩╝╡─╦∙╙╨╘¬
  1361. ╦╪íú
  1362. ╖╡╗╪╓╡: ╩²╫Θ└α╨═
  1363. ╦╡├≈:     aeval() ║»╩²▓╗╣╪╨─╩²╫Θ╓╨╘¬╦╪╡─╩²╛▌└α╨═, ╦∙╥╘╩╣╙├╓╨
  1364. ┤·┬δ┐Θ<bBlock> ╙ª─▄┤ª└φ╩²╫Θ╓╨│÷╧╓╡─╦∙╙╨╩²╛▌└α╨═íú
  1365. └²╫╙:    // ╘┌╧┬├µ└²╫╙╓╨, ╧╚╦╤╦≈╡┌╥╗╕÷╩²╫Θ, ╜½╞Σ╓╨╓╡┤≤╙┌8 ╡─
  1366. ╘¬╦╪┐╜▒┤╡╜    //╡┌╢■╕÷╩²╫Θ    
  1367.      cls
  1368.     aray: = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
  1369.     bray: = {}
  1370.     aeval (aray, {|no|if (no>8, aadd (bary, no), nil)})
  1371.     ? len (bray) // ╜ß╣√╩╟2
  1372.     aeval (bray, {|var|qout (var)}) //bray ╧╓╘┌╩╟{9, 10}
  1373.     
  1374. ▓╬╝√: @2417 [dbeval](), @2501 [eval]()        
  1375.  
  1376. .2401
  1377. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1378. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  1379.  
  1380. afields()
  1381. ╙∩╖¿: afields ( [<aFieldNames>], [<aTypes>], [<aWidths>], [aDecimals>])
  1382. ╙├═╛: ╜½╡▒╟░╩²╛▌┐Γ╬─╝■╡─╫╓╢╬─┌╚▌╠ε╚δ╩²╫Θíú
  1383. ▓╬╩²:     
  1384.     [<aFieldNames>]    ┤µ╖┼╫╓╢╬├√╡─╩²╫Θíú
  1385.      [<aTypes>]         ┤µ╖┼╫╓╢╬└α╨═╡─╩²╫Θíú
  1386.      [<aWidths>]         ┤µ╖┼╫╓╢╬┐φ╢╚╡─╩²╫Θíú
  1387. [aDecimals>]         ┤µ╖┼╩²╫╓╫╓╢╬╓╨╨í╩²╬╗╩²╡─╩²╫Θ, ╢╘╖╟╩²╫╓╫╓╢╬╖┼
  1388. ╚δ0íú
  1389. ╖╡╗╪╓╡: ╩²╫╓└α╨═, afields() ║»╩²╖╡╗╪╫╓╢╬╩²─┐íú
  1390. ╦╡├≈: ╘┌└⌐╒╣╜ß╣╣╨┼╧ó╠ε╚δ╩²╫Θ╟░, ▒╪╨δ╧╚╜¿┴ó╒Γ╨⌐╩²
  1391. ╫Θíú
  1392. └²╫╙:// ╜½╩²╛▌┐Γmy ╓╨╫╓╢╬╨┼╧ó╠ε╚δ╩²╫Θ╓╨▓ó╧╘╩╛
  1393.     use my
  1394.     afield (aF, aT, aW, aD)
  1395.     for i=1 to afield()
  1396.         ? aF [i], aT [i], aW [i], aD [i]
  1397.     next i
  1398.  
  1399. ▓╬╝√: @2313 [directory](), @2443 [fcount]()        
  1400.  
  1401. .1807
  1402. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1403. @18[╩²╫Θ║»╩²╦≈╥²]
  1404.  
  1405. afill()
  1406. ╙∩╖¿: afill (<aTarget>, <exp>, [<nStart>], [<nCount>])
  1407. ╙├═╛: ╜½╓╕╢¿╡─╓╡╕│╕°╘┌╩²╫Θ╓╨╤í╘±╡─╘¬╦╪íú
  1408. ▓╬╩²:    
  1409.     <aTarget>     ▒╗╕│╓╡╡─╩²╫Θ├√íú
  1410.     <exp>         ╕│╕°╘¬╦╪╡─╓╡íú
  1411.     <nStart>     ╞≡╩╝╘¬╦╪╨≥║┼íú
  1412.     <nCount>     ╥¬╕│╓╡╡─╘¬╦╪╩²─┐íú
  1413.         ╚⌠║≤┴╜▓╬╩²╚▒╩í, ╘≥╩²╫Θ<aTarget> ╦∙╙╨╘¬╦╪╢╝▒╗╕│╓╡<exp>íú
  1414. ╖╡╗╪╓╡: ╩²╫Θ└α╨═
  1415. └²╫╙: local myarray [3]
  1416. afill (myarray, "good") //myarray ╧╓╘┌╩╟{"good", "good", "good"}
  1417.  
  1418. ▓╬╝√: @1801 [aadd](), @1806 [aeval](), @1808 [ains]( ), @1805 [adel]( )
  1419.  
  1420. .1808
  1421. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1422. @18[╩²╫Θ║»╩²╦≈╥²]
  1423.  
  1424. ains()
  1425. ╙∩╖¿: ains (<aTarget>, <nPos>)
  1426. ╙├═╛: ╘┌╩²╫Θ╓╨▓σ╚δ╥╗╓╡╬¬nil ╡─╘¬╦╪íú
  1427. ▓╬╩²:    
  1428.     <aTarget>     ▒╗▓σ╚δ╘¬╦╪╡─╩²╫Θ├√íú
  1429.     <nPos>     ▓σ╚δ╘¬╦╪╡─╨≥║┼íú
  1430. ╫ó: ains ▓ó▓╗╘÷╝╙╩²╫Θ╘¬╦╪╩²─┐íú
  1431. ╖╡╗╪╓╡: ╩²╫Θ└α╨═íú
  1432. └²╫╙: myarray: = {1, 3, 2, 45, 2}
  1433.     ains (myarray, 2) //myarray ╧╓╘┌╩╟{1, nil, 3, 2, 45}
  1434.     
  1435. ▓╬╝√: @1801 [aadd](), @1805 [adel](), @2215 [len]()    ,@1813 [asize]( )
  1436.  
  1437. .2402
  1438. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1439. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  1440.  
  1441. alias()
  1442. ╙∩╖¿: alias (<nWorkArea>)
  1443. ╙├═╛: ╚╖╢¿╥╤┤≥┐¬╩²╛▌┐Γ╡─▒≡├√íú
  1444. ▓╬╩²: 
  1445. <nWorkArea>     ╥¬╝∞▓Θ╡─╣ñ╫≈╟°║┼íú▓╗┤°▓╬╩²╡─alias() ║»╩²╜½╖╡╗╪╡▒╟░
  1446. ╗ε╢»╣ñ╫≈╟°╡─▒≡├√íú
  1447. ╖╡╗╪╓╡: ╫╓╖√└α╨═íú
  1448. ╦╡├≈:     ╚τ┤≥┐¬╥╗╕÷╩²╛▌┐Γ╩▒├╗╙╨╓╕╢¿▒≡├√, ╘≥alias() ║»╩²╜½╖╡
  1449. ╗╪┤≥┐¬╩²╛▌┐Γ╡─├√│╞íú╚τ╘┌╓╕╢¿╡─╣ñ╫≈╟°╓╨├╗╙╨
  1450. ╬─╝■▒╗┤≥┐¬, ╘≥alias() ║»╩²╜½╖╡╗╪╥╗╕÷┐╒┤«íú
  1451. └²╫╙:     select 1
  1452.     use my
  1453.     select 2
  1454.     use key alias said
  1455.     select 3
  1456.     ? alias (2) // ╖╡╗╪said
  1457.     ? alias (1) // ╖╡╗╪my
  1458.     ? alias() // ╖╡╗╪╥╗┐╒┤«
  1459.     
  1460. ▓╬╝√: @2438 [dbusearea](), @3135[select], @3150[use], @2418 [dbf]( )
  1461.  
  1462. .2201
  1463. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1464. @22[╫╓╖√┤«║»╩²╦≈╥²]
  1465.  
  1466. alltrim()
  1467. ╙∩╖¿: alltrim (<cString>)
  1468. ╙├═╛: ╔╛│²╫╓╖√┤«╓╨╡─╟░╡╝┐╒╕±║═╬▓▓┐┐╒╕±íú
  1469. ▓╬╩²: 
  1470.     <cString>     ╥¬╔╛│²╟░╡╝┐╒╕±║═╬▓▓┐┐╒╕±╡─╫╓╖√┤«íú
  1471. ╖╡╗╪╓╡: ╫╓╖√└α╨═íú
  1472. └²╫╙:     temp: =" my program "
  1473.      temp: =alltrim (temp)     // ╩╣temp = " my program"
  1474.     
  1475. ▓╬╝√: @2243 [rtrim](), @2218 [ltrim]()
  1476.  
  1477. .1809
  1478. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1479. @18[╩²╫Θ║»╩²╦≈╥²]
  1480.  
  1481. amax()
  1482. ╙∩╖¿: amax (<aArray>)
  1483. ╙├═╛: ╟≤╩²╫Θ╓╨╫ε┤≤╘¬╦╪╦∙╘┌╡─╬╗╓├íú
  1484. ▓╬╩²: 
  1485.     <aArray>     ╩²╓╡╩²╫Θíú
  1486. ╖╡╗╪╓╡: ╩²╓╡íú
  1487. └²╫╙:? amax ( {3, 9, 4, 1, 8})    //╖╡╗╪2
  1488.  
  1489. .1810
  1490. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1491. @18[╩²╫Θ║»╩²╦≈╥²]
  1492.  
  1493. amin()
  1494. ╙∩╖¿: amin (<aArray>)
  1495. ╙├═╛: ╟≤╩²╫Θ╓╨╫ε╨í╘¬╦╪╦∙╘┌╡─╬╗╓├íú
  1496. ▓╬╩²: 
  1497.     <aArray>    ╩²╓╡╩²╫Θíú
  1498. ╖╡╗╪╓╡: ╩²╓╡íú
  1499. └²╫╙:? amin ( {3, 9, 4, 1, 8})    //╖╡╗╪4
  1500.  
  1501. .1902
  1502. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1503. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  1504.  
  1505. ampm()
  1506. ╙∩╖¿: ampm (<cTime>)
  1507. ╙├═╛: ╗±╡├┤°╙╨am ╗≥pm ╡─╩▒╝Σ╫╓╖√┤«, ╥╘▒Ω╩╢╩╟╘τ╔╧╗╣╩╟╧┬
  1508. ╬τíú
  1509. ▓╬╩²: 
  1510.     <cTime>    ╩▒╝Σ┤«íú
  1511. ╖╡╗╪╓╡: ╩▒╝Σ╫╓╖√┤«íú
  1512. └²╫╙:? ampm (time())
  1513.  
  1514. .2302
  1515. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1516. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  1517.  
  1518. appext()
  1519. ╙∩╖¿: appext (<cName>, <cExt>)
  1520. ╙├═╛: ╕─▒Σ╬─╝■├√╡─║≤╫║íú
  1521. ▓╬╩²: 
  1522.     <cName>     ╥¬╕─▒Σ║≤╫║╡─╬─╝■├√íú
  1523.     <cExt>     ╨┬║≤╫║íú
  1524. ╖╡╗╪╓╡: ╫╓╖√└α╨═, ╖╡╗╪╛▀╙╨╨┬║≤╫║╡─╬─╝■├√
  1525. └²╫╙:? appext ("my1. txt", "prg") // ╞┴─╗╩Σ│÷my1. prg
  1526.  
  1527. .1811
  1528. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1529. @18[╩²╫Θ║»╩²╦≈╥²]
  1530.  
  1531. array()
  1532. ╙∩╖¿: array (<nlength> [, <nlength>...])
  1533. ╙├═╛: ╜¿┴ó╩²╫Θíú
  1534. ▓╬╩²: 
  1535.     <nlength>    ╩²╫Θ╓╨╧α╙ª╬¼╡─╘¬╦╪╕÷╩²(nlength< = 4096)íú
  1536. ╖╡╗╪╓╡: ╩²╫Θ└α╨═íú
  1537. └²╫╙: ar1: =array (30, 100) // ╜¿┴ó╥╗╕÷┴╜╬¼╩²╫Θar1 [30] [100]
  1538.  
  1539. ▓╬╝√: @1801 [aadd](), @1805 [adel](), @1807 [afill](), @1808 [ains]()
  1540.  
  1541. .2202
  1542. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1543. @22[╫╓╖√┤«║»╩²╦≈╥²]
  1544.  
  1545. asc()
  1546. ╙∩╖¿: asc (<cExp>)
  1547. ╙├═╛: ╚╖╢¿╫╓╖√┤«╓╨╡┌╥╗╕÷╫╓╖√╡─ASCII ┬δ╓╡íú
  1548. ▓╬╩²: 
  1549. <cExp>         ╥¬╚╖╢¿╡┌╥╗╕÷╫╓╖√╡─ASCII ┬δ╓╡╡─╫╓╖√┤«íú
  1550. ╖╡╗╪╓╡: ╩²╫╓└α╨═íú
  1551. └²╫╙:? asc ("") // ╖╡╗╪0
  1552. ? asc ("b") // ╖╡╗╪98
  1553. ? asc ("edc") // ╖╡╗╪101    
  1554.  
  1555. ▓╬╝√: @2205 [chr](), @1504 [inkey]()
  1556.  
  1557. .1812
  1558. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1559. @18[╩²╫Θ║»╩²╦≈╥²]
  1560.  
  1561. ascan()
  1562. ╙∩╖¿: ascan (<aTarget>, <exp>, [<nStart>], [<nCount>])
  1563. ╙├═╛:     ╘┌┤╙╩²╫Θ╓╨╔¿├Φ╘¬╦╪, ╦╤╦≈╡┌╥╗╕÷╙δ╓╕╢¿╓╡╞Ñ┼Σ
  1564. ╡─╘¬╦╪íú╚⌠║≤┴╜╕÷▓╬╩²├╗╓╕╢¿, ╘≥╒√╕÷╩²╫Θ▒╗╔¿├Φíú
  1565. ▓╬╩²:
  1566.     <artget>     ▒╗╔¿├Φ╡─╩²╫Θ├√íú
  1567.     <exp>         ╔¿├Φ╡─╓╡íú
  1568.     <nStart>     ╞≡╩╝╘¬╦╪╨≥║┼íúíú
  1569.     <nCount>     ╥¬╔¿├Φ╡─╘¬╦╪╩²─┐
  1570. ╖╡╗╪╓╡: ╩²╫╓└α╨═, ╚⌠▓╗┤µ╘┌╞Ñ┼Σ╡─╘¬╦╪, ╘≥╖╡╗╪0íú
  1571. └²╫╙:     myarray: = {1, 3, 2, 45, 2}
  1572.     sign: =ascan (myarray, 2)
  1573.     ? sign // ╜ß╣√╩╟3
  1574. ▓╬╝√: @3122[locate], @3202[set exact]    
  1575.  
  1576. .1813
  1577. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1578. @18[╩²╫Θ║»╩²╦≈╥²]
  1579.  
  1580. asize()
  1581. ╙∩╖¿: asize (<aTarget>, <nLength>)
  1582. ╙├═╛: ╕─▒Σ╩²╫Θ╡─╘¬╦╪╩²─┐íú
  1583. ▓╬╩²:     
  1584.     <aTarget>     ▒╗╕─▒Σ╘¬╦╪╩²─┐╡─╩²╫Θ├√íú
  1585.     <nLength>     ╨┬╡─╘¬╦╪╩²─┐íú
  1586. ╖╡╗╪╓╡: ╩²╫Θ└α╨═íú
  1587. └²╫╙:     myarray: = {1, 3, 2, 45, 2}
  1588.     asize (myarray, 2) //myarray ╧╓╘┌╩╟{1, 3}
  1589.     
  1590. ▓╬╝√: @1801 [aadd](), @1805 [adel](), @1808 [ains]()
  1591.  
  1592. .1814
  1593. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1594. @18[╩²╫Θ║»╩²╦≈╥²]
  1595.  
  1596. asort()
  1597. ╙∩╖¿: asort (<aTarget>, [<nStart>], [<nCount>], [bOrder])
  1598. ╙├═╛: ╢╘╩²╫Θ╓╨╡─╘¬╦╪┼┼╨≥íú
  1599. ▓╬╩²:    
  1600.     <aTarget>     ╥¬┼┼╨≥╡─╩²╫Θ├√íú
  1601.     <nStart>     ╞≡╩╝╘¬╦╪╨≥║┼íú
  1602.     <nCount>     ╥¬┼┼╨≥╡─╘¬╦╪╩²─┐íú
  1603.     <bOrder>     ╠ß╣⌐┼┼╨≥╦π╖¿╡─┤·┬δ┐Θ, ╚▒╩í╬¬╔²╨≥íú
  1604. ╖╡╗╪╓╡: ╩²╫Θ└α╨═íú
  1605. └²╫╙: myarray: = {1, 3, 2, 45, 2}
  1606.     asort (myarray, 2, 3) //myarray ╧╓╘┌╩╟{1, 2, 3, 45, 2}
  1607.     
  1608. ▓╬╝√: @3145[sort to], @1812 [ascan](), @1806 [aeval]()    
  1609.  
  1610. .2203
  1611. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1612. @22[╫╓╖√┤«║»╩²╦≈╥²]
  1613.  
  1614. at()
  1615. ╙∩╖¿: at (<cString>, <cTarget>)
  1616. ╙├═╛: ╚╖╢¿╥╗╕÷╓╕╢¿╡─╫╙┤«╘┌░ⁿ║¼╕├╫╙┤«╡─╫╓╖√┤«
  1617. (─╕┤«) ╓╨╡─╬╗╓├íú
  1618. ▓╬╩²:    
  1619.     <cString>     ─╕┤«íú
  1620.     <cTarget>     ╓╕╢¿╡─╫╙┤«íú
  1621. ╖╡╗╪╓╡: ╩²╫╓└α╨═íú
  1622. └²╫╙:     t1: ="as"
  1623.     st: ="do as this? "
  1624.     ? at (t1, st) // ╖╡╗╪4
  1625.     
  1626. ▓╬╝√: @2240 [rat](), @2249 [substr]()
  1627.  
  1628. .1815
  1629. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1630. @18[╩²╫Θ║»╩²╦≈╥²]
  1631.  
  1632. atail()
  1633. ╙∩╖¿: atail (<aTarget>)
  1634. ╙├═╛: ╖╡╗╪╩²╫Θ╡─╫ε╕▀╨≥║┼╡─╘¬╦╪╓╡íú
  1635. ▓╬╩²: 
  1636.     <aTarget>     ╥¬╖╡╗╪╫ε╕▀╨≥║┼╡─╘¬╦╪╓╡╡─╩²╫Θ├√íú
  1637. ╖╡╗╪╓╡: ╘¬╦╪╓╡ú¼╡▒╫ε╕▀╨≥║┼╩╟╩²╫Θ╩▒╖╡╗╪┐╒íú
  1638. └²╫╙:     myarray: = {1, 3, 2, 45, 2}
  1639.     temp: =atail (myarray) // ╖╡╗╪2
  1640.     
  1641. ▓╬╝√: @1801 [aadd]()
  1642.  
  1643. .2204
  1644. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1645. @22[╫╓╖√┤«║»╩²╦≈╥²]
  1646.  
  1647. atnbr()
  1648. ╙∩╖¿: atnbr (<cOldstr>, <cChar>, <n>)
  1649. ╙├═╛: ▓Θ╒╥─│╫╓╖√╘┌╫╓╖√┤«╓╨╡┌n ┤╬│÷╧╓╡─╬╗╓├íú
  1650. ▓╬╩²:    
  1651.     <cOldstr>     ╫╓╖√┤«íú
  1652.     <cChar>     ▓Θ╒╥╡─╫╓╖√íú
  1653.     <n>        ╡┌n ┤╬íú
  1654. ╖╡╗╪╓╡: │╔╣ª╖╡╗╪│÷╧╓╬╗╓├, ╩º░▄╖╡╗╪0
  1655. └²╫╙:? atnbr ("winbase WinBase", "i", 2)    //╖╡╗╪10
  1656.  
  1657. .1903
  1658. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1659. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  1660.  
  1661. atodate()
  1662. ╙∩╖¿: atoDate (<darr>)
  1663. ╙├═╛: ╜½╙╔{─Ωíó╘┬íó╚╒} ╣╣│╔╡─╩²╫Θ╫¬╗»│╔╡─╚╒╞┌╓╡íú
  1664. ▓╬╩²: 
  1665.     <darr>         ╜ß╣╣╬¬{─Ωíó╘┬íó╚╒} ╩²╫Θíú
  1666. ╖╡╗╪╓╡: ╚╒╞┌╓╡íú
  1667. └²╫╙:? atodate ( {94, 10, 1})        // ╖╡╗╪94─Ω╘┬10╘┬1
  1668.  
  1669. .1816
  1670. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1671. @18[╩²╫Θ║»╩²╦≈╥²]
  1672.  
  1673. atodbf()
  1674. ╙∩╖¿: atodbf (<aArray>)
  1675. ╙├═╛: ╙├╢■╬¼╩²╫Θ╓╨╡─├┐╥╗╕÷╩²╛▌╠µ╗╗╡▒╟░╩²╛▌┐Γú¼╙├
  1676. ╙┌┼Σ║╧dbftoa║»╩²íú
  1677. ▓╬╩²: 
  1678.     <aArray>     ╩²╛▌╩²╫Θíú
  1679. ╖╡╗╪╓╡: ╬▐íú
  1680. └²╫╙:     use datafile
  1681.     arr:=dbftoa()
  1682.     ... ...
  1683.     atodbf (arr)
  1684. ▓╬╝√ú║dbftoa()
  1685.  
  1686. .1817
  1687. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1688. @18[╩²╫Θ║»╩²╦≈╥²]
  1689.  
  1690. atorec()
  1691. ╙∩╖¿: atorec (<array>)
  1692. ╙├═╛: ╜½╩²╫Θ╓╨╡─╘¬╦╪╠µ╗╗╡▒╟░╝╟┬╝╡─╫╓╢╬ú¼╙├╙┌┼Σ║╧
  1693.  rectoa() ║»╩²íú
  1694. ▓╬╩²: 
  1695.     <aArray>     ╩²╛▌╩²╫Θíú
  1696. ╖╡╗╪╓╡: ╬▐íú
  1697. └²╫╙:     use datafile
  1698.     arr := rectoa()
  1699.     ... ...
  1700.     atorec (arr)
  1701.     display
  1702.  
  1703. .1601
  1704. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1705. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  1706.  
  1707. att()
  1708. ╙∩╖¿: att (<nRow1>, <nCol1>, <nRow2>, <nCol2>, <nAttr>, <cFillchar>)
  1709. ╙├═╛: ╘┌╬─▒╛╖╜╩╜╧┬, ╕─▒Σ╓╕╢¿╞┴─╗╟°╙≥╡─╩⌠╨╘, ▓ó╠ε│Σ╫╓
  1710. ╖√íú
  1711. ▓╬╩²:    
  1712. <nRow1,nCol1>         ╞┴─╗╟°╙≥╡─╫≤╔╧╜╟╨╨┴╨╫°▒Ωíú
  1713. <nRow2, nCol2>     ╞┴─╗╟°╙≥╡─╙╥╧┬╜╟╨╨┴╨╫°▒Ωíú
  1714. <nAttr>         ╞┴─╗╟°╙≥╡─╤╒╔½╩⌠╨╘íú
  1715. <cFillchar>         ╠ε│Σ╫╓╖√íú
  1716. ╖╡╗╪╓╡: ╬▐íú
  1717. └²╫╙: att (10, 10, 20, 60, 1, 'W')
  1718.  
  1719. .1201
  1720. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1721. @12[▒¿▒φ╔Φ╝╞║»╩²╦≈╥²]
  1722.  
  1723. ave_cond
  1724. ╙∩╖¿:    ave_cond (<ncField>, <cCond>)
  1725. ╙├═╛:    ╘┌▒¿▒φ╔Φ╝╞╓╨╢╘╥╗╓╕╢¿╡─╫╓╢╬╟≤╞╜╛∙íú
  1726. ▓╬╩²:
  1727.     <ncField>    ╫╓╢╬├√╗≥╫╓╢╬╨≥║┼íú
  1728. <cCond>    ╨Φ╥¬╢╘──╨⌐╩²╛▌┐Γ╝╟┬╝╜°╨╨╟≤╞╜╛∙╡─╠⌡╝■íú
  1729. ╖╡╗╪╓╡:╞╜╛∙╓╡íú
  1730. └²╫╙:
  1731. AVE_COND("SALARY", "SHENGSHI =='└Ñ├≈' ")
  1732. ▓╬╝√ú║@1202 [ave_all]()
  1733.  
  1734. .1202
  1735. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1736. @12[▒¿▒φ╔Φ╝╞║»╩²╦≈╥²]
  1737.  
  1738. ave_all
  1739. ╙∩╖¿:    ave_all (<cExp> ,<cCond>)
  1740. ╙├═╛:    ╘┌▒¿▒φ╔Φ╝╞╓╨╢╘╥╗╓╕╢¿╡─▒φ┤∩╩╜╟≤╞╜╛∙
  1741. ▓╬╩²:
  1742.     <cExp>    ▒╗╟≤╓╡╡─╩²╓╡▒φ┤∩╩╜íú
  1743.     <cCond>    ╟≤╞╜╛∙╥¬┬·╫π╡─╠⌡╝■ú¼╚▒╩í╬¬╚½▓┐íú
  1744. ╖╡╗╪╓╡:╞╜╛∙╓╡
  1745. └²╫╙:
  1746. ave_all ( "SALARY+JIANGJIN","SHENGSHI == '└Ñ├≈' " )
  1747. ▓╬╝√ú║@1201 [ave_cond]()
  1748.  
  1749.  
  1750. .2002
  1751. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1752. @20[╩²╤º║»╩²╦≈╥²]
  1753.  
  1754. binand()
  1755. ╙∩╖¿: binand (<nNum1>, <nNum2>)
  1756. ╙├═╛: ╢╘┴╜╕÷╩²░┤╬╗╟≤╙δíú
  1757. ▓╬╩²:    
  1758.     <nNum1>, <nNum2>    ╩²╓╡íú
  1759. ╖╡╗╪╓╡: nNum1 ░┤╬╗╙δnNum2 ╡─╜ß╣√
  1760. └²╫╙:? binand (7, 5)    //╖╡╗╪5
  1761. ▓╬╝√ú║@2004 [binor](), @2006 [binshr](),@2005 [binshl]( ),@2007 [binxor]()
  1762.  
  1763. .2003
  1764. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1765. @20[╩²╤º║»╩²╦≈╥²]
  1766.  
  1767. binnot()
  1768. ╙∩╖¿: binnot (<nNum>)
  1769. ╙├═╛: ╢╘╩²╓╡░┤╬╗╟≤╖┤íú
  1770. ▓╬╩²:        
  1771.     <nNum>     ╩²╓╡íú
  1772. ╖╡╗╪╓╡: <nNum> ░┤╬╗╖┤╡─╜ß╣√
  1773. └²╫╙:? binnot (3)    //╖╡╗╪í¬4
  1774. ▓╬╝√ú║@2002 [binand](), @2004 [binor](), @2006 [binshr](),
  1775. @2005 [binshl]( ),@2007 [binxor]()
  1776.  
  1777. .2004
  1778. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1779. @20[╩²╤º║»╩²╦≈╥²]
  1780.  
  1781. binor()
  1782. ╙∩╖¿: binor (<nNum1>, <nNum2>)
  1783. ╙├═╛: ╢╘┴╜╕÷╩²░┤╬╗╟≤╗≥íú
  1784. ▓╬╩²:
  1785.     <nNum1>, <nNum2>     ╩²╓╡íú
  1786. ╖╡╗╪╓╡: <nNum1> ░┤╬╗╗≥<nNum2> ╡─╜ß╣√íú
  1787. └²╫╙:? binor (5, 3)    //╖╡╗╪7
  1788. ▓╬╝√ú║@2002 [binand](), @2006 [binshr](),binshl( ),@2007 [binxor]()
  1789.  
  1790. .2005
  1791. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1792. @20[╩²╤º║»╩²╦≈╥²]
  1793.  
  1794. binshl()
  1795. ╙∩╖¿: binshl (<nNum1>, <nNum2>)
  1796. ╙├═╛: ╢╘╩²╓╡░┤╬╗╫≤╥╞íú
  1797. ▓╬╩²:    
  1798.     <nNum1>     ╥¬╥╞╬╗╡─╩²╓╡íú
  1799.     <nNum2>     ╥╞╢»╡─╬╗╩²íú
  1800. ╖╡╗╪╓╡: <nNum1> ╫≤╥╞<nNum2> ╬╗╡─╜ß╣√íú
  1801. └²╫╙:? binshl (8, 2)    //╖╡╗╪32
  1802. ▓╬╝√ú║@2002 [binand](), @2004 [binor](), binshr(),@2007 [binxor]()
  1803.  
  1804. .2006
  1805. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1806. @20[╩²╤º║»╩²╦≈╥²]
  1807.  
  1808. binshr()
  1809. ╙∩╖¿: binshr (<nNum1>, <nNum2>)
  1810. ╙├═╛: ╢╘╩²╓╡░┤╬╗╙╥╥╞íú
  1811. ▓╬╩²:    
  1812.     <nNum1>     ╥¬╥╞╬╗╡─╩²╓╡íú
  1813.     <nNum2>     ╥╞╢»╡─╬╗╩²íú
  1814. ╖╡╗╪╓╡: <nNum1> ╙╥╥╞<nNum2> ╬╗╡─╜ß╣√íú
  1815. └²╫╙:? binshr (8, 2)    //╖╡╗╪2
  1816. ▓╬╝√ú║@2002 [binand](), @2004 [binor](), @2005 [binshl]( ),@2007 [binxor]()
  1817.  
  1818. .2007
  1819. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1820. @20[╩²╤º║»╩²╦≈╥²]
  1821.  
  1822. binxor()
  1823. ╙∩╖¿: binxor (<nNum1>, <nNum2>)
  1824. ╙├═╛: ╢╘┴╜╕÷╩²░┤╬╗╟≤╥∞╗≥íú
  1825. ▓╬╩²:    
  1826.     <nNum1>, <nNum2>     ╩²╓╡íú
  1827. ╖╡╗╪╓╡: <nNum1> ░┤╬╗╥∞╗≥<nNum2> ╡─╜ß╣√íú
  1828. └²╫╙:? binxor (5, 3)    //╖╡╗╪6
  1829. ▓╬╝√ú║@2002 [binand](), @2004 [binor](), @2006 [binshr](),@2005 [binshl]( )
  1830.  
  1831. .2101
  1832. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1833. @21[╫¬╗╗║»╩²╦≈╥²]
  1834.  
  1835. bin2i()
  1836. ╙∩╖¿: bin2i (<cSignedint>)
  1837. ╙├═╛: ╜½╥╗╕÷16 ▒╚╠╪(2 ╫╓╜┌) ╖√║┼╒√╩²╕±╩╜╡─╫╓╖√┤«╫¬╗╗│╔
  1838. ╥╗╕÷╒√╩²íú
  1839. ▓╬╩²:
  1840. <cSignedint>        ╥╗╕÷▒φ╩╛╩²╫╓╓╡╡─2 ╫╓╜┌│ñ╡─╫╓╖√┤«íú
  1841. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  1842. └²╫╙:     hand: =fopen ("my. prg")
  1843.     resoult: =bin2i (freadstr (hand, 2)) 
  1844.         //╚τ╬─╝■╡─═╖┴╜╕÷╫╓╖√╬¬00 F2 ╘≥╖╡╗╪242
  1845.     
  1846. ▓╬╝√: @2102 [bin2l](), @2103 [bin2w](), @2104 [i2bin](),
  1847.  @2105 [l2bin](), @2347 [fread]()
  1848.  
  1849. .2102
  1850. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1851. @21[╫¬╗╗║»╩²╦≈╥²]
  1852.  
  1853. bin2l()
  1854. ╙∩╖¿: bin2l (<cSignedint>)
  1855. ╙├═╛: ╜½╥╗╕÷4 ╫╓╜┌╖√║┼╒√╩²╕±╩╜╡─╫╓╖√┤«╫¬╗╗│╔╥╗
  1856. ╕÷╩²╫╓╓╡íú
  1857. ▓╬╩²: 
  1858. <cSignedint>         ╥╗╕÷▒φ╩╛╩²╫╓╓╡╡─4 ╫╓╜┌│ñ╡─╫╓╖√┤«íú
  1859. ╖╡╗╪╓╡: ╩²╫╓└α╨═íú
  1860. └²╫╙:     hand: =fopen ("my. prg")
  1861.     resoult: =bin2l (freadstr (hand, 4)) 
  1862.     //╚τ╬─╝■╡─═╖╦─╕÷╫╓╖√╬¬1A 2B 3C 4D ╘≥╖╡╗╪439, 041, 10
  1863.     
  1864. ▓╬╝√: @2101 [bin2i](), bin2w(), @2104 [i2bin](), @2105 [l2bin](), @2347 [fread]()
  1865.  
  1866. .2103
  1867. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1868. @21[╫¬╗╗║»╩²╦≈╥²]
  1869.  
  1870. bin2w()
  1871. ╙∩╖¿: bin2w (<expC>)
  1872. ╙├═╛: ╜½╥╗╕÷2 ╫╓╜┌│ñ╒√╩²╕±╩╜╡─╫╓╖√┤«╫¬╗╗│╔╥╗╕÷
  1873. ╒√╩²íú
  1874. ▓╬╩²: 
  1875.     <expC>     ╥╗╕÷▒φ╩╛╩²╫╓╓╡╡─2 ╫╓╜┌│ñ╡─╫╓╖√┤«íú
  1876. ╖╡╗╪╓╡: ╩²╫╓└α╨═íú
  1877. └²╫╙: hand: =fopen ("my. prg")
  1878.     resoult: =bin2i (freadstr (hand, 2)) 
  1879.     // ╚τ╬─╝■╡─═╖┴╜╕÷╫╓╖√╬¬FF FF ╘≥╖╡╗╪65535
  1880.     
  1881. ▓╬╝√: @2102 [bin2l](), @2101 [bin2i](), @2104 [i2bin](), @2105 [l2bin](), @2347 [fread]()
  1882.  
  1883. .2403
  1884. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1885. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  1886.  
  1887. bof()
  1888. ╙∩╖¿: bof()
  1889. ╙├═╛:     ╚╖╢¿╡▒╟░╩²╛▌┐Γ╓╨╡─╝╟┬╝╓╕╒δ╩╟╖±▒╗╢¿╬╗╡╜
  1890. ╡┌╥╗╕÷╝╟┬╝╓«╟░íú
  1891. ▓╬╩²:    ╬▐íú
  1892. ╖╡╗╪╓╡: ┬▀╝¡└α╨═ú¼╝╟┬╝╓╕╒δ╘┌╡┌╥╗╕÷╝╟┬╝╓«╟░╖╡╗╪.T.ú¼
  1893. ╖±╘≥╖╡╗╪.F.
  1894. ╦╡├≈:     ╬¿╥╗┐╔─▄░╤╩²╛▌┐Γ╓╨╡─╝╟┬╝╓╕╒δ╥╞╡╜╡┌╥╗╕÷
  1895. ╝╟┬╝╓«╟░╡─├ⁿ┴ε╩╟skip, ╡▒recno() =1 ╩▒, ╓┤╨╨skip -n ├ⁿ┴ε╜½╩╣bof() ╖╡╗╪╓╡╬¬.T.íú
  1896. └²╫╙: use my
  1897.     ? recno() // ╖╡╗╪1
  1898.     ? bof() // ╖╡╗╪.F.
  1899.     skip -1
  1900.     ? bof() // ╜½╖╡╗╪.T.
  1901. ▓╬╝√: @3144[skip], @2441 [eof](), @2473 [recno]()    
  1902.  
  1903. .1602
  1904. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1905. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  1906.  
  1907. box3d()
  1908. ╙∩╖¿: box3d (<nX1>, <nY1>, <nX2>, <nY2>, <nBoxflag>, <nColor>, <nThick>)
  1909. ╙├═╛: ╗¡┴ó╠σ╖╜┐≥íú
  1910. ▓╬╩²:     
  1911.     <nX1, nY1>     ╖╜┐≥╡─╫≤╔╧╜╟╧≤╦╪╫°▒Ωíú
  1912.     <nX2, nY2>     ╖╜┐≥╡─╙╥╧┬╜╟╧≤╦╪╫°▒Ωíú
  1913.     <nColor>    ▒│╛░╔½íú
  1914.     <nBoxflag>    ╬¬1╩▒╗¡═╣╨╬╖╜┐≥ú¼╬¬2╩▒╗¡░╝╨╬╖╜┐≥íú
  1915.     <nThick>    ╬¬1╩▒╒²│ú┴ó╠σ╨╬ú¼╬¬2╩▒╖╜┐≥▒╗╝╙╓╪íú
  1916. ╖╡╗╪╓╡: ╬▐
  1917. └²╫╙: box3d (5, 5, 100, 100, 1, 7, 2)
  1918. ▓╬╝√ú║@1606 [drawbox]( ),@1628 [g_rect]()
  1919.  
  1920. .2008
  1921. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1922. @20[╩²╤º║»╩²╦≈╥²]
  1923.  
  1924. btob()
  1925. ╙∩╖¿: btob (<cDstr>, <nSourcebase>, <nTargetbase>)
  1926. ╙├═╛: ╜°╨╨╜°╓╞╫¬╗╗, ╜°╓╞╖╢╬º2-32
  1927. ▓╬╩²:    
  1928.     <cDstr>         ╩²╓╡╫╓╖√┤«íú
  1929.     <nSourcebase>     ╘¡╜°╓╞(╩²╫╓╓╡)íú
  1930.     <nTargetbase>        ╨┬╜°╓╞(╩²╫╓╓╡)íú
  1931. ╖╡╗╪╓╡: ╖╡╗╪╜°╓╞╫¬╗╗║≤╡─╫╓╖√┤«
  1932. └²╫╙:    ? btob ("ff", 16, 2)    //╖╡╗╪11111111
  1933.     ?btob ("128", 10, 16)    //╖╡╗╪80
  1934.  
  1935. .1203
  1936. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1937. @12[▒¿▒φ╔Φ╝╞║»╩²╦≈╥²]
  1938. c
  1939. ╙∩╖¿:    c ( <nCol> )
  1940. ╙├═╛:    ╘┌▒¿▒φ╔Φ╝╞╓╨╚í╡▒╟░╨╨─│┴╨╡─╓╡
  1941. ▓╬╩²:    
  1942.     <nCol>        ▒¿▒φ┴╨
  1943. ╖╡╗╪╓╡:▒¿▒φ┴╨╓╡
  1944. └²╫╙:C( 5)
  1945.  
  1946. .1603
  1947. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1948. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  1949.  
  1950. c_botton()
  1951. ╙∩╖¿: c_botton (<nRow>, <nCol>, <cTitle>, <nColor>, <nType>)
  1952. ╙├═╛:    ╗¡│÷╙δmakebotton ╢¿╥σ╡─░┤┼Ñ═Ω╚½═¼╤∙╡─░┤┼Ñ, ╡½<row, col> ╩╟╞┴─╗╫°
  1953. ▒Ωíú
  1954. ▓╬╩²:     
  1955.     <nRow, nCol>        ░┤┼Ñ╬╗╓├(╞┴─╗╫°▒Ω)
  1956.     <cTitle>        ░┤┼Ñ▒Ω╠Γ, ╫╓╖√┤«
  1957.     <nColor>        ░┤┼Ñ╤╒╔½, ┐╔╬¬0--15
  1958.     <nType>        ░┤┼Ñ└α╨═, ┐╔╬¬1--4
  1959. ╖╡╗╪╓╡: NIL
  1960.  
  1961. ╙├╖¿▓╬╝√: @1604 [c_window](),  @1002 [makebotton]()
  1962.  
  1963. .1703
  1964. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1965. @17[╧╡═│║»╩²╦≈╥²]
  1966.  
  1967. c_clip()
  1968. ╙∩╖¿: c_clip (<nColor>, <idFlag>)
  1969. ╙├═╛: ╖╡╗╪╙δ╤╒╔½╓╡╢╘╙ª╡─╟░╛░╗≥▒│╛░╤╒╔½╫╓╖√┤«
  1970. ▓╬╩²:     
  1971. <nColor>     ╤╒╔½╓╡(0-15)
  1972. <idFlag>     ╬¬0╩▒, <nColor> ╩╟╟░╛░╔½; ╬¬1╩▒, <nColor> ╩╟▒│╛░╔½
  1973. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  1974. └²╫╙:
  1975.     ? c_clip (1, 0) // ╖╡╗╪B
  1976.     ? c_clip (2, 0) // ╖╡╗╪G
  1977.     ? c_clip (3, 1) // ╖╡╗╪BG
  1978.  
  1979. ▓╬╝√: @1749 [setcolor]()
  1980.  
  1981. .1604
  1982. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  1983. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  1984.  
  1985. c_window()
  1986. ╙∩╖¿: c_window (<nRow1>, <nCol1>, <nRow2>, <nCol2>, <cTitle>, <nAttr1>, <nAttr2>, <nType>)
  1987. ╙├═╛: ╗¡│÷╙δmakewindow ╢¿╥σ╡─┤░┐┌═Ω╚½═¼╤∙╡─┤░┐┌
  1988. ▓╬╩²:     
  1989. <nRow1, nCol1>        ╬¬┤░┐┌╫≤╔╧╜╟╨╨, ┴╨╫°▒Ω;
  1990. <nRow2, nCol2>     ╬¬┤░┐┌╙╥╧┬╜╟╨╨, ┴╨╫°▒Ω;
  1991. <cTitle>        ┤░┐┌▒Ω╠Γ, ╥╗╫╓╖√┤«
  1992. <nAttr1>        ▒Ω╠Γ╤╒╔½┐╔╬¬1-15; 
  1993. <nAttr2>        ┤░┐┌▒│╛░╔½, ┐╔╬¬1-15, ╬¬╢╘╙ª╡─╤╒╔½▒Ω║┼
  1994. <nType>        ┤░┐┌└α╨═, ┐╔╬¬1-4
  1995. ╖╡╗╪╓╡: ╬▐
  1996. └²╫╙: #include "winbase.inc"    // ▒╪╨δ░ⁿ└¿╕├╬─╝■
  1997. PROCEDURE MAIN (arv1, arv2)
  1998. local i, j
  1999. public frow, fcol, erow, ecol, fname: =' '
  2000.     testmouse() // ▓╬╝√: @1508 [m_hide]()
  2001.     windowstart()    //WinBase │⌡╩╝╗»
  2002.     frow: =fcol: =erow: =ecol: =0
  2003.     c_window (2, 5, 23, 70, " ┤µ╖┼╞┴─╗╬─╝■╩╛└²", 1, 2, 1)
  2004.     c_botton (4, 7, " ┤µ╚δ╬─╝■", 7, 1)
  2005.     c_botton (4, 20, " ╗╓╕┤╬─╝■", 7, 1)
  2006.     c_botton (4, 33, "pcx ╬─╝■╧╘╩╛", 7, 1)
  2007.     c_botton (4, 50, " ═╦│÷", 7, 1)
  2008.     mybox() // ▓╬╝√: @1606 [drawbox]()
  2009.     do while.T.
  2010.         if mousein (4, 7, 5, 15)
  2011.             if m_press (0) ==1. or. m_press (1) ==1
  2012.                 c_botton (4, 7, " ┤µ╚δ╬─╝■", 7, 2)
  2013.                 save() // ▓╬╝√: @1642 [saveform]()
  2014.                 c_botton (4, 7, " ┤µ╚δ╬─╝■", 7, 1)
  2015.             endif
  2016.         endif
  2017.         if mousein (4, 20, 5, 28)
  2018.             if m_press (0) ==1. or. m_press (1) ==1
  2019.                 c_botton (4, 20, " ╗╓╕┤╬─╝■", 7, 2)
  2020.                 show() // ▓╬╝√: dispform()
  2021.                 c_botton (4, 20, " ╗╓╕┤╬─╝■", 7, 1)
  2022.             endif
  2023.         endif
  2024.         if mousein (4, 33, 5, 41)
  2025.             if m_press (0) ==1. or. m_press (1) ==1
  2026.                 c_botton (4, 33, "pcx ╬─╝■╧╘╩╛", 7, 2)
  2027.                 pcx_show() // ▓╬╝√: @1637 [pcx]()
  2028.                 c_botton (4, 33, "pcx ╬─╝■╧╘╩╛", 7, 1)
  2029.             endif
  2030.         endif
  2031.         if mousein (4, 50, 5, 54). and. (m_press (0) ==1;
  2032.             .or. m_press (1) ==1)
  2033.             quit
  2034.         endif
  2035.     enddo
  2036.     windowexit()    
  2037. RETURN
  2038.  
  2039. ▓╬╝√: @1003 [makewindow](), @1603 [c_botton](), @1512 [m_press]()
  2040.  
  2041. .1704
  2042. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2043. @17[╧╡═│║»╩²╦≈╥²]
  2044.  
  2045. calculator()
  2046. ╙∩╖¿: calculator()
  2047. ╙├═╛: ╡»│÷╥╗╝╞╦π╞≈
  2048. ▓╬╩²: ╬▐
  2049. ╖╡╗╪╓╡: ╬▐
  2050.  
  2051. .1501
  2052. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2053. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  2054.  
  2055. capslock()
  2056. ╙∩╖¿: capslock()
  2057. ╙├═╛: ┤≥┐¬Capslock ╝ⁿ
  2058. ▓╬╩²: ╬▐
  2059. ╖╡╗╪╓╡: ╬▐
  2060.  
  2061. .1502
  2062. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2063. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  2064.  
  2065. capsloff()
  2066. ╙∩╖¿: capsloff()
  2067. ╙├═╛: ╣╪▒╒Capslock ╝ⁿ
  2068. ▓╬╩²: ╬▐
  2069. ╖╡╗╪╓╡: ╬▐
  2070.  
  2071. .1904
  2072. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2073. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  2074.  
  2075. cdow()
  2076. ╙∩╖¿: cdow (<dExp>)
  2077. ╙├═╛: ┤╙╚╒╞┌╓╡╓╨╖╡╗╪╫╓╖√┤«╨╬╩╜╡──│╥╗╠∞╘┌╥╗╓▄
  2078. ╓╨╡─╨≥║┼(╨╟╞┌╝╕)íú
  2079. ▓╬╩²: 
  2080.     <dExp>     ║╧╖¿╡─╚╒╞┌
  2081. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  2082. └²╫╙:? cdow (date()) // ╜ß╣√└α╦╞Monday
  2083.  
  2084. ▓╬╝√: @1912 [day](), @1914 [dow]()
  2085.  
  2086. .2009
  2087. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2088. @20[╩²╤º║»╩²╦≈╥²]
  2089.  
  2090. ceiling()
  2091. ╙∩╖¿: ceiling (<nNum>)
  2092. ╙├═╛: ╟≤┤≤╙┌╗≥╡╚╙┌nNum ╡─╫ε╨í╒√╩²
  2093. ▓╬╩²: 
  2094.     <nNum>     ╩²╓╡▒Σ┴┐
  2095. ╖╡╗╪╓╡: ╩²╓╡
  2096. └²╫╙:? ceiling (5. 8)    //╖╡╗╪5
  2097. ▓╬╝√ú║@2012 [floor]()
  2098.  
  2099. .1905
  2100. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2101. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  2102.  
  2103. chinesedate()
  2104. ╙∩╖¿: chinesedate (<dDate>)
  2105. ╙├═╛: ╜½╚╒╞┌╫¬╗╗╬¬╓╨╣·╧░╣▀╡─╙├─Ωíó╘┬íó╚╒▒φ╩╛╡─╫╓
  2106. ╖√┤«
  2107. ▓╬╩²: 
  2108.     <dDate>    ╚╒╞┌╓╡
  2109. ╖╡╗╪╓╡: ▒φ╩╛╚╒╞┌╡─╫╓╖√┤«
  2110. └²╫╙: chinese (date() )
  2111.  
  2112. .2201
  2113. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2114. @22[╫╓╖√┤«║»╩²╦≈╥²]
  2115.  
  2116. chr()
  2117. ╙∩╖¿: chr (<nExp>)
  2118. ╙├═╛:     ╜½╥╗╕÷╩«╜°╓╞╫¬╗╗│╔╢╘╙ª╡─ASCII ╫╓╖√íúchr() ╥▓┐╔╧≥═Γ▓┐
  2119. ╔Φ▒╕╖ó╦═┐╪╓╞╫╓╖√║═╗╗┬δ╨≥┴╨íú
  2120. ▓╬╩²: 
  2121.     <nExp>    ╥¬╫¬╗╗╗≥╖ó╦═╡─╩«╜°╓╞╩²╫╓╓╡
  2122. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  2123. └²╫╙:
  2124.     ? chr (7) // ╧∞┴σ
  2125.     ? chr (100) // ╖╡╗╪d
  2126.  
  2127. ▓╬╝√: @2202 [asc](), @1504 [inkey]()
  2128.  
  2129. .1705
  2130. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2131. @17[╧╡═│║»╩²╦≈╥²]
  2132.  
  2133. clock()
  2134. ╙∩╖¿: clock()
  2135. ╙├═╛: ╡»│÷╥╗╩▒╓╙┤░┐┌
  2136. ▓╬╩²: ╬▐
  2137. ╖╡╗╪╓╡: ╬▐
  2138.  
  2139. .2404
  2140. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2141. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  2142.  
  2143. closealias()
  2144. ╙∩╖¿: closealias (<aliasname>)
  2145. ╙├═╛: ╣╪▒╒╥╘▒≡├√╓╕╢¿╡─╩²╛▌┐Γ
  2146. ▓╬╩²:
  2147.     <aliasname>        ╩²╛▌┐Γ▒≡├√╡─╫╓╖√┤«
  2148. ╖╡╗╪╓╡: NIL
  2149. └²╫╙: use datafile alias tt
  2150.     list
  2151.     closealias ("tt")
  2152.     list
  2153.  
  2154. .2405
  2155. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2156. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  2157.  
  2158. clrvars()
  2159. ╙∩╖¿: clrvars()
  2160. ╙├═╛: ╟σ│²╙╔initvars() ║»╩²┤┤╜¿╡─╫╓╢╬▒Σ┴┐╝»
  2161. ▓╬╩²: ╬▐
  2162. ╖╡╗╪╓╡: ╬▐
  2163. └²╫╙: ▓╬╝√initvars()
  2164.  
  2165. .1906
  2166. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2167. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  2168.  
  2169. cmonth()
  2170. ╙∩╖¿: cmonth (<dExp>)
  2171. ╙├═╛: ┤╙╚╒╞┌╓╡╓╨╖╡╗╪╫╓╖√┤«╨╬╩╜╡─╘┬╖▌├√│╞íú
  2172. ▓╬╩²: 
  2173.     <dExp>     ║╧╖¿╡─╚╒╞┌
  2174. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  2175. └²╫╙:? cmonth (date()) // ╜ß╣√└α╦╞July
  2176. ▓╬╝√: @1904 [cdow]()
  2177.  
  2178. .1706
  2179. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2180. @17[╧╡═│║»╩²╦≈╥²]
  2181.  
  2182. col()
  2183. ╙∩╖¿: col()
  2184. ╙├═╛: ╖╡╗╪╞┴─╗╣Γ▒Ω╡─╡▒╟░╬╗╓├╡─┴╨╫°▒Ω╓╡íú
  2185. ▓╬╩²: ╬▐
  2186. ╖╡╗╪╓╡: ╩²╫╓└α╨═(0-79)
  2187. ╦╡├≈:     ╘┌╞┴─╗╔╧╡─╚╬║╬╩Σ│÷, COL(), ROW() ║»╩²╢╝╗ß╫╘╢»╕ⁿ╨┬╥╘╖┤╙│
  2188. ╡▒╟░╣Γ▒Ω╬╗╓├íú╓┤╨╨CLEAR, CLEAR ALL, CLS ╜½░╤COL(), ROW() ╓╪╔Φ╬¬0íú
  2189. └²╫╙:// ╘┌╞┴─╗╡╫╨╨╩Σ│÷╡▒╟░╨╨╫°▒Ω╓╡╙δ╡▒╟░┴╨╫°▒Ω
  2190. ╓╡
  2191.  ú└ 24, 10 say " ╡▒╟░╨╨"+str (row(), 2) +space (10) +" ╡▒╟░┴╨"+str (col(), 2)
  2192.  
  2193. ▓╬╝√: @1741 [row](), @1753 [setpos](), @1738 [prow](), @1736 [pcol]()
  2194.  
  2195. .2206
  2196. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2197. @22[╫╓╖√┤«║»╩²╦≈╥²]
  2198.  
  2199. countchr()
  2200. ╙∩╖¿: countchr (<cStr>, <cChar>)
  2201. ╙├═╛: ╝╞╦π╫╓╖√╘┌╫╓╖√┤«╓╨│÷╧╓╡─┤╬╩²
  2202. ▓╬╩²:    
  2203.     <cStr>         ╫╓╖√┤«
  2204.     <cChar>     ╫╓╖√
  2205. ╖╡╗╪╓╡: │÷╧╓╡─┤╬╩²
  2206. └²╫╙:? countchr ("Winbase, WinBase, WINBASE, "B")    //╖╡╗╪2
  2207.  
  2208. .1204
  2209. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2210. @12[▒¿▒φ╔Φ╝╞║»╩²╦≈╥²]
  2211.  
  2212. countfor
  2213. ╙∩╖¿:    countfor( <cExp>)
  2214. ╙├═╛:    ╘┌▒¿▒φ╔Φ╝╞╓╨═│╝╞╡▒╟░╩²╛▌┐Γ╓╨┬·╫π╠⌡╝■╡─
  2215. ╦∙╙╨╝╟┬╝╕÷╩²
  2216. ▓╬╩²:
  2217.     <cExp>    ╠⌡╝■▒φ┤∩╩╜
  2218. ╖╡╗╪╓╡: ╝╟┬╝╕÷╩²
  2219. └²╫╙:COUNTFORú¿í░'╘╞─╧' $ shengshií▒ú⌐íú
  2220.  
  2221. .1205
  2222. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2223. @12[▒¿▒φ╔Φ╝╞║»╩²╦≈╥²]
  2224.  
  2225. ctack
  2226. ╙∩╖¿:    ctack (<cCond>, <cDbfname> , <cnField>, <nLen>)
  2227. ╙├═╛:    ╘┌▒¿▒φ╔Φ╝╞╓╨╚í┬·╫π╠⌡╝■╡─╝╟┬╝╡─╓╕╢¿╡──┌
  2228. ╚▌
  2229. ▓╬╩²:
  2230.     <cCond>    ╠⌡╝■▒φ┤∩╩╜
  2231.     <cDbfname>    ╩²╛▌┐Γ├√
  2232.     <cnField>    ╫╓╢╬├√╗≥╫╓╢╬╨≥║┼
  2233.     <nLen>    ╖╡╗╪╫╓╖√┤«╡─│ñ╢╚
  2234. ╖╡╗╪╓╡: ╫╓╖√┤«╨╬╩╜╡─╫╓╢╬─┌╚▌
  2235. └²╚τ: CTACK  ú¿" '╘╞─╧╩í' $ NAME"ú¼"COUNTRY. DBF"ú¼2ú¼10ú⌐
  2236.  
  2237. .1907
  2238. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2239. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  2240.  
  2241. ctod()
  2242. ╙∩╖¿: ctod (<cDate>)
  2243. ╙├═╛: ╜½╫╓╖√┤«╨╬╩╜╡─╚╒╞┌╫¬╗╗│╔╚╒╞┌╓╡íú
  2244. ▓╬╩²: 
  2245. <cDate>     ╥╗╕÷▒φ╩╛╚╒╞┌╡─╫╓╖√▒φ┤∩╩╜, ╥╗╕÷┐╒┤«┐╔╙├space (8) ╗≥╒▀"" ╗≥
  2246. ╒▀"/ /"▒φ╩╛
  2247. ╖╡╗╪╓╡: ╚╒╞┌└α╨═
  2248. └²╫╙: // ╧┬├µ╡─┤·┬δ┐╔╥╘╖└╓╣▓┘╫≈╒▀╝ⁿ╚δ▓╗║╧╖¿╡─╚╒
  2249. ╞┌
  2250.     my_day: =ctod ("")
  2251.     clear
  2252.     10, 10 say " ╩Σ╚δ─π╡─╔·╚╒" get my_day
  2253.     read
  2254.  
  2255. ▓╬╝√: @3302[set date], @1915 [dtoc](), @1918 [dtos](), @1908 [date]()
  2256.  
  2257. .2303
  2258. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2259. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  2260.  
  2261. curdir()
  2262. ╙∩╖¿:     curdir ( [<cDriveSpec>])
  2263. ╙├═╛:     ╚╖╢¿╡▒╟░╣ñ╫≈─┐┬╝╓╨╡─DOS ─┐┬╝íú
  2264. ▓╬╩²:     
  2265. [<cDriveSpec>]    ▓Θ╤»╡─┤┼┼╠╟²╢»╞≈íú╚▒╩í╘≥╩╣╙├╡▒╟░╣ñ╫≈╝╟┬╝╓╨
  2266. ╡─╟²╢»╞≈íú
  2267. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  2268. └²╫╙:    ? curdir ("C: ") // ╖╡╗╪└α╦╞WinBase\BIN
  2269.  
  2270. ▓╬╝√: @2308 [d_path]()    
  2271.  
  2272. .1707
  2273. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2274. @17[╧╡═│║»╩²╦≈╥²]
  2275.  
  2276. curdrive()
  2277. ╙∩╖¿: curdrive()
  2278. ╙├═╛: ╖╡╗╪╡▒╟░╟²╢»╞≈╫╓╖√┤«(╚τA: \, C: \ ╡╚)
  2279. ▓╬╩²: ╬▐
  2280. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  2281. └²╫╙: ú└ 24, 10 say padc (" ╡▒╟░╟²╢»╞≈╩╟"+curdrive(), 70) // ╧╘╩╛C: \ ╡╚
  2282.  
  2283. ▓╬╝√: @2306 [d_drive]()
  2284.  
  2285. .1708
  2286. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2287. @17[╧╡═│║»╩²╦≈╥²]
  2288.  
  2289. curoff()
  2290. ╙∩╖¿: curoff()
  2291. ╙├═╛: ╣╪▒╒╣Γ▒Ω, ╙├╙┌UCDOS 2.0íóNCDOS
  2292. ▓╬╩²: ╬▐
  2293. ╖╡╗╪╓╡: NIL
  2294.  
  2295. └²╫╙▓╬╝√: @1709 [curon]()
  2296.  
  2297. .1709
  2298. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2299. @17[╧╡═│║»╩²╦≈╥²]
  2300.  
  2301. curon()
  2302. ╙∩╖¿: curon()
  2303. ╙├═╛: ┤≥┐¬╣Γ▒Ω, ╙├╙┌UCDOS 2.0íóNCDOS
  2304. ▓╬╩²: ╬▐
  2305. ╖╡╗╪╓╡: NIL
  2306. └²╫╙:    // ╘┌╩Σ╚δ╟░╣╪▒╒╣Γ▒Ω, ╩Σ╚δ╜ß╩°╩▒┤≥┐¬╣Γ▒Ω
  2307.     curoff() // ╣╪▒╒╣Γ▒Ω
  2308.     10, 20 say " ╩Σ╚δ╨╒├√: " get name // ╜╙╩╒╩Σ╚δ
  2309.     read
  2310.     curon() // ┤≥┐¬╣Γ▒Ω
  2311.  
  2312. ▓╬╝√: @1708 [curoff]()
  2313.  
  2314. .1206
  2315. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2316. @12[▒¿▒φ╔Φ╝╞║»╩²╦≈╥²]
  2317.  
  2318. cv
  2319. ╙∩╖¿:    cv( <cFielf>, <cDbfname> ,<nLen> )
  2320. ╙├═╛:    ╘┌▒¿▒φ╔Φ╝╞╓╨╜½┤·┬δ╫¬╗╗╬¬╩╡╝╩─┌╚▌╩Σ│÷
  2321. ▓╬╩²:
  2322.     cField        ╫╓╢╬├√
  2323.     cDbfname    ░∩╓·╬─╝■┐Γ
  2324. nLen        ╧▐╓╞╩╡╝╩─┌╚▌╩Σ│÷╡─│ñ╢╚ú¼╚⌠│ñ╢╚╩í┬╘ú¼╘≥░┤╡▒╟░
  2325. ╧ε╡─│ñ╢╚╝╞╦πíú
  2326. ╖╡╗╪╓╡:┤·┬δ─┌╚▌
  2327. └²╚τú║ CV  ú¿COUNTRYú¼"COUNTRY"ú¼20ú⌐
  2328.  
  2329. .2304
  2330. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2331. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  2332.  
  2333. d_chdir()
  2334. ╙∩╖¿:     d_chdir (<cPath>)
  2335. ╙├═╛:     ╕─▒Σ┬╖╛╢
  2336. ▓╬╩²:     
  2337.     <cPath>     ╫╓╖√┤«, ╥¬╫¬╡╜╡──┐┬╝├√
  2338. ╖╡╗╪╓╡: ╩²╫╓└α╨═, 0 ╗≥-1. │╔╣ª╖╡╗╪0, ╖±╘≥╖╡╗╪-1
  2339. └²╫╙: // ▒╛└²╩Σ│÷╡▒╟░╫╙─┐┬╝├√, ▓ó╘┌╕├┬╖╛╢╧┬╜¿┴ó├√╬¬
  2340. MYTEMP ╫╙─┐┬╝, //▓ó╫¬╡╜MYTEMP ╫╙─┐┬╝╧┬╜°╨╨▓┘╫≈íú
  2341.     
  2342. cur_path: =d_path() // ╗±╡├╡▒╟░╚½┬╖╛╢├√
  2343. putstr (24, 10, " ╡▒╟░┬╖╛╢: "+cur_path+" "+curdir(), 7) // ╩Σ│÷└α╦╞C: \BCM
  2344. if isdir ("MYTEMP") // ╚τMYTEMP ╫╙─┐┬╝▓╗┤µ╘┌, ╘≥╜¿┴ó╦ⁿ
  2345.     d_chdir ("MYTEMP") // ╫¬╡╜MYTEMP ╫╙─┐┬╝╧┬
  2346.     copy file c: \winbase\readme. txt to my_read. txt // ┐╜▒┤╥╗╬─╝■╡╜
  2347.                     //MYTEMP ╫╙─┐┬╝╧┬
  2348.     dir *. * // ▓Θ┐┤MYTEMP ╫╙─┐┬╝╧┬╡─╬─╝■
  2349.     inkey (0)
  2350.     d_chdir (cur_path) // ╫¬╡╜╜¿┴óMYTEMP ╟░╡──┐┬╝╧┬
  2351. endif
  2352.  
  2353. ▓╬╝√: @2360 [isdir](), @2307 [d_mkdir]()
  2354.  
  2355. .2305
  2356. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2357. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  2358.  
  2359. d_chdrv()
  2360. ╙∩╖¿: d_chdrv (<nDrive>)
  2361. ╙├═╛: ╕─▒Σ╡▒╟░╟²╢»╞≈
  2362. ▓╬╩²: 
  2363. <nDrive>     ╥¬╫¬╡╜╡─╟²╢»╞≈├√, 1 ╬¬A ╟², 2 ╬¬B ╟², 3 ╬¬C ╟², ╥╘┤╦└α═╞
  2364. ╖╡╗╪╓╡: ╩²╫╓└α╨═, 0 ╗≥-1. │╔╣ª╖╡╗╪0, ╖±╘≥╖╡╗╪-1
  2365.  
  2366. └²╫╙▓╬╝√: @2306 [d_drive]()
  2367.  
  2368. .2306
  2369. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2370. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  2371.  
  2372. d_drive()
  2373. ╙∩╖¿:     d_drive()
  2374. ╙├═╛:     ╖╡╗╪╡▒╟░╟²╢»╞≈║┼(1=A, 2=B ╡╚)
  2375. ▓╬╩²:     ╬▐
  2376. ╖╡╗╪╓╡: ╡▒╟░╟²╢»╞≈╓╡1, 2... (1=A, 2=B)
  2377. └²╫╙: /* ╚τ╡▒╟░╟²╢»╞≈▓╗╩╟C ╟², ╘≥╫¬╡╜C ╟², ╚τ│╔╣ª, ╘≥╥╘░╫╔½╫≈╬¬
  2378. ▒│╛░╔½╩Σ│÷╨┼╧ó" ╡▒╟░╟²╢»╞≈C: "*/
  2379. my_drive: =d_drive() // ╗±╡├╟░╟²╢»╞≈╓╡
  2380. if my_drive<>3 // ╚τ╡▒╟░╟²╢»╞≈▓╗╩╟C ╟²
  2381.     if d_chdrv (3) ==0 // ╫¬╡╜C ╟², ╚τ│╔╣ª
  2382.         putstr (24, 10, " ╡▒╟░╟²╢»╞≈C: ", 7) 
  2383.             // ╥╘░╫╔½╫≈╬¬▒│╛░╔½╩Σ│÷╨┼╧ó
  2384.     endif
  2385. endif
  2386.     
  2387. ▓╬╝√: @1707 [curdrive](), @2305 [d_chdrv](),@2310 [defdrive]( ),lastdrv()
  2388.  
  2389. .2307
  2390. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2391. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  2392.  
  2393. d_mkdir()
  2394. ╙∩╖¿: d_mkdir (<cDir>)
  2395. ╙├═╛: ╜¿┴ó╫╙─┐┬╝
  2396. ▓╬╩²:
  2397.      <cDir>     ╫╓╖√┤«, ╜½╥¬╜¿┴ó╡─╫╙─┐┬╝├√
  2398. ╖╡╗╪╓╡: ╩²╫╓└α╨═, 0 ╗≥-1. │╔╣ª╖╡╗╪0, ╖±╘≥╖╡╗╪-1
  2399. └²╫╙:// ╘┌╡▒╟░┬╖╛╢╧┬╜¿┴ó╫╙─┐┬╝my, ╚╗║≤╔╛│²╦ⁿ
  2400.     if d_mkdir ("my") ==0 //my │╔╣ª╜¿┴ó
  2401.         10, 20 say" ╫╙─┐┬╝my ╥╤╜¿┴ó"
  2402.         11, 20 say" ░┤╚╬╥╗╝ⁿ╜½╔╛│²╫╙─┐┬╝my"
  2403.         inkey (0)
  2404.         if d_rmdir ("my") ==0 //my │╔╣ª╔╛│²
  2405.         ¬└12, 20 say " ╫╙─┐┬╝my ╥╤╔╛│²"
  2406.         endif
  2407.     else
  2408.         ? " ╫╙─┐┬╝my ╜¿┴ó╩º░▄"
  2409.     endif
  2410.  
  2411. ▓╬╝√: @2360 [isdir]()
  2412.  
  2413. .2308
  2414. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2415. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  2416.  
  2417. d_path()
  2418. ╙∩╖¿:     d_path()
  2419. ╙├═╛:     ╖╡╗╪┬╖╛╢╚½├√
  2420. ▓╬╩²:     ╬▐
  2421. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  2422. ▓╬╝√: @2304 [d_chdir](), @2303 [curdir](), @2337 [filepath]( )
  2423.  
  2424. .2309
  2425. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2426. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  2427.  
  2428. d_rmdir()
  2429. ╙∩╖¿: d_rmdir (<cDir>)
  2430. ╙├═╛: ╔╛│²╓╕╢¿─┐┬╝
  2431. ▓╬╩²:
  2432.      <cDir>     ╥¬╔╛│²╡──┐┬╝├√
  2433. ╖╡╗╪╓╡: ╩²╫╓└α╨═, 0 ╗≥-1. │╔╣ª╖╡╗╪0, ╖±╘≥╖╡╗╪-1
  2434.  
  2435. └²╫╙▓╬╝√: @2307 [d_mkdir]()
  2436.  
  2437. .1207
  2438. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2439. @12[▒¿▒φ╔Φ╝╞║»╩²╦≈╥²]
  2440.  
  2441. dage
  2442. ╙∩╖¿:dage( <dField>)
  2443. ╙├═╛:╜½╚╒╞┌╫¬╗╗╬¬─Ω┴Σ
  2444. ▓╬╩²:
  2445.     <dField>    ╚╒╞┌╨═╫╓╢╬íú
  2446. ╖╡╗╪╓╡:╩²╓╡
  2447. └²╚τú║ DAGE( birthday )
  2448.  
  2449. .1908
  2450. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2451. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  2452.  
  2453. date()
  2454. ╙∩╖¿: date()
  2455. ╙├═╛: ╚í╧╡═│╚╒╞┌
  2456. ▓╬╩²: ╬▐
  2457. ╖╡╗╪╓╡: ╚╒╞┌└α╨═
  2458. └²╫╙:? date() // ╜ß╣√└α╦╞94─Ω2╘┬18╚╒
  2459.  
  2460. ▓╬╝√: @3301[set century], @3302[set date], @1912 [day](), @1924 [month](), @1932 [year]()
  2461.  
  2462. .1208
  2463. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2464. @12[▒¿▒φ╔Φ╝╞║»╩²╦≈╥²]
  2465.  
  2466. dates
  2467. ╙∩╖¿:    dates (<nYear>, <nMonth>, <nDay> ,<nLen>)
  2468. ╙├═╛:    ╘┌▒¿▒φ╔Φ╝╞╓╨╜½╩²╓╡╫¬╗╗╬¬╖√║╧╓╨╣·╧░╣▀╡─
  2469. ╚╒╞┌╫╓╖√┤«
  2470. ▓╬╩²:
  2471.     <nYear>    ╩²╓╡ú¼─Ω
  2472.     <nMonth>    ╩²╓╡ú¼╘┬
  2473.     <nDay>    ╩²╓╡ú¼╚╒
  2474.     <nLen>    ╫╓┤«│ñ
  2475. ╖╡╗╪╓╡:╚╒╞┌╫╓╖√┤«
  2476. └²╫╙:DATES ( 63ú¼12ú¼29ú¼12)    //╖╡╗╪: 63─Ω12╘┬29╚╒
  2477. ▓╬╝√ú║@1905 [chinesedate]( )
  2478.  
  2479. .1909
  2480. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2481. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  2482.  
  2483. dateisleap()
  2484. ╙∩╖¿: dateisleap (<dDate>)
  2485. ╙├═╛: ╚╖╢¿╓╕╢¿╚╒╞┌╩╟╖±╩╟╚≥─Ω
  2486. ▓╬╩²: 
  2487.     <dDate>    ╚╒╞┌╓╡
  2488. ╖╡╗╪╓╡: ╩╟╚≥─Ω╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.
  2489. └²╫╙:? dateisleap (date())
  2490.  
  2491. .1910
  2492. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2493. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  2494.  
  2495. date ()
  2496. ╙∩╖¿:datetoa (dDate) 
  2497. ╙├═╛: ╜½╚╒╞┌╫¬╗╗│╔╡─╩²╓╡╩²╫Θ,╩²╫Θ╕±╩╜╬¬{─Ωíó╘┬íó╚╒}
  2498. ▓╬╩²:dDate:╚╒╞┌▒Σ┴┐
  2499. ╖╡╗╪╓╡:╚╒╞┌╫¬╗╗│╔╡─╩²╓╡╩²╫Θ
  2500. └²╫╙:
  2501.     arr:=datetoa(date())
  2502.     ?arr[1]
  2503.  
  2504. .1911
  2505. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2506. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  2507.  
  2508. datetoage()
  2509. ╙∩╖¿: Datetoage (<dDate>)
  2510. ╙├═╛: ╜½╚╒╞┌╫¬╗╗╬¬─Ω┴Σ╩²╓╡
  2511. ▓╬╩²:
  2512.      <dDate>    ╚╒╞┌▒Σ┴┐
  2513. ╖╡╗╪╓╡: ╧╡═│╚╒╞┌╡──Ω╙δdate ╡──Ω╡─▓ε
  2514. └²╫╙:? datetoage (ctod ("68/7/30"))
  2515.  
  2516. .1912
  2517. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2518. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  2519.  
  2520. day()
  2521. ╙∩╖¿:     day (<dExp>)
  2522. ╙├═╛:     ╢╘╥╗╕÷╚╒╞┌╟≤╓╡▓ó┤╙╓╨│Θ╚í│÷╘┬╓╨╡─╚╒╨≥║┼, ╕├
  2523. ╚╒╨≥║┼╥╘╩²╫╓╨╬╩╜▒φ╩╛╥╗╕÷╘┬╓╨╡─╡┌╝╕║┼íú
  2524. ▓╬╩²: 
  2525.     <dExp>     ║╧╖¿╡─╚╒╞┌
  2526. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  2527. └²╫╙:? day (date()) // ╜ß╣√└α╦╞18
  2528.  
  2529. ▓╬╝√: @1908 [date](), @1924 [month](), @1932 [year]()
  2530.  
  2531. .1913
  2532. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2533. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  2534.  
  2535. daynum
  2536. ╙∩╖¿: daynum (<dDate>)
  2537. ╙├═╛: ╚╖╢¿╥╗─Ω╓╨╥╤╣²╚Ñ╠∞╩²(1 ╘┬1 ╚╒╩╟╡┌1 ╠∞)
  2538. ▓╬╩²: 
  2539.     <dDate>    ╚╒╞┌╓╡
  2540. ╖╡╗╪╓╡: ╒√╩²
  2541. └²╫╙:? daynum (date())
  2542.  
  2543. .2406
  2544. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2545. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  2546.  
  2547. dbappend()
  2548. ╙∩╖¿:     dbappend()
  2549. ╙├═╛:     ╕°╡▒╟░╣ñ╫≈╟°╓╨╡─╩²╛▌┐Γ╘÷╝╙╥╗╠⌡┐╒░╫╨┬╝╟
  2550. ┬╝, ╬─╝■╓╕╒δ╓╕╧≥╒Γ╠⌡╨┬╘÷╝╟┬╝íú
  2551. ▓╬╩²:     ╬▐
  2552. ╖╡╗╪╓╡: NIL
  2553. └²╫╙:     use my
  2554.     dbappend()
  2555.     skip
  2556.     ? eof() // ╖╡╗╪.T.
  2557.     
  2558. ▓╬╝√: @3101[append blank], @3150[use], @2472 [netuse]()
  2559.  
  2560. .2408
  2561. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2562. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  2563.  
  2564. dbclearfil()
  2565. ╙∩╖¿: dbclearfil()
  2566. ╙├═╛: ╟σ│²╡▒╟░╣ñ╫≈╟°╓╨╣²┬╦╞≈╡─┬▀╝¡╣²┬╦╠⌡╝■íú
  2567. ▓╬╩²: ╬▐
  2568. ╖╡╗╪╓╡: NIL
  2569. └²╫╙:
  2570. /*╧┬├µ╡─└²╫╙╧╚╜¿┴ó╥╗╕÷╣²┬╦╞≈ú¼┴╨│÷╣²┬╦║≤╡─╩²
  2571. ╛▌, ╚╗║≤╟σ│²╒Γ╕÷╣²┬╦╞≈íú*/
  2572.  use Emp new
  2573. dbsetfilter ( {||age<20}, "age<20")
  2574. list Emp->name
  2575. dbclearfil()
  2576.  
  2577. ▓╬╝√: @2430 [dbsetfilter](), @3138[set filter]        
  2578.  
  2579. .2409
  2580. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2581. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  2582.  
  2583. dbclearind()
  2584. ╙∩╖¿: dbclearind()
  2585. ╙├═╛: ╘┌╡▒╟░╣ñ╫≈╟°╓╨╣╪▒╒╦∙╙╨╗ε╢»╦≈╥²ú¼╦∙╙╨╦≈╥²╬─
  2586. ╝■╢╝▒╗╣╪▒╒íú
  2587. ▓╬╩²: ╬▐
  2588. ╖╡╗╪╓╡: NIL
  2589. └²╫╙: dbclearind() // ╣╪▒╒╦∙╙╨╗ε╢»╦≈╥²
  2590.  
  2591. ▓╬╝√: @2431 [dbsetindex](), @2432 [dbsetorder]()
  2592.  
  2593. dbclearrel()
  2594. ╙∩╖¿: dbclearrel()
  2595. ╙├═╛: ╘┌╡▒╟░╣ñ╫≈╟°╓╨╣╪▒╒╦∙╙╨╗ε╢»╣╪╧╡íú
  2596. ▓╬╩²: ╬▐
  2597. ╖╡╗╪╓╡: NIL
  2598. └²╫╙: dbclearral() // ╣╪▒╒╦∙╙╨╗ε╢»╣╪╧╡
  2599.  
  2600. ▓╬╝√: @2433 [dbsetrelat](), @3141[set relation]
  2601.  
  2602. dbcloseall()
  2603. ╙∩╖¿:     dbcloseall()
  2604. ╙├═╛:     ╩═╖┼╦∙╙╨▒╗╒╝╙├╡─╣ñ╫≈╟°, ╥▓╝┤╣╪▒╒╦∙╙╨╣ñ╫≈╟°
  2605. ╓╨╡─╦∙╙╨╩²╛▌╬─╝■╥╘╝░╦∙╙╨╗ε╢»╡─╦≈╥²╬─╝■íú
  2606. ▓╬╩²:     ╬▐
  2607. ╖╡╗╪╓╡: NIL
  2608. └²╫╙:     dbcloseall() // ╩═╖┼╦∙╙╨▒╗╒╝╙├╡─╣ñ╫≈╟°
  2609.  
  2610. ▓╬╝√: @2411 [dbclosearea](), @3104[clear all], @3105[close]    
  2611.  
  2612. .2411
  2613. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2614. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  2615.  
  2616. dbclosearea()
  2617. ╙∩╖¿:     dbclosearea()
  2618. ╙├═╛:    ╩═╖┼╡▒╟░╣ñ╫≈╟°, ╥▓╝┤╣╪▒╒╡▒╟░╣ñ╫≈╟°╓╨╦∙╙╨╩²
  2619. ╛▌┐Γ╥╘╝░╦∙╙╨╗ε╢»╡─╦≈╥²╬─╝■íú
  2620. ▓╬╩²:     ╬▐
  2621. ╖╡╗╪╓╡: NIL
  2622. └²╫╙:     select (1)
  2623.     dbclosearea() // ╣╪▒╒╡▒╟░╣ñ╫≈╟°1
  2624.     select (2)
  2625.     
  2626. ▓╬╝√: dbcloseall(), @3104[clear all], @3105[close]
  2627.  
  2628. .2412
  2629. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2630. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  2631.  
  2632. dbcommit()
  2633. ╙∩╖¿: dbcommit()
  2634. ╙├═╛: ╩╣╡▒╟░╣ñ╫≈╟°╓╨╚╬║╬╬─╝■▒╕╖▌▒╗╨┤╚δ┤┼┼╠╓╨íú
  2635. ▓╬╩²: ╬▐
  2636. ╖╡╗╪╓╡: NIL
  2637. └²╫╙:     select (2)
  2638.     dbcommit() // ╬─╝■▒╕╖▌▒╗╨┤╚δ┤┼┼╠
  2639.     
  2640. ▓╬╝√: @3106[commit], @2413 [dbcommitall]()
  2641.  
  2642. .2413
  2643. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2644. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  2645.  
  2646. dbcommitall()
  2647. ╙∩╖¿: dbcommitall()
  2648. ╙├═╛: ╩╣╦∙╙╨╣ñ╫≈╟°╓╨╡─╬─╝■▒╕╖▌▒╗╨┤╚δ┤┼┼╠╓╨íú
  2649. ▓╬╩²: ╬▐
  2650. ╖╡╗╪╓╡: NIL
  2651. └²╫╙: dbcommitall() // ╦∙╙╨╣ñ╫≈╟°╓╨╡─╬─╝■▒╕╖▌▒╗╨┤╚δ┤┼┼╠
  2652.  
  2653. ▓╬╝√: @3106[commit], @2412 [dbcommit]()
  2654.  
  2655. .2414
  2656. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2657. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  2658.  
  2659. dbcreate()
  2660. ╙∩╖¿:    dbcreate (<cDatebase>, <aStruct>)
  2661. ╙├═╛:     ╕∙╛▌╩²╫Θ╓╨┤µ╖┼╡─╨┼╧ó╜¿┴ó╥╗╕÷╨┬╡─╩²╛▌┐Γíú
  2662. ▓╬╩²:     
  2663.     <cDatebase>         ╥¬╜¿┴ó╡─╩²╛▌┐Γ├√
  2664.      <aStruct>         ┤µ╖┼╩²╛▌┐Γ╜ß╣╣╨┼╧ó╡─╩²╫Θ
  2665. ╖╡╗╪╓╡: NIL
  2666. ╦╡├≈:     ╜¿┴ó╩²╛▌┐Γ╬─╝■╡─<aStruct> ▓╬╩²╙ª╕├╩╟╥╗╕÷╙δ║»╩²╜¿
  2667. ┴ó╡─╩²╫Θ╙╨╧α═¼╜ß╣╣╡─╩²╫Θ▓╬╩²íúSTRCTURE EXTENDED └α╨═╡─╩²╫Θ╘¬╦╪
  2668. ▒╪╨δ╙╨╟í╡▒╡─└α╨═íú╝┤╩╣╢╘╖╟╩²╫╓╫╓╢╬╥▓▒╪╨δ╓╕│÷
  2669. ╨í╩²│ñ╢╚íú└α╨═├Φ╩÷╚τ╧┬ú║
  2670.     C ╫╓╖√╨═    N ╩²╓╡╨═    D ╚╒╞┌╨═    
  2671.     M ▒╕╫ó╨═    L ┬▀╝¡╨═
  2672.  
  2673. └²╫╙:     use gz
  2674.     aray: =dbstruct()
  2675.     aadd ( {"name", "c", 10, 0}) // ╠φ╝╙╥╗╕÷╫╓╢╬
  2676.     dbcreate ("mydbf", aray)
  2677.     
  2678. ▓╬╝√: @3109[copy structure extended], @2435 [dbstruct]()    
  2679.  
  2680. dbcreateind()
  2681. ╙∩╖¿: dbcreateind (<cIndexname>, <cKeyexp>, [<bKeyexp>], [lUnique])
  2682. ╙├═╛: ╕°╡▒╟░╣ñ╫≈╟°╓╨╡─╬─╝■╜°╨╨╦≈╥²íú
  2683. ▓╬╩²:    
  2684. <cIndexname>        ╜½▒╗┤┤╜¿╡─╦≈╥²╬─╝■╡─╬─╝■├√íú
  2685. <cKeyexp>    ╜½▒╗╖┼╚δ╦≈╥²╬─╝■╡─╫╓╖√┤«╨╬╩╜╡─╦≈╥²╣╪╝ⁿ╫╓íú
  2686.  [<bKeyexp>]         ╥╗╕÷╙├└┤├Φ╩÷╦≈╥²╣╪╝ⁿ╫╓╡─┐╔╤í┤·┬δ┐Θíú
  2687.  [lUnique]     ╓╕╢¿╕├╣╪╝ⁿ╫╓╜½╩╣╡├╦≈╥²╬─╝■╓╨├┐╕÷╦≈╥²╝ⁿ╓╡
  2688. ╢╝╩╟╬¿╥╗╡─, ╢╘╩²╛▌┐Γ╓╨╛▀╙╨╧α═¼╝ⁿ╓╡╡─╝╟┬╝╜÷╢╘
  2689. ╫ε╟░├µ╡──╟╕÷╝╟┬╝╦≈╥²íú
  2690. ╖╡╗╪╓╡: NIL
  2691. └²╫╙: select (2)
  2692.     dbcreateind ("new",, "name") // ╥╘name ╫╓╢╬╬¬╦≈╥²╣╪╝ⁿ╫╓, ┤┤╜¿╦≈╥²╬─╝■new
  2693.     
  2694. ▓╬╝√: breindex(), @3150[use], @2438 [dbusearea]()        
  2695.  
  2696. .2416
  2697. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2698. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  2699.  
  2700. dbdelete()
  2701. ╙∩╖¿: dbdelete()
  2702. ╙├═╛: ╕°╡▒╟░╣ñ╫≈╟°╓╨┤≥┐¬╡─╩²╛▌┐Γ╡─╡▒╟░╝╟┬╝┤≥
  2703. ╔╧╔╛│²▒Ω╝╟íú
  2704. ▓╬╩²: ╬▐
  2705. ╖╡╗╪╓╡: NIL
  2706. ╦╡├≈:     ╙├dbdelte() ║»╩²┤≥╔╧╔╛│²▒Ω╝╟╡─╝╟┬╝, ╙├SET DELETED ├ⁿ┴ε─▄╣²┬╦╡⌠íú╥▓┐╔
  2707. ╙├PACK ├ⁿ┴ε╜½╕├╝╟┬╝┤╙╩²╛▌┐Γ╓╨╔╛│²íú
  2708. └²╫╙: use my
  2709.     dbdelete() // ╕°╩²╛▌┐Γmy ╡─╡┌╥╗╠⌡╝╟┬╝┤≥╔╧╔╛│²▒Ω╝╟
  2710.     
  2711. ▓╬╝√: @3114[delete], @3136[set deleted]
  2712.  
  2713. .2417
  2714. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2715. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  2716.  
  2717. dbeval()
  2718. ╙∩╖¿:     dbeval (<bBlock>, [<bForcondition>], [<bWhilecondition>], [<nNext>];
  2719.      [<nRecord>], [<lRest>])
  2720. ╙├═╛:     ╗∙╙┌╩²╛▌┐Γ╓╨╠⌠╤í│÷╡─├┐╕÷╝╟┬╝╢╘╥╗╕÷┤·┬δ
  2721. ┐Θ╟≤╓╡íú╝╟┬╝═¿╣²╙δ╧┬┴╨╫╙╛Σ╢╘╙ª╡─▓╬╩²└┤╤í╘±, ╒Γ╨⌐
  2722. ╫╙╛Σ╬¬WinBase ├ⁿ┴ε╖╢╬º─┌╡─for, while, next ║═record, rest ╫╙╛Σíú
  2723. ▓╬╩²:     
  2724.     <bBlock>         ╙├╙┌╟≤╓╡╡─┤·┬δ┐Θíú
  2725. <bForcondition>    ╖╡╗╪┬▀╝¡╓╡╡─┤·┬δ┐Θ, ╚⌠╡─┤·┬δ┐Θ╖╡╗╪╓╡╬¬.T., ╘≥┤·┬δ┐Θ
  2726. ▒╗╟≤╓╡íú
  2727. <bWhilecondition>    ╖╡╗╪┬▀╝¡╓╡╡─┤·┬δ┐Θ, ╚⌠┤·┬δ┐Θ╖╡╗╪╓╡╬¬.T., ╘≥┤·┬δ┐Θ▒╗
  2728. ╟≤╓╡íú╖±╘≥dbeval( ) ║»╩²▒╗╓╒╓╣íú
  2729. [<nNext>]     ╥╗╕÷╩²╫╓╓╡, ╢╘╙ª├ⁿ┴ε╓╨next ╫╙╛Σ╧α═¼╡─╖╜╩╜╠ß╣⌐╥╗╤í╘±
  2730. ╖╢╬ºíú
  2731. [<nRecord>]     ╥╗╕÷╩²╫╓╓╡, ╙├╙┌╓╕╢¿▒╗╟≤╓╡╡─╡Ñ╕÷╝╟┬╝║┼íú
  2732. [<lRest>]     ╥╗╕÷┬▀╝¡▒φ┤∩╩╜, ╡▒▒φ┤∩╩╜╬¬.T., ╖╢╬º╬¬╩ú╧┬╡─╝╟┬╝; ╖±╘≥╫≈
  2733. ╙├╫╓╢╬╬¬╚½╛╓íú
  2734. ╖╡╗╪╓╡: ╫╓╖√┤«ú¼╣ñ╫≈╟°╡─▒≡├√íú
  2735. └²╫╙:// ╧┬└²╩Σ│÷┬·╫πage>20 ╠⌡╝■╡─╦∙╙╨╝╟┬╝╡─no, name, age
  2736.     use my
  2737.     dbeval ( {||if (age>20, qout (no, name, age), nil})
  2738.     
  2739. ▓╬╝√: @1806 [aeval](), avel()    
  2740.  
  2741. .2418
  2742. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2743. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  2744.  
  2745. dbf()
  2746. ╙∩╖¿: dbf()
  2747. ╙├═╛: ╚╖╢¿╡▒╟░╣ñ╫≈╟°╡─▒≡├√íú
  2748. ▓╬╩²: ╬▐
  2749. ╖╡╗╪╓╡: NIL
  2750. ╦╡├≈: ╚⌠╡▒╟░╣ñ╫≈╟°╓╨├╗╙╨╬─╝■▒╗┤≥┐¬, ╘≥╖╡╗╪╓╡╬¬┐╒
  2751. ┤«íú
  2752. └²╫╙:     use my
  2753.     ? dbf() // ╖╡╗╪"my"
  2754.     
  2755. ▓╬╝√: @2402 [alias]()
  2756.  
  2757. .2419
  2758. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2759. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  2760.  
  2761. dbfilter()
  2762. ╙∩╖¿: dbfilter()
  2763. ╙├═╛: ░┤╫╓╖√┤«╨╬╩╜╖╡╗╪╡▒╟░╣²┬╦╞≈▒φ┤∩╩╜íú
  2764. ▓╬╩²: ╬▐
  2765. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  2766. ╦╡├≈: ╚⌠╡▒╟░╣ñ╫≈╟°╓╨├╗╙╨╩╣╙├╣²┬╦╞≈, ╕├║»╩²╖╡╗╪╓╡
  2767. ╬¬┐╒┤«íú
  2768. └²╫╙:     use my
  2769.     temp: =dbfilter()
  2770.     ? temp // ╖╡╗╪╡▒╟░╣²┬╦╞≈▒φ┤∩╩╜
  2771.     
  2772. ▓╬╝√: @3138[set filter], @2425 [dbrelation](), @2426 [dbrselect]()    
  2773.  
  2774. .1819
  2775. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2776. @18[╩²╫Θ║»╩²╦≈╥²]
  2777.  
  2778. dbftoa()
  2779. ╙∩╖¿: dbftoa()
  2780. ╙├═╛:     ╖╡╗╪╙╔╡▒╟░╩²╛▌┐Γ─┌╚▌╣╣│╔╡─╢■╬¼╩²╫Θ, ╫ó╥Γ╩²
  2781. ╛▌┐Γ╠½┤≤╜½║─╛í─┌┤µ
  2782. ▓╬╩²: ╬▐
  2783. ╖╡╗╪╓╡: ╙δ╩²╛▌┐Γ─┌╚▌╧α╢╘╙ª╡─╩²╫Θ
  2784. └²╫╙: 
  2785. arr: = { }
  2786. use datafile
  2787. arr: =dbftoa()
  2788. ? arr [1, 1 ]
  2789.  
  2790. ▓╬╝√:@1816 [atodbf]( )
  2791.  
  2792. .2420
  2793. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2794. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  2795.  
  2796. dbgobottom()
  2797. ╙∩╖¿:     dbgobottom()
  2798. ╙├═╛:     ╕°╡▒╟░╣ñ╫≈╟°╓╨┤≥┐¬╡─╩²╛▌┐Γ╡─╬─╝■╓╕╒δ╥╞
  2799. ╡╜╫ε║≤╡─┬▀╝¡╝╟┬╝╔╧íú
  2800. ▓╬╩²:     ╬▐
  2801. ╖╡╗╪╓╡: NIL
  2802. ╦╡├≈:     ╚τ╣√╡▒╟░╣ñ╫≈╟°╓╨┤µ╘┌╥╗╕÷╗ε╢»╡─╦≈╥², ╘≥╬─╝■
  2803. ╓╕╒δ▒╗dbgobottom() ║»╩²╥╞╡╜╦≈╥²║≤╡─╫ε║≤╥╗╕÷╝╟┬╝╔╧íú╚τ╣√╡▒
  2804. ╟░╣ñ╫≈╟°╓╨┤µ╘┌╥╗╕÷╗ε╢»╡─╣²┬╦╞≈, ╘≥╓╗╙╨╖√║╧╣²
  2805.  ┬╦╠⌡╝■╡─╝╟┬╝▓┼▒╗dbgobottom() ║»╩²┐╝▓Θíú
  2806. └²╫╙:     use my
  2807.     dbgobottom()
  2808.     skip
  2809.     ? eof() // ╖╡╗╪.T.
  2810.     
  2811. ▓╬╝√: @2421 [dbgoto](), @3117[go/goto], @2422 [dbgotop]()    
  2812.  
  2813. .2421
  2814. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2815. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  2816.  
  2817. dbgoto()
  2818. ╙∩╖¿:     dbgoto (<nRecordnumber>)
  2819. ╙├═╛:     ╕∙╛▌╓╕╢¿╡─╝╟┬╝║┼╜½╬─╝■╓╕╒δ╢¿╬╗╡╜╧α╙ª╡─
  2820. ╝╟┬╝╔╧íú
  2821. ▓╬╩²:     
  2822.     <nRecordnumber>     ╩²╫╓╓╡, ╝╟┬╝║┼
  2823. ╖╡╗╪╓╡: NIL
  2824. ╦╡├≈:     ╚τ╣√╧α╙ª╡─╝╟┬╝▓╗┤µ╘┌, ╘≥╬─╝■╓╕╒δ▒╗╢¿╬╗╡╜╫ε
  2825. ║≤╥╗╕÷╝╟┬╝╓«║≤╡─┬▀╝¡╝╟┬╝╔╧íú▓ó╟╥EOF() ║»╩²╖╡╗╪.T.íú
  2826. └²╫╙:     use my
  2827.     dbgoto (4)
  2828.     
  2829. ▓╬╝√: @3117[go/goto], @2422 [dbgotop]()    
  2830.  
  2831. .2422
  2832. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2833. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  2834.  
  2835. dbgotop()
  2836. ╙∩╖¿:     dbgotop()
  2837. ╙├═╛:     ╜½╡▒╟░╣ñ╫≈╟°╓╨┤≥┐¬╡─╩²╛▌┐Γ╡─╬─╝■╓╕╒δ╥╞
  2838. ╡╜╡┌╥╗╕÷┬▀╝¡╝╟┬╝╔╧íú
  2839. ▓╬╩²:     ╬▐
  2840. ╖╡╗╪╓╡: NIL
  2841. ╦╡├≈:     ╚τ╣√╡▒╟░╣ñ╫≈╟°╓╨┤µ╘┌╥╗╕÷╗ε╢»╡─╦≈╥², ╘≥╬─╝■
  2842. ╓╕╒δ▒╗dbgobottom( ) ║»╩²╥╞╡╜╦≈╥²║≤╡─╡┌╥╗╕÷╝╟┬╝╔╧íú╚τ╣√╡▒╟░
  2843. ╣ñ╫≈╟°╓╨┤µ╘┌╥╗╕÷╗ε╢»╡─╣²┬╦╞≈, ╘≥╓╗╙╨╖√║╧╣²┬╦
  2844. ╠⌡╝■╡─╝╟┬╝▓┼▒╗dbgobottom() ║»╩²┐╝▓Θíú
  2845. └²╫╙:     use my
  2846.     dbgotop()
  2847.     skip -1
  2848.     ? bof() // ╖╡╗╪.T.
  2849.     
  2850. ▓╬╝√: @3117[go/goto], @2421 [dbgoto]()
  2851.  
  2852. .2423
  2853. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2854. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  2855.  
  2856. dbrecall()
  2857. ╙∩╖¿: dbrecall()
  2858. ╙├═╛: ╚⌠╡▒╟░╝╟┬╝▒╗┤≥╔╧╔╛│²▒Ω╝╟, ╘≥dbrecall() ║»╩²╜½╗╓╕┤╦ⁿíú
  2859. ▓╬╩²: ╬▐
  2860. ╖╡╗╪╓╡: NIL
  2861. └²╫╙://╗╓╕┤my ╓╨▒╗┤≥╔╧╔╛│²▒Ω╝╟╡─╦∙╙╨╝╟┬╝
  2862.     use my
  2863.     do while. not. eof()
  2864.         dbrecall()
  2865.         skip
  2866.     enddo
  2867.     
  2868. ▓╬╝√: @3130[recall]
  2869.  
  2870. .2424
  2871. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2872. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  2873.  
  2874. dbreindex()
  2875. ╙∩╖¿:     dbreindex()
  2876. ╙├═╛:     ╓╪╨┬╜¿┴ó╡▒╟░╣ñ╫≈╟°╓╨╡─╦∙╙╨╗ε╢»╦≈╥²╬─╝■íú
  2877. ▓╬╩²:     ╬▐
  2878. ╖╡╗╪╓╡: NIL
  2879. ╦╡├≈:     ╩╣╙├dbreindex() ║»╩²║≤, ╬─╝■╓╕╒δ▒╗╢¿╬╗╡╜╓≈╦≈╥²╬─╝■╡─╡┌
  2880. ╥╗╕÷┬▀╝¡╝╟┬╝╔╧íú
  2881. └²╫╙:     use my
  2882.     dbreindex()
  2883.     skip -1
  2884.     ? bof() // ╖╡╗╪.T.    
  2885.  
  2886. ▓╬╝√: @3131[reindex]
  2887.  
  2888. .2425
  2889. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2890. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  2891.  
  2892. dbrelation()
  2893. ╙∩╖¿: dbrelation (<nExp>)
  2894. ╙├═╛: ╚╖╢¿set relation ├ⁿ┴ε╦∙╜¿┴ó╡─╣╪┴¬▒φ┤∩╩╜íú
  2895. ▓╬╩²: 
  2896. <nExp>     ╘┌set relation ├ⁿ┴ε╨╨░ⁿ║¼╡─╣╪╧╡▒φ╓╨╓╕╢¿╥╗╬╗╓├íú
  2897. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  2898. ╦╡├≈: dbrelation() ║»╩²┤µ╓ⁿ╥╗╕÷▒φ╩╛╫╓╢╬├√╡─╫╓╖√┤«, ╞Σ╓╨╫╓╢╬├√
  2899. ╦∙╓╕╢¿╡─╫╓╢╬╬¬set relation ├ⁿ┴ε╠ß╣⌐╥╗╕÷╝ⁿíú╚⌠╡▒╟░╣ñ╫≈╟°╓╨
  2900. ├╗╙╨╗ε╢»╡─╣╪╧╡, ╕├║»╩²╖╡╗╪╓╡╬¬┐╒┤«íú
  2901. └²╫╙://my1, my2, my3 ╕∙╛▌╝╟┬╝║┼╜°╨╨╦≈╥², ╘┘╜¿┴ó╣╪╧╡
  2902.     use my1 index act_one
  2903.     select 2
  2904.     use my2 index act_two
  2905.     select 3
  2906.     use my3 index act_three
  2907.     select 1
  2908.     set relation to kill into my2, to said into my3
  2909.     ? dbrelation (2) // ╖╡╗╪kill
  2910.     ? dbrelation (3) // ╖╡╗╪said
  2911.     ? dbrelation (4) // ╖╡╗╪╥╗┐╒┤«
  2912.     
  2913. ▓╬╝√: @3141[set relation], @2419 [dbfilter](), @2426 [dbrselect]()
  2914.  
  2915. .2426
  2916. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2917. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  2918.  
  2919. dbrselect()
  2920. ╙∩╖¿: dbrselect (<nExp>)
  2921. ╙├═╛: ╚╖╢¿╡▒╟░╣ñ╫≈╟°╓╨╓╕╢¿╡─╣╪╧╡╣ñ╫≈╟°íú
  2922. ▓╬╩²:
  2923.  <nExp>     ╘┌set relation ├ⁿ┴ε╨╨░ⁿ║¼╡─╣╪╧╡▒φ╓╨╓╕╢¿╥╗╬╗╓├íú
  2924. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  2925. └²╫╙://my1, my2, my3 ╕∙╛▌╝╟┬╝║┼╜°╨╨╦≈╥², ╘┘╜¿┴ó╣╪╧╡
  2926.     use my1 index act_one
  2927.     select 2
  2928.     use my2 index act_two
  2929.     select 3
  2930.     use my3 index act_three
  2931.     select 1
  2932.     set relation to kill into my2, to said into my3
  2933.     ? dbrelation (2) // ╖╡╗╪kill
  2934.     ? dbrselect (2) // ╖╡╗╪3
  2935.     ? alias (dbrselect (2)) // ╖╡╗╪my3
  2936.     
  2937. ▓╬╝√: @3141[set relation], @2419 [dbfilter](), @2426 [dbrselect]()
  2938.     
  2939. .2427
  2940. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2941. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  2942.  
  2943. dbseek()
  2944. ╙∩╖¿:     dbseek (<expKey>, [<lSoftkey>])
  2945. ╙├═╛:     ╘┌╡▒╟░╣ñ╫≈╟°╓╨╦╤╦≈╥╗╕÷╞Σ╣╪╝ⁿ╫╓╓╡╙δ╓╕╢¿
  2946. ╡─╣╪╝ⁿ╫╓╓╡╧α═¼╗≥░ⁿ║¼╡─╡┌╥╗╕÷┬▀╝¡╝╟┬╝, ╚τ╣√┤µ
  2947. ╘┌╒Γ╤∙╥╗╕÷╝╟┬╝, dbseek() ║»╩²╖╡╗╪┬▀╝¡╒µ╓╡.T., ╟╥┤╦╝╟┬╝│╔╬¬╡▒
  2948. ╟░╝╟┬╝,╖±╘≥dbseek() ║»╩²╖╡╗╪.F.íú
  2949. ▓╬╩²: 
  2950. <expKey>     ╥╗╕÷╙δ╥¬▓Θ╒╥╡─╝╟┬╝╧α╣╪╡─╚╬║╬└α╨═╡─╣╪╝ⁿ╫╓
  2951. ╓╡íú
  2952. <lSoftkey>     ╥╗╕÷╛÷╢¿╩╟╖±╓┤╨╨╥╗╕÷╚φ╦╤╦≈╡─┬▀╝¡╓╡íú┤╦▓╬╩²
  2953. ╘┌╖√║╧╠⌡╝■╡─╝╟┬╝├╗╙╨╒╥╡╜╩▒, ╕∙╛▌╞Σ╓╡╛÷╢¿╬─╝■╓╕
  2954. ╒δ╡─╬╗╓├íú
  2955. ╖╡╗╪╓╡: ┬▀╝¡└α╨═ú¼╒╥╡╜╖╡╗╪.T.ú¼╖±╘≥╖╡╗╪.F.
  2956. └²╫╙:     use my index age
  2957.     dbseek (20)
  2958.     ? age // ╖╡╗╪20
  2959.     
  2960. ▓╬╝√: @3134[seek], @3116[find]    
  2961.  
  2962. .2428
  2963. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2964. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  2965.  
  2966. dbselectar()
  2967. ╙∩╖¿:     dbselectar (<nArea>|<cAlias>)
  2968. ╙├═╛:     ╩╣╤í╢¿╡─╣ñ╫≈╟°│╔╬¬╡▒╟░╣ñ╫≈╟°
  2969. ▓╬╩²:     
  2970. <nArea>     ╥╗╕÷╩²╫╓╓╡(0-250), ╞Σ╓╡░ⁿ║¼╜½╥¬╤í╘±╡─╣ñ╫≈╟°║┼íú
  2971. <cAlias>     ╥╗╕÷╫╓╖√┤«, ╞Σ╓╡╩╟╜½╥¬╤í╘±╡─╣ñ╫≈╟°╡─▒≡├√íú
  2972. ╖╡╗╪╓╡: NIL
  2973. ╦╡├≈:     ╩╣╙├dbselectar() ║»╩²║≤, ╥╘║≤╡─╩²╛▌┐Γ▓┘╫≈╢╝╜½╓╗╢╘┤╦╣ñ╫≈
  2974. ╟°, │² ╖╟├≈╚╖╓╕╢¿╘┌┴φ╥╗╣ñ╫≈╟°╓╨╜°╨╨─│╥╗╩²╛▌┐Γ
  2975. ▓┘╫≈íú╡▒<nArea> ╤í0 ╩▒, ╜½╘┌╬┤▒╗╒╝╙├╡─╣ñ╫≈╟°╓╨╓╕╢¿╥╗╨≥║┼╫ε
  2976. ╡═╒▀╫≈╬¬╡▒╟░╣ñ╫≈╟°íú
  2977. └²╫╙: dbselectar (2)
  2978.     
  2979. ▓╬╝√: @3135[select]    
  2980.  
  2981. .2429
  2982. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  2983. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  2984.  
  2985. dbsetdriver()
  2986. ╙∩╖¿:     dbsetdriver (<cDriver>)
  2987. ╙├═╛:     ╓╕╢¿╚▒╩í╡─╩²╛▌┐Γ╟²╢»╞≈íú
  2988. ▓╬╩²:     
  2989. <cDriver>     ╥╗╕÷╫╓╖√┤«, ╞Σ╓╡╩╟╬¬╙ª╙├│╠╨≥╓╨╡─╩²╛▌┐Γ▓┘╫≈╓╕
  2990. ╢¿╥╗╚▒╩í╡─╟²╢»íú
  2991. ╖╡╗╪╓╡: ╫╓╖√└α╨═, ╖╡╗╪╡▒╟░╚▒╩í╡─╩²╛▌┐Γ╟²╢»╞≈├√
  2992. └²╫╙: dbsetdrive ("DBFNTX")
  2993.     ...
  2994.     if (dbsetdrive() <>"DBFNTX")
  2995.         ? " ╩²╛▌┐Γ╟²╢»▓╗╢╘! "
  2996.     endif
  2997.  
  2998. .2430
  2999. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3000. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  3001.  
  3002. dbsetfilter()
  3003. ╙∩╖¿:     dbsetfilter (<bCondtion>, [<cCondtion>])
  3004. ╙├═╛:     ╬¬╡▒╟░╣ñ╫≈╟°╔Φ╓├╥╗╕÷╣²┬╦╞≈
  3005. ▓╬╩²:     
  3006.     <bCondtion>         ┤·┬δ┐Θ╨╬╩╜╡─╣²┬╦╠⌡╝■íú
  3007.     [<cCondtion>]         ╫╓╖√┤«╨╬╩╜╡─╣²┬╦╠⌡╝■íú
  3008. ╖╡╗╪╓╡: NIL
  3009. ╦╡├≈: ╚⌠┴╜╕÷▓╬╩²╢╝▒╗╔Φ╓├, ╘≥╦ⁿ├╟▒╪╨δ▒φ╩╛═¼╥╗╕÷╣²
  3010. ┬╦╠⌡╝■íú
  3011.     ╚⌠[<cCondtion>] ▓╬╩²╚▒╩í, ╕├║»╩²╖╡╗╪╥╗┐╒┤«, ╖±╘≥╖╡╗╪nilíú
  3012. └²╫╙:     use my
  3013.     dbsetfilter ( {||age<20}, "age<20") 
  3014.             // ╔Φ╓├╥╗╕÷╣²┬╦╞≈, ╣²┬╦╠⌡╝■╬¬age<20
  3015.     ? dbfilter() // ╖╡╗╪age<20
  3016.     
  3017. ▓╬╝√: @2419 [dbfilter](), @3138[set filter]
  3018.  
  3019. .2431
  3020. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3021. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  3022.  
  3023. dbsetindex()
  3024. ╙∩╖¿:     dbsetindex (<cIndexname>)
  3025. ╙├═╛:     ╘┌╡▒╟░╣ñ╫≈╟°╓╨┤≥┐¬╥╗╕÷╦≈╥²╬─╝■íú
  3026. ▓╬╩²:     
  3027.     <cIndexname>     ╜½▒╗┤≥┐¬╡─╦≈╥²╬─╝■├√íú
  3028. ╖╡╗╪╓╡: NIL
  3029. ╦╡├≈:     ╨┬╦≈╥²╬─╝■▒╗┤≥┐¬║≤, ╝╟┬╝╓╕╒δ╓╕╘┌╥╘╓≈╦≈╥²╬─
  3030. ╝■╬¬╨≥╡─╡┌╥╗╕÷┬▀╝¡╝╟┬╝╔╧íú╕├╣ñ╫≈╟°╓╨╘¡└┤┤≥┐¬
  3031. ╡─╦≈╥²╬─╝■╚╘╚╗╩╟╗ε╡─íú╚⌠╨┬┤≥┐¬╡─╦≈╥²╬─╝■╩╟
  3032. ╕├╣ñ╫≈╟°╓╨╬¿╥╗╡─╦≈╥²╬─╝■, ╘≥╕├╦≈╥²╬─╝■│╔╬¬╓≈
  3033. ╦≈╥²╬─╝■, ╖±╘≥╘¡└┤╡─╓≈╦≈╥²╬─╝■▓╗▒Σíú
  3034. └²╫╙: dbsetindex ("my1. ntx")
  3035.     skip -1
  3036.     ? bof() // ╖╡╗╪.T.
  3037.     
  3038. ▓╬╝√: @3139[set index]
  3039.  
  3040. .2432
  3041. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3042. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  3043.  
  3044. dbsetorder()
  3045. ╙∩╖¿: dbsetorder (<nOrdernum>)
  3046. ╙├═╛: ╘┌╡▒╟░╣ñ╫≈╟°╡─╗ε╢»╦≈╥²╓╨╓╕╢¿╥╗╓≈╦≈╥²íú
  3047. ▓╬╩²: 
  3048.     <nOrdernum>         ╓╕╢¿╡─╓≈╦≈╥²╡─╦≈╥²╨≥║┼íú
  3049. ╖╡╗╪╓╡: NIL
  3050. ╦╡├≈: ╦≈╥²╨≥║┼┤╙1 ┐¬╩╝╕∙╛▌┤≥┐¬╡─╦│╨≥╝╞╩²íú
  3051.     ╚⌠<nOrdernum> ▓╬╩²╚í╬¬0, ╘≥╫ε╧╚┤≥┐¬╡─╦≈╥²╬¬╓≈╦≈╥²íú
  3052. └²╫╙:     use my index no, name, age
  3053.     dbsetorder (2) // ╓≈╦≈╥²╬¬name ╫╓╢╬
  3054.     
  3055. ▓╬╝√: @2431 [dbsetindex]()
  3056.  
  3057. .2433
  3058. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3059. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  3060.  
  3061. dbsetrelat()
  3062. ╙∩╖¿:     dbsetrelat (<nArea>|<cAlias>, <bExp>, [<cExp>])
  3063. ╙├═╛:     ╘┌╡▒╟░╣ñ╫≈╟°(╕╕╣ñ╫≈╟°) ╙δ╓╕╢¿╣ñ╫≈╟°(╫╙╣ñ╫≈╟°) ╓«
  3064. ╝Σ╜¿┴ó╕╕/ ╫╙╣╪╧╡( ╣╪┴¬)íú
  3065. ▓╬╩²ú║
  3066. <cAlias>     ╥╗╕÷╫╓╖√┤«, ╞Σ╓╡╩╟╜½╥¬│╔╬¬╫╙╣ñ╫≈╟°╡─╣ñ╫≈╟°╡─
  3067. ▒≡├√íú
  3068.     <bExp>     ┤·┬δ┐Θ╨╬╩╜╡─╣╪╧╡▒φ┤∩╩╜íú
  3069.     [<cExp>]     ╬─▒╛╨╬╩╜╡─╣╪╧╡▒φ┤∩╩╜íú
  3070. ╖╡╗╪╓╡: NIL
  3071. ╦╡├≈:     ┴╜╣ñ╫≈╟°╜¿┴ó╕╕/ ╫╙╣╪╧╡, ╜½╩╣╫╙╣ñ╫≈╟°╙δ╕╕╣ñ╫≈
  3072. ╟°═¼▓╜íú
  3073.     ╚τ╣√╫╙╣ñ╫≈╟°╓╨╙╨╥╗╗ε╢»╦≈╥², ╘≥╥╞╢»╕╕╣ñ╫≈╟°╝╟
  3074. ┬╝╓╕╒δ╜½╘┌╫╙╣ñ╫≈╟°╓╨╥²╞≡╥╗SEEK ▓┘╫≈, SEEK ▓┘╫≈╡─╣╪╝ⁿ╫╓╩╟
  3075. ╕∙╛▌<bExp>, [<cExp>] ▓╬╩²╓╕╢¿╡─▒φ┤∩╩╜íú╚τ╣√╫╙╣ñ╫≈╟°╓╨├╗╙╨╗ε╢»╦≈
  3076. ╥², ╘≥╥╞╢»╕╕╣ñ╫≈╟°╝╟┬╝╓╕╒δ╜½╘┌╫╙╣ñ╫≈╟°╓╨╥²╞≡
  3077. ╥╗GOTO ▓┘╫≈, GOTO ▓┘╫≈╡─╣╪╝ⁿ╫╓╩╟╕∙╛▌<bExp>, [<cExp>] ▓╬╩²╓╕╢¿╡─▒φ┤∩╩╜íú
  3078. └²╫╙:// ╘┌my ╙δcust ╓«╝Σ╜¿┴ó╕╕/ ╫╙╣╪╧╡, ╣╪╧╡▒φ┤∩╩╜"cust->name"
  3079.     use my NEW
  3080.     use cust New index name
  3081.     select my
  3082.     dbsetrelat ("cust", {|| cust->name}, "cust->name")
  3083.     
  3084. ▓╬╝√: @3141[set relation]
  3085.  
  3086. .2434
  3087. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3088. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  3089.  
  3090. dbskip()
  3091. ╙∩╖¿:     dbskip (<nRecord>)
  3092. ╙├═╛:     ╧α╢╘╙┌╡▒╟░╝╟┬╝╥╞╢»╝╟┬╝╓╕╒δíú
  3093. ▓╬╩²: 
  3094. <nRecord>     ╧α╢╘╙┌╡▒╟░╝╟┬╝╥╞╢»╡─╝╟┬╝╩², <nRecord> ╬¬╒², ╘≥╧≥╟░╥╞╢»;    <nRecord> ╬¬╕║, ╘≥╧≥
  3095. ║≤╥╞╢»íú╚▒╩í╓╡╬¬1íú
  3096. ╖╡╗╪╓╡: NIL    
  3097. └²╫╙:  use my
  3098.     dbskip (-1)
  3099.     ? bof() // ╖╡╗╪.T.
  3100.     
  3101. ▓╬╝√: @2421 [dbgoto](), @3117[go/goto]    
  3102.  
  3103. .2435
  3104. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3105. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  3106.  
  3107. dbstruct()
  3108. ╙∩╖¿:     dbstruct()
  3109. ╙├═╛:     ╜¿┴ó╥╗╕÷╩²╫Θ, ╦ⁿ░ⁿ└¿╡▒╟░┤≥┐¬╩²╛▌┐Γ╡─STRUCTURE EXTENDED ╨┼╧óíú
  3110. ▓╬╩²:     ╬▐
  3111. ╦╡├≈:     dbstruct() ║»╩²╜¿┴ó╥╗╕÷╢α╬¼╩²╫Θ, ╩²╫Θ╓╨╘¬╦╪╡─╩²─┐╬¬╩²
  3112. ╛▌┐Γ╫╓╢╬╡─╩²─┐íúDBS_NAME, DBS_TYPE, DBS_LEN, DBS_DEC ╩╟4 ╕÷╫╙╩²╫Θ, ╒Γ4 ╕÷╫╙╩²╫Θ░┤╦ⁿ├╟╡─
  3113. ├√╫╓(╔╧╨╨┴╨│÷) └┤╥²╙├íú╚⌠╬─╝■╩╟╘┌┴φ╥╗╕÷╣ñ╫≈╟°╓╨┤≥
  3114. ┐¬╡─, ╘≥╢╘dbstruct() ║»╩²╡─╡≈╙├┐╔╥╘╩╣╙├▒≡├√▒φ┤∩╩╜íú
  3115. ╖╡╗╪╓╡: ╩²╫Θ└α╨═
  3116. └²╫╙: use gz
  3117.     aray: =dbstruct()
  3118.     aadd ( {"name", "c", 10, 0)}) // ╠φ╝╙╥╗╕÷╫╓╢╬
  3119.     dbcreate ("mydbf", aray)
  3120.     
  3121. ▓╬╝√: @3109[copy structure extended], @2414 [dbcreate]()
  3122.  
  3123. .2436
  3124. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3125. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  3126.  
  3127. dbunlock()
  3128. ╙∩╖¿:     dbunlock()
  3129. ╙├═╛:     ╩═╖┼╡▒╟░╣ñ╫≈╟°╓╨▒╗╙ª╙├│╠╨≥╦°╢¿╡─╩⌠╙┌╡▒
  3130. ╟░╜°│╠╡─╬─╝■╗≥╝╟┬╝íú
  3131. ▓╬╩²:     ╬▐
  3132. ╖╡╗╪╓╡: NIL
  3133. ╦╡├≈:     ╕├║»╩²╓╗╘┌╣▓╧φ╩²╛▌┐Γ, ═°┬τ╗╖╛│╓╨╙╨╨ºíú
  3134. └²╫╙:     dbunlock()
  3135.     
  3136. ▓╬╝√:     @3148[unlock], @2437 [dbunlockall]()    
  3137.  
  3138. .2437
  3139. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3140. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  3141.  
  3142. dbunlockall()
  3143. ╙∩╖¿:     dbunlockall()
  3144. ╙├═╛:     ╩═╖┼╦∙╙╨╣ñ╫≈╟°╓╨▒╗╙ª╙├│╠╨≥╦°╢¿╡─╩⌠╙┌╡▒
  3145. ╟░╜°│╠╡─╬─╝■╗≥╝╟┬╝íú
  3146. ▓╬╩²:     ╬▐
  3147. ╖╡╗╪╓╡: NIL
  3148. ╦╡├≈:     ╕├║»╩²╓╗╘┌╣▓╧φ╩²╛▌┐Γ, ═°┬τ╗╖╛│╓╨╙╨╨ºíú
  3149. └²╫╙: dbunlockall()
  3150.     
  3151. ▓╬╝√: @3148[unlock], @2436 [dbunlock]()
  3152.  
  3153. .2438
  3154. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3155. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  3156.  
  3157. dbusearea()
  3158. ╙∩╖¿: dbusearea ( [<lNewName>], [<cDriver>], <cName>,;
  3159.      [<cAlias>], [<lShared>], [<lReadOnly>])
  3160. ╙├═╛:     ╘┌╣ñ╫≈╟°╓╨┤≥┐¬╩²╛▌┐Γ╬─╝■íú
  3161. ▓╬╩²:     
  3162. [<lNewName>]     ╥╗╕÷┬▀╝¡╓╡, <lNewName> ╚í╬¬.T. ╩▒, ╘┌╡▒╟░╬┤▒╗╒╝╙├╡─╣ñ╫≈╟°╓╨╚í╥╗╨≥║┼
  3163. ╫ε╨í╒▀╫≈╬¬╡▒╟░╣ñ╫≈╟°; <lNewName> ╚í╬¬.F. ╗≥╚▒╩í╩▒, ╛═╩╣╙├╡▒╟░╣ñ╫≈
  3164. ╟°íú
  3165. [<cDriver>]    ╓╕╢¿╬¬╡▒╟░╣ñ╫≈╟°╖■╬±╡─╩²╛▌┐Γ╟²╢»╞≈├√│╞(╫╓
  3166. ╖√┤«), ╚▒╩í╘≥╩╣╙├╚▒╩í╡─╩²╛▌┐Γ╟²╢»╞≈íú
  3167. <cName>     ╜½╥¬┤≥┐¬╡─╩²╛▌┐Γ╬─╝■├√íú
  3168. [<cAlias>]     ╓╕╢¿╕·╡▒╟░╣ñ╫≈╟°╧α┴¼╧╡╡─╩²╛▌┐Γ╡─▒≡├√ú¼╚▒╩í╩▒
  3169. ▒≡├√╕∙╛▌<cName> ▓╬╩²╔Φ╢¿íú
  3170. [<lShared>]     ╥╗╕÷┬▀╝¡╓╡, ╡▒<lShared> ╚í.T. ╩▒, ╘╩╨φ═°┬τ╓╨╞Σ╦ⁿ╜°│╠┤µ╚í╡▒╟░╜°│╠╡─
  3171. ╩²╛▌┐Γ; ╡▒<lShared> ╚í.F. ╩▒, ▓╗╘╩╨φ═°┬τ╓╨╞Σ╦ⁿ╜°│╠┤µ╚í╡▒╟░╜°│╠╡─╩²
  3172. ╛▌┐Γ; ╚▒╩í╘≥░┤_SET_EXCLUSIVE ╡─╔Φ╓├╜ß╢¿╩╟╖±╘╩╨φ╞Σ╦ⁿ╜°│╠┤µ╚í
  3173. íú
  3174. [<lReadOnly>]    ╥╗╕÷┬▀╝¡╓╡, ╡▒╚í.T. ╓╡╩▒, ╜√╓╣╢╘╡▒╟░╣ñ╫≈╟°╜°╨╨╩²╛▌┐Γ▒╕
  3175. ╖▌, ╟╥┤≥┐¬╡─╩²╛▌┐Γ╬─╝■<cName> ▒╗╔Φ╓├╬¬╓╗╢┴╬─╝■; ╡▒╚í.F. ╓╡╩▒, ╘╩╨φ
  3176. ▒╕╖▌íú╚▒╩í╬¬.F.íú
  3177. ╖╡╗╪╓╡: NIL    
  3178. └²╫╙:     dbusearea (.T., "dbfndx", "my") 
  3179.         // ╘┌╡▒╟░╬┤▒╗╒╝╙├╡─╣ñ╫≈╟°╓╨╚í╥╗╨≥║┼╫ε
  3180.         // ╨í╒▀╫≈╬¬╡▒╟░╣ñ╫≈╟°, ┤≥┐¬╩²╛▌┐Γ╬─╝■my
  3181.  
  3182. ▓╬╝√: @3150[use]    
  3183.  
  3184. .2310
  3185. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3186. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  3187.  
  3188. defdrive()
  3189. ╙∩╖¿: defdrive()
  3190. ╙├═╛: ╚╖╢¿╚▒╩í╡─DOS ┤┼┼╠╟²╢»╞≈
  3191. ▓╬╩²: ╬▐
  3192. ╖╡╗╪╓╡: ┤·▒φ╟²╢»╞≈╡─╡Ñ╕÷┤≤╨┤╫╓╖√
  3193. └²╫╙:     def_drive: =defdrive() +": "
  3194.     ? def_drive
  3195.  
  3196. .1710
  3197. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3198. @17[╧╡═│║»╩²╦≈╥²]
  3199.  
  3200. delay()
  3201. ╙∩╖¿: delay (<nTime>)
  3202. ╙├═╛: ╤╙│┘╓╕╢¿╡─╩▒╝Σ
  3203. ▓╬╩²: 
  3204.     <nTime>     ╤╙│┘╡─├δ╩²
  3205. ╖╡╗╪╓╡: NIL
  3206. └²╫╙: delay (1) // ╤╙│┘╥╗├δ╓╙
  3207.  
  3208. ▓╬╝√: @1504 [inkey]()
  3209.  
  3210. .1301
  3211. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3212. @13[╗ß╗░║»╩²╦≈╥²]
  3213.  
  3214. deldlg()
  3215. ╙∩╖¿: deldlg (<nHandle>, <idType>, <cTitle>)
  3216. ╙├═╛: ╜½╛Σ▒·╬¬nHandle, └α╨═╬¬type, ▒Ω╠Γ╬¬title ╡─╢╘╗░┐≥╔╛│²
  3217. ▓╬╩²:    
  3218.     <nHandle>    ╢╘╗░┐≥╛Σ▒·
  3219.     <idType>    ╢╘╗░┐≥└α╨═
  3220.     <cTitle>    ╢╘╗░┐≥▒Ω╠Γ
  3221. ╖╡╗╪╓╡:│╔╣ª╘≥╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.
  3222. └²╫╙:     #include "winbase.inc"
  3223.     memvar dlg_succ, check_ret, edit_ret, radio_ret, list_ret, mul_ret
  3224.  
  3225.     procedure main()
  3226.     local init_pos: =1
  3227.     private setdlg_ret, dlg_succ
  3228.     private check_ret, edit_ret, radio_ret, list_ret, mul_ret
  3229.  
  3230.     windowstart()
  3231.     msgbox (" ╔╛│²─│└α╢╘╗░┐≥", " ╙ª╙├║»╩²DELDLG() ", 1)
  3232.     setdlg_ret=del_demo (init_pos)
  3233.     if. not. dlg_succ
  3234.         msgbox (" ╔Φ╓├╫Θ║╧╢╘╗░┐≥╩º░▄", "", 1)
  3235.     endif
  3236.     windowexit()
  3237.     return
  3238.  
  3239.     function del_demo (init_pos)
  3240.  
  3241.     dlg_succ=setdlg (19687, "check", " ╢α╧ε┐≥",;
  3242.      { {"CHECK1", 0}, {"CHECK2", 0}, {"CHECK3", 1}}, 1, 8, 20, init_pos)
  3243.     dlg_succ=setdlg (19687, "radio", " ╡Ñ╧ε┐≥", {"RADIO1", "RADIO2"},;
  3244.         1, 8, 42, init_pos)
  3245.     dlg_succ=setdlg (19687, "botton", " ═Ω│╔", "OK", 15, 35)
  3246.     
  3247.     makedlg (19687, " ╫Θ║╧╢╘╗░┐≥")
  3248.     msgbox (" ╧╓╘┌╔╛│²╢α╧ε┐≥", "", 1)
  3249.     deldlg(19687,"check"," ╢α╧ε┐≥")
  3250.     makedlg (19687, " ╫Θ║╧╢╘╗░┐≥")
  3251.     msgbox (" ╒²╚τ╦∙┐┤╡╜╡─", " ╢α╧ε┐≥╥╤▒╗╔╛│²", 1)
  3252.     removedlg (19687)
  3253. return nil
  3254.  
  3255. .2439
  3256. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3257. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  3258.  
  3259. deleted()
  3260. ╙∩╖¿: deleted()
  3261. ╙├═╛: ▓Γ╩╘╡▒╟░╝╟┬╝╩╟╖±╥╤▒╗╫÷╔╧╔╛│²▒Ω╓╛íú
  3262. ▓╬╩²: ╬▐
  3263. ╖╡╗╪╓╡: ┬▀╝¡└α╨═ú¼╚τ╣√╝╟┬╝╫÷╔╧╔╛│²▒Ω╓╛╖╡╗╪.T.ú¼╖±╘≥╖╡
  3264. ╗╪.F.
  3265. └²╫╙: 
  3266. use my
  3267. ? deleted() // ╖╡╗╪.F.
  3268. dbdelete()
  3269. ? deleted() // ╖╡╗╪.T.
  3270.  
  3271. ▓╬╝√: @2416 [dbdelete](), @3114[delete], @3136[set deleted], @3129[pack], @3130[recall]
  3272.  
  3273. .2311
  3274. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3275. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  3276.  
  3277. delfiles()
  3278. ╙∩╖¿: delfiles (<cFilespec>)
  3279. ╙├═╛: ╔╛│²╓╕╢¿╡─╦∙╙╨╬─╝■
  3280. ▓╬╩²: 
  3281.     <cFilespec>         ╬─╝■├√,cFilespec ╓╨┐╔║¼╙╨═¿┼Σ╖√? ╙δ*
  3282. ╖╡╗╪╓╡: ╬▐
  3283. └²╫╙: delfiles ("*. TMP")
  3284.  
  3285. .2440
  3286. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3287. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  3288.  
  3289. descend()
  3290. ╙∩╖¿: descend (<exp>)
  3291. ╙├═╛: ╜¿┴ó╥╗╕÷╜╡╨≥╦≈╥²▓ó╘╩╨φ▓┘╫≈╒▀╢╘╦≈╥²╦╤╦≈íú
  3292. ▓╬╩²: 
  3293.     <exp>        ╦≈╥²╝ⁿ
  3294. ╖╡╗╪╓╡: ╖╡╗╪╓╡╙δ<exp> ╛▀╙╨╧α═¼└α╨═íú
  3295. └²╫╙:     use my
  3296.     index on descend (age) to temp // ╜¿┴ó╜╡╨≥╦≈╥²
  3297.     
  3298. ▓╬╝√: @3116[find], @3118[index], @3122[locate], @2427 [dbseek]()
  3299.  
  3300. .1209
  3301. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3302. @12[▒¿▒φ╔Φ╝╞║»╩²╦≈╥²]
  3303.  
  3304. design()
  3305. ╙∩╖¿:     design (<cPrtname>, <cDbfalias>, <cFomalias>, <nPrtflag>)
  3306. ╙├═╛:     ╙├╙┌╔Φ╝╞╢α╓╓╢α╤∙╡─╩²╛▌▒¿▒φ╩Σ│÷╕±╩╜, ┐╔░╤╔Φ
  3307. ╝╞íó╘ñ╧╘╩╛íó┤≥╙í╚┌╬¬╥╗╠σ, ┐╔╫╘╢»╔·│╔┐╒▒φ╗≥═¿╣²┴Θ
  3308. ╗ε╤í╘±╩²╛▌┐Γ╓╨╡─╫╓╢╬╔·│╔╦∙╨Φ╥¬╡─▒¿▒φ╡╚íú
  3309. ▓╬╩²:    
  3310.     <cPrtname>     ▒¿▒φ╬─╝■├√(. PRT), ╚⌠╬¬┐╒, ╘≥╜¿┴ó╨┬▒φ
  3311.     <cDbfalias>     ╩²╛▌┐Γ▒≡├√
  3312.     <cFomalias>     ╕±╩╜╬─╝■▒≡├√
  3313.     <nPrtflag>     ┤≥╙í▒Ω╝╟, ╝┤
  3314.             0== ╔Φ╝╞┤≥╙í
  3315.             1== ╓╗╫╝┤≥╙í
  3316.             2== ▓╗╫╝▓┘╫≈
  3317.             3== ╥╗░π▓┘╫≈
  3318.             4== ▓╗─▄┤µ┼╠
  3319. └²╫╙ú║
  3320.     use user alias a_user        // ┤≥┐¬╩²╛▌┐Γ
  3321.     use user_fom alias a_fom    // ┤≥┐¬user ╩²╛▌┐Γ╡─form ╬─╝■
  3322.     design ("", "a_user", "a_form", 0)    // ╜°╚δ▒¿▒φ╔Φ╝╞╗╖╛│
  3323.  
  3324. .1711
  3325. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3326. @17[╧╡═│║»╩²╦≈╥²]
  3327.  
  3328. devout()
  3329. ╙∩╖¿: devout (<exp>)
  3330. ╙├═╛: ╜½╥╗╕÷▒φ┤∩╩╜╖ó╦═╡╜╡▒╟░╩Σ│÷╔Φ▒╕╔╧íú
  3331. ▓╬╩²: 
  3332.     <exp>        ╩Σ│÷╡─▒φ┤∩╩╜
  3333. ╖╡╗╪╓╡: NIL
  3334. ╦╡├≈: devout() ║»╩²┤≥╙í▒φ┤∩╩╜╡─╬╗╓├╙╔DEVPOS() ║»╩²┐╪╓╞íú
  3335. └²╫╙:
  3336.     /* ╧┬├µ└²╫╙╗≥╘┌┤≥╙í╗·╔╧┤≥╙í"Winbase ═╝╬─╧╡═│", ╗≥╒▀╘┌╞┴
  3337. ─╗╔╧╧╘╩╛"printer not on"*/
  3338.  local stuffin: ="Winbase ═╝╬─╧╡═│"
  3339. eval ( {||if (set (_set_printer), devout (stuffin),;
  3340. devout ("printer not on"))})
  3341.  
  3342. ▓╬╝√: @1712 [devpos]()
  3343.  
  3344. .1712
  3345. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3346. @17[╧╡═│║»╩²╦≈╥²]
  3347.  
  3348. devpos()
  3349. ╙∩╖¿:     devpos (<nRow>, <nCol>)
  3350. ╙├═╛:     ╓╪╓├╣Γ▒Ω╗≥╓╪╓├┤≥╙í═╖, ╛▀╠σ╟Θ┐÷╥└└╡╙┌SET DEVICE ╡─╫┤╠¼íú
  3351. ▓╬╩²:    
  3352.     <nRow>     ROW() ╗≥PROW() ╡─╨┬╓╡
  3353.     <nCol>     COL() ╗≥PCOL() ╡─╨┬╓╡
  3354. ╖╡╗╪╓╡: NIL
  3355. ╦╡├≈:     ╚τ╣√╦∙╔Φ╓├╡─┤≥╙í═╖╨╨╫°▒Ω╨í╙┌PROW() ╡─╓╡, ╘≥╫╘╢»╧≥
  3356. ┤≥╙í╗·╖ó╦═╥╗╕÷╗╗╥│┐╪╓╞╖√íú
  3357. └²╫╙: 
  3358. /* ╧┬├µ└²╫╙╙δú└12, 20 say " ╗╢╙¡╩╣╙├Winbase ═╝╬─╧╡═│" ╫≈╙├╧α═¼*/
  3359.     devpos (12, 20)
  3360.     qout (" ╗╢╙¡╩╣╙├Winbase ═╝╬─╧╡═│")
  3361.     
  3362. ▓╬╝√: @1711 [devout](), @1753 [setpos]()
  3363.  
  3364. .1713
  3365. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3366. @17[╧╡═│║»╩²╦≈╥²]
  3367.  
  3368. dial()
  3369. ╙∩╖¿: DIAL (<cTelephoneNum>, [<nCommPort>], [ITone]
  3370. ╙├═╛: ▓ª╡τ╗░║┼┬δ
  3371. ▓╬╩²:
  3372. <cTelephoneNum>     ╥¬▓ª╡─╡τ╗░║┼┬δ, ┐╔╥╘░ⁿ║¼╟╢╚δ╡─╕±╩╜╗»╗≥╡≈╓╞╜Γ
  3373. ╡≈╞≈┐╪╓╞╫╓╖√íú
  3374. <nCommPort>    ┐╔╤í╡─═¿╤╕╢╦┐┌║┼, (COM1 ╓┴COM4=1 ╓┴4, ▓╬╝√╧┬├µ╡─╠╓┬█)íú
  3375. <ITone>     ┐╔╤í╡─▓ª║┼╖╜╖¿▒Ω╓╛íú╒µ╬¬╥⌠╞╡▓ª║┼, ╝┘╬¬┬÷│σ▓ª║┼íú
  3376. ╖╡╗╪╓╡: ┬▀╝¡╓╡
  3377. └²╫╙:? DIAL ("5146096", 1,.T.)
  3378. ▓╬╝√:@1714 [dialclr]()
  3379.  
  3380. .1714
  3381. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3382. @17[╧╡═│║»╩²╦≈╥²]
  3383.  
  3384. dialclr()
  3385. ╙∩╖¿: DIALCLR()
  3386. ╙├═╛: ┤╙═¿╤╢╢╦┐┌▓≡│²╡≈╓╞╜Γ╡≈╞≈
  3387. ▓╬╩²: ╬▐
  3388. ╖╡╗╪╓╡: ┬▀╝¡╓╡
  3389. ▓╬╝√:@1713 [dial]()
  3390.  
  3391. .3503
  3392. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3393. @35[╡═╝╢╬─╝■├ⁿ┴ε]
  3394.  
  3395. dir
  3396. ╙∩╖¿: dir <xcFileSpec>
  3397. ╙├═╛:     ▓╗┤°▓╬╩²╩▒, DIR ├ⁿ┴ε╖╡╗╪╥╗╕÷╜÷║¼╙╨. DBF ║≤╫║╡─╬─╝■╡─┴╨
  3398. ▒φ, ╧╘╩╛╬─╝■├√│╞, ╫ε╜ⁿ╨▐╕─╚╒╞┌, ╬─╝■╓╨╡─╝╟┬╝╩²íú╚τ╣√DIR ├ⁿ┴ε
  3399. ╓╨║¼╙╨╟²╢»╞≈, ┬╖╛╢╗≥╒▀─ú╩╜(* ╗≥? ═¿┼Σ╖√), ╘≥╖╡╗╪╥╗╕÷└α╦╞
  3400. DOS ╧╘╩╛╕±╩╜╡─╬─╝■┴╨▒φ, ▒φ╓╨┴╨│÷╬─╝■╗∙▒╛├√│╞íó╬─╝■
  3401. └⌐╒╣├√íó╫╓╜┌│ñ╢╚íó╫ε╜ⁿ╨▐╕─╚╒╞┌íú
  3402. ▓╬╩²:     
  3403. <xcFileSpec>         ╟²╢»╞≈íó─┐┬╝║═╥¬╧╘╩╛╬─╝■╡─╦╡├≈, ┐╔╥╘╩╟╥╗╕÷└¿╘┌
  3404. ╘░└¿║┼╓╨╡─▒φ┤∩╩╜íú
  3405. └²╫╙: dir ( *. prg )
  3406.  
  3407. ▓╬╝√: @2301 [adir](), @2313 [directory](), @2315 [dirfiles](), 
  3408. @2312 [dirdirs]( ), @2314 [direval]()
  3409.  
  3410. .2312
  3411. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3412. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  3413.  
  3414. dirdirs()
  3415. ╙∩╖¿: dirdirs (<cDirPath>)
  3416. ╙├═╛: ╘┌╓╕╢¿╡─┬╖╛╢╓╨▓Θ╒╥┬╖╛╢├√
  3417. ▓╬╩²:    
  3418. <cDirPath>         ┬╖╛╢├√╫╓╖√┤«ú¼╚⌠╬¬┐╒╘≥╘┌╡▒╟░┬╖╛╢╓╨▓Θ╒╥
  3419. ╖╡╗╪╓╡: ┤µ╓ⁿ╫╙─┐┬╝├√╡─╩²╫Θ
  3420. └²╫╙:    arr: =dirdirs ("*. *", "c: \winbase")
  3421.     ? arr [1]
  3422.  
  3423. .2313
  3424. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3425. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  3426.  
  3427. directory()
  3428. ╙∩╖¿:     directory ( [<cDirSpec>], [<cAttributes>])
  3429. ╙├═╛:     ╚í╓╕╢¿─┐┬╝╓╨╡─╬─╝■╨┼╧óíú
  3430. ▓╬╩²:     
  3431. [<cDirSpec>]     ╟²╢»╞≈, ╫╙─┐┬╝║═╬─╝■╡─╖╢╬º╨┼╧óíú╕├▓╬╩²▒╪╨δ╩╟╥╗
  3432. ╫╓╖√▒φ┤∩╩╜íú▒φ┤∩╩╜╓╨┐╔╥╘╩╣╙├═¿┼Σ╖√íú╚▒╩í╬¬╡▒
  3433. ╟░╫╙─┐┬╝╧┬╡─╦∙╙╨╬─╝■íú
  3434.  [<cAttributes>]    ╥╗╕÷╓╕╢¿╠╪╩Γ╬─╝■╩⌠╨╘╡─╫╓╖√┤«, ║»╩²╖╡╗╪╡─╩²╫Θ
  3435. ╓╨╜½░ⁿ║¼╒Γ╕÷╫╓╖√┤«╦∙╓╕╢¿└α╨═╡─╬─╝■íú╠╪╩Γ└α
  3436. ╨═░ⁿ└¿: H= ╥■▓╪╬─╝■, S= ╧╡═│╬─╝■, D= ─┐┬╝╬─╝■, V= ╛φ▒Ω(▓╗░ⁿ└¿╞Σ╦ⁿ╧ε)íú│²
  3437. ╖╟╩╣╙├V ▓╬╩², ╖±╘≥╫▄╩╟░ⁿ└¿▓╗╩⌠╙┌╥╘╔╧╠╪╩Γ└α╨═╡─╞╒
  3438. ═¿╬─╝■íú
  3439. ╖╡╗╪╓╡: ╩²╫Θ└α╨═        
  3440. ╦╡├≈: ┤╦║»╩²╖╡╗╪╥╗║¼5 ╕÷╫╙╩²╫Θ╫≈╬¬╘¬╦╪╡─╢α╬¼╩²
  3441. ╫Θíú
  3442.     ╫╙╩²╫Θ    ╩²╛▌└α╨═    ╔∙├≈│ú╩²
  3443.     1         char         F_NAME (╬─╝■├√)
  3444.     2         num         F_SIZE (╬─╝■│ñ╢╚)
  3445.     3         date         F_DATE (╬─╝■╫ε║≤╨▐╕─╚╒╞┌)
  3446.     4         char         F_TIME (╬─╝■╫ε║≤╨▐╕─╩▒╝Σ)
  3447.     5         char         F_ATTR (╬─╝■╩⌠╨╘)
  3448. └²╫╙: // ╜½╕∙─┐┬╝╧┬╬─╝■╡──┐┬╝╨┼╧ó┤µ╚δ╩²╫Θ╓╨ú¼
  3449.     // ▓ó╧╘╩╛╡┌╥╗╕÷╬─╝■╡─╨┼╧óíú
  3450. public resoult: = { }
  3451. resoult: =directory ("c: \")
  3452. for i=1 to 5
  3453.     ? resoult [1] [i]
  3454. next i
  3455.  
  3456. ▓╬╝√: @2301 [adir]()
  3457.  
  3458. .2314
  3459. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3460. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  3461.  
  3462. direval()
  3463. ╙∩╖¿: direval (<cFilespes>, <bAction>)
  3464. ╙├═╛: ╢╘┬·╫π╠⌡╝■╡─╬─╝■├√╓┤╨╨┤·┬δ┐Θ
  3465. ▓╬╩²: 
  3466.     <cFilespes>    ┐╔╥╘░ⁿ└¿═¿┼Σ╖√╡─╬─╝■├√
  3467.     <bAction>     ╓┤╨╨┤·┬δ┐Θ
  3468. ╖╡╗╪╓╡: ╬▐
  3469. └²╫╙:
  3470.     bb: = {|x|qout (x [1])}
  3471.     direval ("*. prg", bb)
  3472.  
  3473. .2315
  3474. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3475. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  3476.  
  3477. dirfiles()
  3478. ╙∩╖¿: dirfiles (<cFileSpec>, <cDirPath>)
  3479. ╙├═╛: ╘┌╓╕╢¿╡─┬╖╛╢╓╨╗±╚í╬─╝■├√
  3480. ▓╬╩²:     
  3481.     <cFileSpec>         ╬─╝■├√╫╓╖√┤«ú¼┐╔║¼═¿┼Σ╖√(*,?)
  3482.     <cDirPath>        ┬╖╛╢├√╫╓╖√┤«ú¼
  3483. ╖╡╗╪╓╡: ┤µ╓ⁿ╬─╝■├√╡─╩²╫Θ
  3484. └²╫╙:    arr: =dirfiles ("*. *", "c: \winbase")
  3485.     ? arr [1]
  3486.  
  3487. .2316
  3488. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3489. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  3490.  
  3491. dirtolist()
  3492. ╙∩╖¿: dirtolist (<cDirSpec>)
  3493. ╙├═╛: ╚í╓╕╢¿┬╖╛╢╧┬┤°╙╨┬╖╛╢╡─╦∙╙╨╬─╝■
  3494. ▓╬╩²:    
  3495.     <cDirSpec>     ╓╕╢¿╡─┬╖╛╢├√║═╬─╝■├√ú¼┐╔║¼═¿┼Σ╖√
  3496. ╖╡╗╪╓╡: ╬─╝■├√╩²╫Θ
  3497. └²╫╙:     arr: =dirtolist ()
  3498.     ? arr [1]
  3499.  
  3500. .2317
  3501. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3502. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  3503.  
  3504. disksize()
  3505. ╙∩╖¿: DISKSIZE (<nDriveSpec>)
  3506. ╙├═╛: ╚╖╢¿╓╕╢¿┤┼┼╠╡─╕±╩╜╗»║≤╡─╚▌┴┐
  3507. ▓╬╩²:     
  3508.     <nDriveSpec>        ▒Ω╩╢┤┼┼╠╟²╢»╞≈╡─╒√╩²
  3509.                 ╡Σ╨═╓╡╬¬:
  3510.                 0 = ╚▒╩í╟²╢»╞≈
  3511.                 1 = ╟²╢»╞≈A
  3512.                 2 = ╟²╢»╞≈B
  3513.                 3 = ╟²╢»╞≈C, ╡╚
  3514. ╖╡╗╪╓╡: ╒√╩²
  3515. └²╫╙:? DISKSIZE (1)
  3516.  
  3517. .2319
  3518. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3519. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  3520.  
  3521. disktest()
  3522. ╙∩╖¿: disktest (< cDriveLetter>)
  3523. ╙├═╛: ▓Γ╩╘┤┼┼╠╟²╢»╞≈
  3524. ▓╬╩²: 
  3525.     <cDriveLetter>        ╡Ñ╫╓╖√╟²╢»╞≈╖√
  3526. ╖╡╗╪╓╡: ╒²╚╖╖╡╗╪0, ╖±╘≥╖╡╗╪┤φ╬≤┤·┬δ, ┤φ╬≤┤·┬δ▓╬╝√GETINT24()
  3527. └²╫╙:? disktest ("A")
  3528.  
  3529. .2318
  3530. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3531. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  3532.  
  3533. diskspace()
  3534. ╙∩╖¿:     diskspace (<nExp>)
  3535. ╙├═╛:     ╘┌╓┤╨╨╙╨┐╔─▄╥²╞≡┤┼┼╠╥τ│÷┤φ╬≤╡─┤┼┼╠▓┘╫≈
  3536. ╓«╟░, ┐╔╙├┤╦║»╩²╚╖╢¿┤┼┼╠╡─╩ú╙α┐╒╝Σ┴┐íú
  3537. ▓╬╩²: 
  3538. <nExp>     ╢╘╙ª╙┌╙√╝╞╦π╡─╟²╢»╞≈╨≥║┼, 1=A, 2=B, 3=C ╡╚íú
  3539. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  3540. ╦╡├≈: ┤╦║»╩²╖╡╗╪╥╗╕÷╒√╩²╥╘╕µ╦▀╙├╗º┤┼┼╠╔╧╫╘╙╔
  3541. ┐╒╝Σ╡─╫╓╜┌│ñ╢╚íú
  3542. └²╫╙:
  3543. /* ╧┬└²╝∞▓ΘA ┼╠╡─╩ú╙α┐╒╝Σ┴┐, ╚τ╨í╙┌─┐▒Ω╬─╝■│ñ╢╚, ╘≥▓╗
  3544. ┐╜▒┤*/
  3545.  if diskspace (1) < (recsize() *lastrec() +header() +1)
  3546.     cls
  3547.     ú└10, 10 "A ┼╠╡─╫╘╙╔┐╒╝Σ▓╗╣╗, ▓╗─▄┐╜▒┤"
  3548. else
  3549.     copy file klgz. dbf to A:
  3550. endif
  3551.  
  3552. ▓╬╝√: @2474 [recsize](), @2452 [header]()
  3553.  
  3554. .1715
  3555. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3556. @17[╧╡═│║»╩²╦≈╥²]
  3557.  
  3558. dispbox()
  3559. ╙∩╖¿: dispbox (<nRowtop>, <nColtop>, <nRowbot>,;
  3560.      <nColbot>, <ncBoxstring> [, <cColorstring>])
  3561. ╣ª─▄: ╘┌╞┴─╗╔╧╓╕╢¿╬╗╓├╗¡╥╗╖╜┐≥íú
  3562. ▓╬╩²: 
  3563. <nRowtop,nColtop>    ╓╕╢¿╖╜┐≥╫≤╔╧╜╟╡─╨╨┴╨╫°▒Ω
  3564. <nRowbot,nColbot>    ╓╕╢¿╖╜┐≥╙╥╧┬╜╟╡─╨╨┴╨╫°▒Ωíú
  3565.  [<ncBoxstring>]    ╚τ╩╟╩²╫╓▒φ┤∩╩╜, ╟╥▒φ┤∩╩╜╓╡╬¬1, ╗¡╥╗╡Ñ╧▀╖╜┐≥; ▒φ┤∩╩╜
  3566. ╓╡╬¬2, ╗¡╥╗╦½╧▀╖╜┐≥íú
  3567. ╚τ╩╟╫╓╖√▒φ┤∩╩╜, ╘≥╙ª╩╟8 ╕÷╖╜┐≥▒▀╜τ╫╓╖√║═╥╗╕÷╠ε
  3568. │Σ╫╓╖√íú╚▒╩í╘≥╗¡╥╗╡Ñ╧▀╖╜┐≥íú
  3569.  [<cColorstring>]    ╖╜┐≥╧╘╩╛╤╒╔½╡─╫╓╖√▒φ┤∩╩╜íú╚▒╩í╘≥▓╔╙├╥╘╟░╢¿
  3570. ╥σ╣²╡─╤╒╔½íú
  3571. ╖╡╗╪╓╡: NIL
  3572. └²╫╙: dispbox (1, 10, 24, 60, 2, "W") // ╘┌╞┴─╗╔╧╗¡╥╗░╫▒▀╦½╧▀╖╜┐≥
  3573.  
  3574. ▓╬╝√: @3002 [ú└...box]
  3575.  
  3576. .1605
  3577. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3578. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  3579.  
  3580. dispform( )
  3581. ╙∩╖¿: dispform(<cFilename>,<idMode>, <nOffset>, <nRow>, <nCol> )
  3582. ╙├═╛: ┤╙╬─╝■╓╨╓╕╢¿╡─╞½╥╞┤ª╗╓╕┤╞┴─╗
  3583. ▓╬╩²:
  3584.     <cFilename>        ╬─╝■├√, ┐╔┤°┬╖╛╢
  3585. <idMode>    ╬¬0╩▒    ╞½╥╞╧α╢╘╬─╝■┐¬╩╝╬╗╓├ú¼╬¬1╩▒╞½╥╞╧α╢╘╬─
  3586. ╝■╜ß╩°╬╗╓├    
  3587. <nOffset>        ╞½╥╞┴┐
  3588. <nRow, nCol>        ═╝╧≤╗╓╕┤╬╗╓├╡─╨╨┴╨╫°▒Ω
  3589. ╖╡╗╪╓╡: ╬▐
  3590. └²╫╙:function show()
  3591.          local myfile
  3592.          myfile:=getfile("╤í╘±╧╘╩╛╬─╝■","c:\work\*.scr",'')
  3593.          getrname(0,0,fname)   
  3594.         /*┤╙╗╖╛│▒Σ┴┐BASETEMP╦∙╓╕┬╖╛╢╡─╬─╝■fname╓╨╗╓╕┤╞┴─╗*/
  3595.          inkey(0)
  3596.          dispform(fname,0,100) 
  3597.         /*┤╙fname ╓╨╓╕╢¿╡─╞½╥╞100 ( ╧α╢╘╬─╝■┐¬╩╝╬╗╓├)    ┤ª╗╓╕┤╞┴─╗*/
  3598.          return nil
  3599.     
  3600. ▓╬╝√: @1632 [getrname]( )ú¼@1637 [pcx]( )
  3601.  
  3602. .1717
  3603. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3604. @17[╧╡═│║»╩²╦≈╥²]
  3605.  
  3606. donebeep()
  3607. ╙∩╖¿: DONEBEEP ( [<nNumberBeeps>])
  3608. ╙├═╛: ▓·╔·╥╗░π╙├╙┌╓╕╩╛▓┘╫≈╜ß╩°╡─┴╜╓╓╥⌠╡≈╡─╔∙
  3609. ╥⌠
  3610. ▓╬╩²: 
  3611.     <nNumberBeeps>    ╔∙╧∞╡─┤╬╩²
  3612. ╖╡╗╪╓╡: ╬▐
  3613. └²╫╙: DONEBEEP (8)
  3614.  
  3615. .1716
  3616. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3617. @17[╧╡═│║»╩²╦≈╥²]
  3618.  
  3619. doserror()
  3620. ╙∩╖¿:     doserror()
  3621. ╙├═╛:     ╚╖╢¿╩╟╖±╥²╖ó┴╦╥╗╕÷DOS ┤φ╬≤íú
  3622. ▓╬╩²:     ╬▐
  3623. ╖╡╗╪╓╡: ╩²╫╓└α╨═(┤φ╬≤║┼), 0 ▒φ╩╛▓┘╫≈│╔╣ª
  3624. └²╫╙:     if doserror() <>0
  3625.         ? " ╥╤╥²╖ó╥╗╕÷DOS ┤φ╬≤íú"
  3626.         quit
  3627.     endif
  3628.     
  3629. ▓╬╝√:     @2327 [ferror]()        
  3630.  
  3631. .1916
  3632. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3633. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  3634.  
  3635. dtof()
  3636. ╙∩╖¿: DTOF (<dDate>)
  3637. ╙├═╛: ╚╖╢¿╥╗╕÷╘┬╡─╡┌╥╗╠∞╡─╚╒╞┌
  3638. ▓╬╩²:
  3639.     <dDate>     ╥¬▒╗╫¬╗╗╡─╚╒╞┌
  3640. ╖╡╗╪╓╡: ╚╒╞┌╓╡
  3641. └²╫╙:
  3642. ? DTOF (date())
  3643.  
  3644. .1917
  3645. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3646. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  3647.  
  3648. dtol()
  3649. ╙∩╖¿: DTOL (<dDate>)
  3650. ╙├═╛: ╗±╚í╥╗╕÷╘┬╡─╫ε║≤╥╗╠∞╡─╚╒╞┌╓╡
  3651. ▓╬╩²: 
  3652.     <dDate>     ╥¬▒╗╫¬╗╗╡─╚╒╞┌
  3653. ╖╡╗╪╓╡: ╚╒╞┌╓╡
  3654. └²╫╙:    DTOL (date())
  3655.  
  3656. .1606
  3657. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3658. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  3659.  
  3660. drawbox()
  3661. ╙∩╖¿:     drawbox (<nRow1>, <nCol1>, <nRow2>, <nCol2>, <nAttr1>, <nAttr2>, <idType>)
  3662. ╙├═╛:     ╗¡╥╗╓╕╢¿╤╒╔½╡─▒▀┐≥
  3663. ▓╬╩²:     
  3664.     <nRow1, nCol1>     ╓╕╢¿╡─╞┴─╗╟°╙≥╫≤╔╧╜╟╫°▒Ω;
  3665.     <nRow2, nCol2>     ╓╕╢¿╡─╞┴─╗╟°╙≥╙╥╧┬╜╟╫°▒Ω;
  3666.     <nAttr1>        ▒▀┐≥╤╒╔½; 
  3667.     <nAttr2>         ╠ε│Σ╤╒╔½
  3668.     <idType>         ╬¬1 ╡Ñ╧▀, ╬¬2 ╦½╧▀
  3669. ╖╡╗╪╓╡: NIL
  3670. └²╫╙: 
  3671. function mybox()
  3672. local i, j
  3673. for i=10 to 62 step 4
  3674.     for j=6 to 22 step 2
  3675.         drawbox (j, i, j+1, i+3, 1, 7, 1)
  3676.     next 
  3677. next 
  3678. return nil
  3679.     
  3680. ▓╬╝√: @1628 [g_rect](), @1602 [box3d]()
  3681.  
  3682. .1302
  3683. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3684. @13[╗ß╗░║»╩²╦≈╥²]
  3685.  
  3686. drawdlg()
  3687. ╙∩╖¿: drawdlg (<nHandle>, <nPos>, <idFlag>)
  3688. ╙├═╛: ╓╪╗¡─│└α╢╘╗░┐≥, ╛¡│ú╙δmodifydlg( ) ╥╗╞≡╩╣╙├
  3689. ▓╬╩²:    
  3690.     <nHandle>    ╢╘╗░┐≥╛Σ▒·
  3691.     <nPos>        ╥¬╗¡╡─╢╘╗░┐≥╘┌╒√╕÷╢╘╗░┐≥┤░┐┌╡─╨≥║┼
  3692.     <idFlag>    ╬¬┐╒╩▒, ╗¡│÷╢╘╗░┐≥▒▀┐≥, ╖±╘≥▓╗╗¡
  3693. ╖╡╗╪╓╡:│╔╣ª╘≥╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.
  3694. └²╫╙:    
  3695. ▓╬╝√: @1308 [modifydlg] └α
  3696.  
  3697. .1607
  3698. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3699. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  3700.  
  3701. drawline()
  3702. ╙∩╖¿: drawline (<nX1>, <nY1>, <nX2>, <nY2>, <nColor>)
  3703. ╙├═╛: ┤╙╡▒╟░╧≤╦╪╬╗╓├╗¡╥╗╓╕╢¿╤╒╔½╡─╓▒╧▀╡╜┴φ╥╗
  3704. ╧≤╦╪╬╗╓├
  3705. ▓╬╩²:     
  3706.     <nX1, nY1>    ╞≡╡π╧≤╦╪╫°▒Ω
  3707.     <nX2,nY2>     ╓╒╡π╧≤╦╪╫°▒Ω;
  3708.     <nColor>    ╓╕╢¿╤╒╔½
  3709. ╖╡╗╪╓╡: NIL
  3710.  
  3711. ▓╬╝√: g_port(), @1631 [g_style](), @1619 [g_lineto]()
  3712.  
  3713. .1608
  3714. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3715. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  3716.  
  3717. drawtext()
  3718. ╙∩╖¿: drawtext (<nX>, <nX>, <nFc>, <nBc>, <cStr>)
  3719. ╙├═╛: ╗¡│÷16í┴16 ╡π╒≤╫╓╖√┤«
  3720. ▓╬╩²:    
  3721.     <nX, nY>     ╗¡╡π╒≤╫╓╖√┤«╡─╧≤╦╪╫°▒Ω
  3722.     <nFc, nBc>     ╟░╛░╔½, ▒│╛░╔½, ╚⌠nBc=255, ╘≥▓╗╩╣╙├▒│╛░╔½
  3723.     <cStr>         ╫╓╖√┤«
  3724. ╖╡╗╪╓╡: ╬▐
  3725. └²╫╙:     fontinit ("\wbsdos\wbszks")
  3726.     drawtext (100, 100, 9, 7, " ╘╞┤≤╚φ╝■╣½╦╛")
  3727.     fontexit()
  3728.  
  3729. .1609
  3730. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3731. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  3732.  
  3733. drawvcf()
  3734. ╙∩╖¿: drawvcf (<nX>, <nY>, <nFc>, <nBc>, <nW>, <nH>, <nFont>, <nDir>, <cStr>)
  3735. ╙├═╛: ╗¡│÷╩╕┴┐╫╓╖√┤«, ╘┌╩╣╙├╟░╥¬╘╦╨╨loadfont ║═idx ╥╘╟²╢»╩╕┴┐
  3736. ╫╓╠σíú
  3737. ▓╬╩²:    
  3738.     <nX, nY>     ╗¡╡π╒≤╫╓╖√┤«╡─╧≤╦╪╫°▒Ω
  3739.     <nW, nH>     ╫╓╖√┐φ, ╕▀
  3740.     <nFont>    ╫╓╠σ
  3741.             ╫╓╠σ▒α║┼╚τ╧┬:
  3742.             1: ╦╬╠σ   2: ╖┬╦╬   3: ║┌╠σ   4: ┐¼╠σ     5: ▒Ω╦╬
  3743.             6: ┤≤║┌   7: ╬║▒«   8: ╨╨┐¼   9: ┴Ñ╩Θ   28:╖▒╠στ·τΩ
  3744.     <nDir>        ╫╓╖╜╧≥ú¼╬¬1
  3745. <nFc, nBc>     ╫╓╠σ╟░╛░╔½, ▒│╛░╔½; ╚⌠nBc=255, ╘≥▓╗╩╣╙├▒│╛░╔½
  3746.     <cStr>        ╫╓╖√┤«
  3747. ╖╡╗╪╓╡: ╬▐
  3748. └²╫╙: drawtext (40, 40, 9, 7, 48, 60, 0, 1, " ╘╞┤≤╚φ╝■╣½╦╛")
  3749.  
  3750. .1914
  3751. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3752. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  3753.  
  3754. dow()
  3755. ╙∩╖¿: dow (<dExp>)
  3756. ╙├═╛: ╖╡╗╪╚╒╞┌<dExp> ╓╨╨╟╞┌╝╕╡─╩²╫╓▒φ╩╜íú
  3757. ▓╬╩²: 
  3758.     <dExp>     ║╧╖¿╡─╚╒╞┌
  3759. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  3760. └²╫╙:    ? dow (ctod ("02/01/94"))     // ╜ß╣√╩╟3
  3761.  
  3762. ▓╬╝√:     @1904 [cdow](), @1906 [cmonth](), @1912 [day](), @1924 [month]()
  3763.  
  3764. .1915
  3765. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3766. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  3767.  
  3768. dtoc()
  3769. ╙∩╖¿:     dtoc (<dExp>)
  3770. ╙├═╛:     ╜½╚╒╞┌<dExp> ╫¬╗╗│╔╥╗╕÷╫╓╖√┤«íú
  3771. ▓╬╩²:     
  3772.     <dExp>     ║╧╖¿╡─╚╒╞┌
  3773. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  3774. └²╫╙:     temp: =dtoc (date())
  3775.     ? temp // ╖╡╗╪└α╦╞94 ─Ω2 ╘┬1 ╚╒
  3776.     
  3777. ▓╬╝√:     @1907 [ctod](), @1918 [dtos]()
  3778.  
  3779. .2010
  3780. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3781. @20[╩²╤º║»╩²╦≈╥²]
  3782.  
  3783. dtor()
  3784. ╙∩╖¿: dtor (<degree>)
  3785. ╙├═╛: ╜½╜╟╢╚╫¬╗╗╬¬╗í╢╚
  3786. ▓╬╩²: 
  3787.     <degree>     ╜╟╢╚
  3788. ╖╡╗╪╓╡: ╗í╢╚
  3789. └²╫╙:? dtor (180)    //╖╡╗╪ú║3.141592654
  3790.  
  3791. .1918
  3792. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3793. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  3794.  
  3795. dtos()
  3796. ╙∩╖¿:     dtos (<dExp>)
  3797. ╙├═╛:     ╜½╚╒╞┌<dExp> ╫¬╗╗│╔╥╗╕÷╫╓╖√┤«íú╕├┤«┐╔╫≈╬¬╕┤║╧╦≈
  3798. ╥²╡─╥╗▓┐╖▌íú
  3799. ▓╬╩²: 
  3800.     <dExp>    ║╧╖¿╡─╚╒╞┌
  3801. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  3802. └²╫╙:     temp: =dtoc (date())
  3803.     ? temp // ╖╡╗╪└α╦╞19940201
  3804.     
  3805. ▓╬╝√:     @1907 [ctod](), @1915 [dtoc]()
  3806.  
  3807. .2207
  3808. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3809. @22[╫╓╖√┤«║»╩²╦≈╥²]
  3810.  
  3811. empty()
  3812. ╙∩╖¿:     empty (<exp>)
  3813. ╙├═╛:     ╚╖╢¿╥╗╕÷▒φ┤∩╩╜╩╟╖±╬¬╖╟┐╒╓╡, ╗≥╒▀╩╟╖±╬¬╒µ╓╡
  3814. ╗≥╖╟0 ╓╡íú
  3815. ▓╬╩²:     
  3816.     <exp>        ║╧╖¿▒φ┤∩╩╜
  3817. ╖╡╗╪╓╡: ┬▀╝¡└α╨═
  3818. ╦╡├≈: ▒φ┤∩╩╜<exp> ┐╔╥╘╩╟╚╬║╬└α╨═íú╡▒╥╘╧┬╠⌡╝■╬¬╒µ╩▒, ╕├║»
  3819. ╩²╖╡╗╪.T.
  3820. 1. ╫╓╖√▒φ┤∩╩╜╗≥▒╕╫ó▒φ┤∩╩╜╬¬╥╗┐╒┤«╗≥╬¬╥╗┐╒╕±
  3821. ┤«íú
  3822. 2. ╩²╫╓▒φ┤∩╩╜╬¬0íú
  3823. 3. ╚╒╞┌▒φ┤∩╩╜╬¬┐╒íú
  3824. 4. ┬▀╝¡▒φ┤∩╩╜╬¬.F.íú
  3825. 5.╩²╫Θ╬¬┐╒
  3826. 6.NIL
  3827. └²╫╙: 
  3828. temp: =space (2)
  3829. ? empty (temp) // ╩Σ│÷.T.
  3830.  
  3831. .2441
  3832. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3833. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  3834.  
  3835. eof()
  3836. ╙∩╖¿:     eof()
  3837. ╙├═╛:     ▓Γ╩╘╡▒╟░╝╟┬╝╓╕╒δ╩╟╖±╥╤╥╞╡╜╫ε║≤╥╗╕÷╝╟┬╝
  3838. ╓«║≤íú
  3839. ▓╬╩²:     ╬▐
  3840. ╖╡╗╪╓╡: ┬▀╝¡└α╨═
  3841. ╦╡├≈:     ╘┌╓┤╨╨find, seek ╗≥locate ├ⁿ┴ε╩▒, ╚τ╣√╢╘╝╟┬╝║═╦╤╦≈╠⌡╝■╡─├┐┤╬
  3842. ╞Ñ┼Σ╛∙╩º░▄, ╘≥╝╟┬╝╓╕╒δ▒╗╢¿╬╗╡╜eof()íúSET SOFTSEEK ON ├ⁿ┴ε╗ß╕─▒Σ╔╧╩÷
  3843. ├ⁿ┴ε╡─╨╨╬¬íú
  3844. └²╫╙: // ┤≥╙í╡▒╟░╩²╛▌┐Γ╓╨┬·╫πage>20 ╡─╦∙╙╨╝╟┬╝╡─name ╫╓╢╬    
  3845.     use my
  3846.     locate for age>20
  3847.     do while. not. eof()
  3848.     ? name
  3849.     continue
  3850.     enddo
  3851.     
  3852. ▓╬╝√:    @2403 [bof](), @2473 [recno](), @3122[locate], @3116[find], @2427 [dbseek]
  3853.  
  3854. .2442
  3855. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3856. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  3857.  
  3858. equvars()
  3859. ╙∩╖¿: equvars()
  3860. ╙├═╛: ░╤╩²╛▌┐Γ╡▒╟░╝╟┬╝╡──┌╚▌╕│╓╡╡╜╙╔initvars() ┤┤╜¿╡──┌
  3861. ┤µ▒Σ┴┐
  3862. ▓╬╩²: ╬▐
  3863. ╖╡╗╪╓╡: NIL
  3864. └²╫╙: ▓╬╝√initvars()
  3865.  
  3866. .1718
  3867. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3868. @17[╧╡═│║»╩²╦≈╥²]
  3869.  
  3870. errorbeep()
  3871. ╙∩╖¿: errorbeep ( [<nNumberBeep>])
  3872. ╙├═╛: ▓·╔·╔╘▓╗╩µ╖■╡─╢╠┤┘╔∙σ
  3873. ▓╬╩²: 
  3874.     <nNumberBeep>      ┐╔╤í╡─╖ó╔∙┤╬╩²
  3875. ╖╡╗╪╓╡: ╬▐
  3876. └²╫╙: errorbeep (8)
  3877.  
  3878. .1719
  3879. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3880. @17[╧╡═│║»╩²╦≈╥²]
  3881.  
  3882. errorlevel()
  3883. ╙∩╖¿:     errorlevel (<nExp>)
  3884. ╙├═╛:     ╢┴╚í╗≥╔Φ╓├DOS │÷┤φ╝╢▒≡íú
  3885. ▓╬╩²:     
  3886. <nExp>     ╔Φ╓├DOS │÷┤φ╝╢▒≡, ╚τ╚▒╩í╘≥▓╗╫÷╨┬╔Φ╓├(0<nExp<255 )íú
  3887. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  3888. ╦╡├≈:     ╡▒WINBASE ╙ª╙├│╠╨≥╒²│ú╓╒╓╣╩▒, DOS │÷┤φ╝╢▒≡▒╗╔Φ╓├╡╜╒²│ú
  3889. ╗╖╛│╡─╓╡(╬¬0),╚τ╙ª╙├│╠╨≥╙╔╙┌╘╦╨╨╩▒┐╠┤φ╬≤╢°╖╟
  3890. ╒²│ú╓╒╓╣, ╘≥│÷┤φ╝╢▒≡╬¬1, ╗≥╒▀╬¬╙ª╙├│╠╨≥╫ε║≤═¿╣²
  3891. errorlevel() ║»╩²╔Φ╓├╡─╓╡íú╚τ╩╣╙├errorlevel() ║»╩²╔Φ╓├│÷┤φ╝╢▒≡, ╘≥║»╩²╖╡╗╪
  3892. WINBASE ╡▒╟░ERRORLEVEL ╔Φ╓├íú╖±╘≥, ERRORLEVEL ▒╗╔Φ╓├╬¬0íú
  3893. └²╫╙: if │÷┤φ
  3894.         errorlevel (2)     //╔Φ╓├ERRORLEVEL ╡╚╙┌2
  3895.     else
  3896.         errorlevel (0)     //╔Φ╓├ERRORLEVEL ╡╚╙┌0
  3897.     endif
  3898.     
  3899. ▓╬╝√:     @2327 [ferror]()        
  3900.  
  3901. .2501
  3902. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3903. @25[├ⁿ┴ε╩²╦≈╥²]
  3904.  
  3905. eval()
  3906. ╙∩╖¿:     eval (<bBlock>, [<Explist>])
  3907. ╙├═╛:     ╢╘╥╗╕÷┤·┬δ┐Θ╟≤╓╡íú
  3908. ▓╬╩²: 
  3909. <bBlock>     ╙├╙┌╟≤╓╡╡─┤·┬δ┐Θ
  3910. [<Explist>]     ╚╬║╬└α╨═╡─▒φ┤∩╩╜, ╕├▒φ┤∩╩╜╫≈╬¬▓╬╩²┤½╦═╕°eval() ║»╩²íú<bBlock> ╓╕
  3911. ╢¿╡─┤·┬δ┐Θ▒╪╨δ─▄╣╗┤ª└φ<Explist> ╓╕╢¿╡─╩²╛▌└α╨═, ╖±╘≥╘┌
  3912. ╘╦╨╨╩▒╗ß╥²╖ó╥╗╕÷▓╬╩²┤φ╬≤íú
  3913. ╖╡╗╪╓╡: ▒φ┤∩╩╜▒φ╓╨╫ε║≤╥╗╕÷▒φ┤∩╩╜╡─╟≤╓╡╜ß╣√▒╗
  3914. ╖╡╗╪, ╕├╖╡╗╪╓╡┐╔╥╘╩╟╚╬║╬└α╨═íú
  3915. └²╫╙:     time_pi: = {|x|x*3. 14}
  3916.     ? eval (time_pi, 4} // ╖╡╗╪12. 56
  3917.     
  3918. ▓╬╝√:     @1806 [aeval](), @2417 [dbeval](), @2445 [fieldblock](), @1730 [memvarblock]()
  3919.  
  3920. .2011
  3921. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3922. @20[╩²╤º║»╩²╦≈╥²]
  3923.  
  3924. exp()
  3925. ╙∩╖¿:     exp (<nExp>)
  3926. ╙├═╛:     ╝╞╦π╩²╤º▒φ┤∩╩╜╡─╫╘╚╗╓╕╩²íú
  3927. ▓╬╩²:     
  3928.     <nExp>     ▒╗╟≤╓╡╡─╩²╤º▒φ┤∩╩╜
  3929. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  3930. └²╫╙:    
  3931. ? exp (4. 7) // ╖╡╗╪109. 95
  3932. set decimals to 6 // ╔Φ╓├╨í╩²╬╗╬¬6 ╬╗
  3933. ? exp (4. 7) // ╖╡╗╪109. 947172
  3934.  
  3935. ▓╬╝√:    @3201[set decimals], @3203[set fixed], @2015 [log]()    
  3936.  
  3937. .2320
  3938. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3939. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  3940.  
  3941. f_comp()
  3942. ╙∩╖¿: f_comp (<cFile1>, <cFile2>)
  3943. ╙├═╛: ▒╚╜╧┴╜╕÷╬─╝■╡─╚╒╞┌╝░╩▒╝Σ
  3944. ▓╬╩²:    
  3945.     <cFile1>    ╬─╝■├√
  3946.     <cFile2>     ╬─╝■├√
  3947. ╖╡╗╪╓╡: ╚⌠cFile1 ╡─╩▒╝Σ║≤╙┌cFile2 ╡─╩▒╝Σ╘≥╖╡╗╪1ú¼╖±╘≥╖╡╗╪0íú
  3948.  
  3949. .2321
  3950. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3951. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  3952.  
  3953. f_gettm()
  3954. ╙∩╖¿: f_gettm (<nHandle>, ú└<dFdate>, ú└<cFtime>)
  3955. ╙├═╛:     ╙╔╬─╝■╛Σ▒·╗±╡├╬─╝■╡─╚╒╞┌╝░╩▒╝Σ, ▓ó╜½╚╒╞┌╖╡
  3956. ╗╪╡╜cFdateú¼╩▒╝Σ╖╡╗╪╡╜cFtimeíú
  3957. ▓╬╩²:    
  3958.     <nHandle>     ╬─╝■╛Σ▒·
  3959.     <dFdate>     ╬─╝■╚╒╞┌
  3960.     <cFtime>     ╬─╝■╩▒╝Σ
  3961. ╖╡╗╪╓╡: │╔╣ª╖╡╗╪0ú¼╖±╘≥╬¬DOS ┤φ╬≤║┼
  3962. └²╫╙:    fh: =fopen ("\wbsex\fattr. prg", 2)
  3963.     f_gettm (fh, ú└ftime, ú└fdate)
  3964.     ? ftime
  3965.     ? fdate
  3966.  
  3967. .2322
  3968. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3969. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  3970.  
  3971. f_settm()
  3972. ╙∩╖¿: f_settm (<nHadle>, <dFdate>, <cFtime>)
  3973. ╙├═╛: ╔Φ╓├╬─╝■╡─╚╒╞┌╝░╩▒╝Σ, ╞Σ╓╨╬─╝■╚╒╞┌╝░╬─╝■╩▒
  3974. ╝Σf_gettm ╗±╡├
  3975. ▓╬╩²:    
  3976.     <nHandle>    ╬─╝■╛Σ▒·
  3977.     <dFdate>     ╬─╝■╚╒╞┌
  3978.     <cFtiem>     ╬─╝■╩▒╝Σ
  3979. ╖╡╗╪╓╡: │╔╣ª╖╡╗╪0ú¼╖±╘≥╬¬DOS ┤φ╬≤║┼
  3980.  
  3981. .2323
  3982. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  3983. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  3984.  
  3985. fclose()
  3986. ╙∩╖¿:     fclose (<nExp>)
  3987. ╙├═╛:     ╦ó╨┬╗║│σ╟°▓ó╜½╞Σ─┌╚▌╨┤╡╜╥╗╕÷╙╔║»╩²fcreate() ╗≥║»
  3988. ╩²fread( ) ┤≥┐¬╡─┤┼┼╠╬─╝■╓╨íú
  3989. ▓╬╩²:     
  3990.     <nExp>     ╥¬╣╪▒╒╬─╝■╡─╛Σ▒·
  3991. ╖╡╗╪╓╡:┬▀╝¡└α╨═
  3992. └²╫╙: // ╚τA ┼╠┐╒╝Σ╫π╣╗┤≤, ╘≥╜½╗║│σ╟°─┌╚▌╨┤╚δA ┼╠▓ó╣╪▒╒
  3993. ╬─╝■
  3994.     if len (buff) <diskspace (1)
  3995.     fwrire (hand, buff)
  3996.     fclose (hand)
  3997.     endif
  3998.  
  3999. ▓╬╝√:     @2324 [fcreate](), @2352 [fwrite]()    
  4000.  
  4001. .2443
  4002. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4003. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  4004.  
  4005. fcount()
  4006. ╙∩╖¿:     fcount()
  4007. ╙├═╛:     ╚╖╢¿╥╗╕÷╩²╛▌┐Γ╓╨╫╓╢╬╡─╩²─┐íú
  4008. ▓╬╩²:     ╬▐
  4009. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  4010. ╦╡├≈:     ╚τ╣√╡▒╟░├╗╙╨╩╣╙├╬─╝■, ╘≥╖╡╗╪0íú
  4011. └²╫╙:     use my     // ╬─╝■╓╨╙╨10 ╕÷╫╓╢╬
  4012.     ú└ 24, 20 say " ╫╓╢╬╡─╩²─┐╬¬"+fcount() // ╖╡╗╪10
  4013.     
  4014. ▓╬╝√:     @2401 [afields](), @2444 [field]()    
  4015.  
  4016. .2324
  4017. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4018. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4019.  
  4020. fcreate()
  4021. ╙∩╖¿:     fcreate (<cFile>, (<nExp>])
  4022. ╙├═╛:     ╩╣╙├dos ╡─╡═╝╢╩Σ╚δ/ ╩Σ│÷└┤╜¿┴ó╥╗╕÷╬─╝■╗≥╜½╥╗
  4023. ╕÷╬─╝■╡─│ñ╢╚╓├╬¬0íú
  4024. ▓╬╩²:     
  4025.     <cFile>         ╥¬╜¿┴ó╬─╝■╡─├√│╞íú
  4026.     <nExp>     ╬─╝■╩⌠╨╘├Φ╩÷╫╓(0_4), ╚τ╧┬
  4027.             0     ╞╒═¿╬─╝■
  4028.             1     ╓╗╢┴╬─╝■
  4029.             2     ╥■▓╪╬─╝■
  4030.             3     ╓╗╢┴╝╙╥■▓╪╬─╝■
  4031.             4     ╧╡═│╬─╝■
  4032.             ╚▒╩í╬─╝■╩⌠╨╘├Φ╩÷╫╓╬¬0íú
  4033. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  4034. ╦╡├≈:     ╚τ╣√╘┌┤≥┐¬╬─╝■╡─▓┘╫≈╓╨│÷╧╓┴╦┤φ╬≤, ╘≥╖╡╗╪╬─
  4035. ╝■╛Σ▒·╫╓-1íú╚τ╣√fcreate() ║»╩²╓╨╡─<cFile> ▓╬╩²╓╕╢¿┴╦╥╗╕÷╥╤┤µ╘┌
  4036. ╡─╬─╝■├√, ╘≥╘¡└┤╡─╬─╝■─┌╚▌╜½▒╗╔╛│²íú┤≥┐¬╥╗╕÷╥╤┤µ
  4037. ╘┌╡─╬─╝■╙ª╩╣╙├fopen() ║»╩²íú
  4038. └²╫╙:     hand: =fcreat ("myfile. txt", 2)
  4039.          // ╜¿┴ó╬─╝■myfile. txt, ╬─╝■╩⌠╨╘╬¬╥■▓╪
  4040.     
  4041. ▓╬╝√:    @2323 [fclose]()    
  4042.  
  4043. .2326
  4044. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4045. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4046.  
  4047. feof()
  4048. ╙∩╖¿: feof (<nHandle>)
  4049. ╙├═╛: ╚╖╢¿╬─╝■╩╟╖±╜ß╩°
  4050. ▓╬╩²: 
  4051.     <nHandle>     ╬─╝■╛Σ▒·
  4052. ╖╡╗╪╓╡: ╡╜╬─╝■╬▓╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.
  4053. └²╫╙: h: =fopen ("file. dat", 2)
  4054.     ? feof (h)
  4055.  
  4056. .2325
  4057. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4058. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4059.  
  4060. fearse()
  4061. ╙∩╖¿:     fearse (<cFilename>)
  4062. ╙├═╛:     ┤╙┤┼┼╠╔╛│²╬─╝■íú
  4063. ▓╬╩²: 
  4064.     <cFilename>         ╥¬╔╛│²╡─╬─╝■├√
  4065. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  4066. ╦╡├≈:     ╚τ╣√╘┌╔╛│²╬─╝■╡─▓┘╫≈╓╨│÷╧╓┴╦┤φ╬≤, ╘≥╖╡╗╪-1, ╚τ
  4067. ╣√╔╛│²│╔╣ª, ╘≥╖╡╗╪0íúferase() ║»╩²▓╗╫±╤¡SET DEFAULT ╫┤╠¼╗≥SET PATH ╫┤╠¼, ╔╛│²▓┘╫≈
  4068. ╓«╟░▒╪╨δ╣╪▒╒╬─╝■íú
  4069. └²╫╙: // ╚τ╬─╝■myfile. bak ┤µ╘┌, ╘≥╔╛│²╦ⁿ, ╚τ╔╛│²│╔╣ª, ╘≥╕°│÷╨┼╧ó
  4070.     if file ("myfile. bak")
  4071.         if ferase ("myfile. bak") ==0
  4072.             ? " ╬─╝■myfile. bak ╥╤▒╗╔╛│²"
  4073.         endif
  4074.     endif    
  4075.  
  4076. ▓╬╝√:     @2329 [file](), @2345 [fopen](), @2323 [fclose]()
  4077.  
  4078. .2327
  4079. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4080. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4081.  
  4082. ferror()
  4083. ╙∩╖¿:     ferror()
  4084. ╙├═╛:     ╫≈╬¬╬─╝■▓┘╫≈║»╩²╡─╖╡╗╪╜ß╣√, ╚τ╣√╖ó╔·┤φ╬≤, ferror() ║»╩²
  4085. ╚╖╢¿┤φ╬≤└α╨═íú
  4086. ▓╬╩²:     ╬▐
  4087. ╖╡╗╪╓╡: ╩²╫╓└α╨═ú¼┤φ╬≤║┼
  4088. └²╫╙:    // ╚τ┤≥┐¬╬─╝■myfile. txt ╖ó╔·┤φ╬≤, ╘≥╩Σ│÷┤φ╬≤║┼
  4089.     hand: =fopen ("myfile. txt")
  4090.     if ferror() <>0
  4091.         clear
  4092.         ú└ 10, 10 say " ┤≥┐¬╬─╝■╖ó╔·"+str (ferror(), 2, 0) ;
  4093.             +" ║┼┤φ╬≤"
  4094.         quit
  4095.     endif
  4096.     
  4097. ▓╬╝√: @2345 [fopen](), @2324 [fcreate](), @2325 [fearse](), @2347 [fread](),  
  4098. @2352 [fwrite](), @2323 [fclose](), @2349 [freadstr]()
  4099.  
  4100. .2328
  4101. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4102. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4103.  
  4104. fgets()
  4105. ╙∩╖¿: fgets (<nHandle>, [<nLines>], [<nLength>], [<cDelim>]
  4106. ╙├═╛: ┤╙╬─╝■╓╨╢┴╥╗╨╨╗≥╢α╨╨
  4107. ▓╬╩²:     
  4108.     <nHandle>     ╬─╝■╛Σ▒·
  4109.     <nLines>     ╬─╝■╨╨╩²(╚▒╩í╬¬1)
  4110.     <nLength>     ├┐╨╨│ñ╢╚(╚▒╩í╬¬80)
  4111.     <cDelim>    ╜ß╩°╖√(╚▒╩í╬¬CRLFú¼╝┤╗╪│╡╗╗╨╨)
  4112. ╖╡╗╪╓╡: ╢┴╚í╡─╫╓╖√┤«
  4113. └²╫╙: h: =fopen ("file. dat", 2)
  4114.     str: =fgets (h, 8)
  4115.     ? str
  4116.  
  4117. .2444
  4118. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4119. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  4120.  
  4121. field()
  4122. ╙∩╖¿:     field (<nExp>) |fieldname (<nExp>)
  4123. ╙├═╛:     ╖╡╗╪╢╘╙ª╙┌╩²╛▌┐Γ╓╨─│╕÷╫╓╢╬╨≥║┼╡─╫╓╢╬├√
  4124. │╞íú
  4125. ▓╬╩²:     
  4126.     <nExp>     ╫╓╢╬╨≥║┼
  4127. ╖╡╗╪╓╡: ╫╓╖√└α╨═ú¼╫╓╢╬├√│╞
  4128. ╦╡├≈:     ╚τ╣√╕├▓╬╩²╓╕╢¿╡─╓╡╬¬╥╗╖╟╖¿╫╓╢╬╨≥║┼, ╘≥╖╡╗╪
  4129. ╥╗╕÷┐╒┤«íú
  4130. └²╫╙:// ╩Σ│÷╩²╛▌┐Γ╦∙╙╨╫╓╢╬╡─├√│╞
  4131.      use my
  4132.     temp: =fcount()
  4133.     for i=1 to temp
  4134.         ? field (i)
  4135.     next 
  4136.     
  4137. ▓╬╝√:     @2401 [afields](), @2435 [dbstruct](), @2443 [fcount](), @2252 [type()]    
  4138.  
  4139. .2445
  4140. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4141. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  4142.  
  4143. fieldblock()
  4144. ╙∩╖¿:     fieldblock (<cFieldname>)
  4145. ╙├═╛:     ╜¿┴ó╥╗╕÷╤í╚í╗≥╔Φ╓├╫╓╢╬╓╡╡─┤·┬δ┐Θíú
  4146. ▓╬╩²:     
  4147.     <cFieldname>     ┤·┬δ┐Θ╓┤╨╨╤í╚í╗≥╔Φ╓├▓┘╫≈╦∙╨Φ╡─╫╓╢╬├√íú
  4148. ╖╡╗╪╓╡: ┤·┬δ┐Θ└α╨═
  4149. ╦╡├≈:     fieldblock() ║»╩²╜¿┴ó╥╗╕÷┤·┬δ┐Θ, ┤·┬δ┐Θ╕∙╛▌╩╟╖±┤½╡▌▓╬╩²
  4150. ╗≥╒▀╤í╚í╥╗╕÷╫╓╢╬╓╡╗≥╒▀╔Φ╓├╥╗╕÷╫╓╢╬╓╡íú╡▒┤½
  4151. ╡▌▓╬╩²╩▒, ╫╓╢╬╓╡▒╗┤½╡▌╡─▓╬╩²╓╡╕ⁿ╨┬íú
  4152. └²╫╙:     use my
  4153.     now: =fieldblock ("name")
  4154.     ? eval (now) // ├╗╙╨┤½╡▌▓╬╩², ╖╡╗╪╡▒╟░╫╓╢╬╓╡
  4155.     ? name // ╖╡╗╪╡▒╟░╫╓╢╬╓╡
  4156.     inkey (0)
  4157.     ? eval (now, "linping") // ┤½╡▌▓╬╩²"linping", ╘≥╖╡╗╪"linping"
  4158.     ? name // ╖╡╗╪"linping"
  4159.     
  4160. ▓╬╝√:     @2448 [fieldwblock](), @1730 [memvarblock]()
  4161.  
  4162. .2446
  4163. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4164. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  4165.  
  4166. fieldget()
  4167. ╙∩╖¿:     fieldget (<nField>)
  4168. ╙├═╛:     ╘┌╡▒╟░╤í╘±╡─╩²╛▌┐Γ╓╨╝∞╦≈─│╕÷╫╓╢╬╡─╡▒╟░
  4169. ╓╡íú
  4170. ▓╬╩²:     
  4171.     <nField>     ╩²╛▌┐Γ╓╨╫╓╢╬╡─╬╗╓├╨≥║┼íú
  4172. ╖╡╗╪╓╡: ╖╡╗╪╓╡╡─└α╨═╙δ╢╘╙ª╡─╫╓╢╬└α╨═╧α═¼, ╚τ╣√<nField> ▓╬
  4173. ╩²╡─╓╡┤≤╙┌╩²╛▌┐Γ╓╨╫╓╢╬╡─╩²─┐, ╘≥╖╡╗╪nilíú
  4174. └²╫╙:     use my
  4175.     value: =fieldget (5)
  4176.     ? value // ╖╡╗╪╩²╛▌┐Γ╓╨╡┌╥╗╕÷╝╟┬╝╡─╡┌5 ╕÷╫╓╢╬╡─╡▒╟░╓╡
  4177.     
  4178. ▓╬╝√: @2447 [fieldput]()
  4179.  
  4180. .2447
  4181. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4182. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  4183.  
  4184. fieldput()
  4185. ╙∩╖¿:     fieldput (<nField>, <Exp>)
  4186. ╙├═╛:     ╢╘╡▒╟░╤í╘±╡─╩²╛▌┐Γ╓╨╓╕╢¿╡─╫╓╢╬╜°╨╨╕│╓╡
  4187. ▓┘╫≈íú
  4188. ▓╬╩²:     
  4189.     <nField>     ╩²╛▌┐Γ╓╨╫╓╢╬╡─╬╗╓├╨≥║┼
  4190.     <Exp>         ╕│╕°╓╕╢¿╫╓╢╬╡─╨┬╓╡
  4191. ╖╡╗╪╓╡: ╖╡╗╪<Exp> ▓╬╩²╡─╓╡, ╚τ╣√<nField> ▓╬╩²╡─╓╡┤≤╙┌╩²╛▌┐Γ╓╨╫╓
  4192. ╢╬╡─╩²─┐, ╘≥╖╡╗╪nilíú
  4193. └²╫╙:  new: =100
  4194. ? fieldget (1) // ╖╡╗╪20
  4195. ? fieldput (1, new) // ╖╡╗╪100
  4196. ? fieldget (1) // ╖╡╗╪100
  4197. ▓╬╝√:     @2446 [fieldget]()ú¼@2468 [netfldput]()
  4198.  
  4199. .2448
  4200. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4201. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  4202.  
  4203. fieldwblock()
  4204. ╙∩╖¿:     fieldwblock (<cFieldname>, <nWorkarea>)
  4205. ╙├═╛:     ┤╦║»╩²╙δfieldblock() ║»╩²╓┤╨╨╧α═¼╡─▓┘╫≈, ╡½╕├║»╩²╢α╜╙╩╒
  4206. ╥╗╕÷▓╬╩²╙├╫≈╓╕╢¿╣ñ╫≈╟°, ║»╩²╜½╘┌╓╕╢¿╣ñ╫≈╟°╓╨
  4207. ╜°╨╨▓┘╫≈íú
  4208. ▓╬╩²:     
  4209. <cFieldname>         ┤·┬δ┐Θ╓┤╨╨╤í╚í╗≥╔Φ╓├▓┘╫≈╦∙╨Φ╡─╫╓╢╬├√íú
  4210. <nWorkarea>     ║»╩²╓╕╢¿╡─╣ñ╫≈╟°║┼, ╩²╛▌┐Γ╘┌╕├╣ñ╫≈╟°╓╨▒╗┤≥┐¬íú
  4211. ╖╡╗╪╓╡: ╖╡╗╪╔Φ╓├╗≥╤í╚í╫╓╢╬╓╡╡─┤·┬δ┐Θ, ╚τ╣√╫╓╢╬├√
  4212. ▓╗┤µ╘┌, ╘≥╖╡╗╪nilíú
  4213. └²╫╙:     now: =fieldblock ("name", 2) // ╩²╛▌┐Γ╘┌╡┌╢■╕÷╣ñ╫≈╟°╓╨▒╗┤≥┐¬
  4214.     ? eval (now) // ├╗╙╨┤½╡▌▓╬╩², ╖╡╗╪╡▒╟░╫╓╢╬╓╡
  4215.     ? name // ╖╡╗╪╡▒╟░╫╓╢╬╓╡
  4216.     inkey (0)
  4217.     ? eval (now, "linping") // ┤½╡▌▓╬╩²"linping", ╘≥╖╡╗╪"linping"
  4218.     ? name // ╖╡╗╪"linping"
  4219.     
  4220. ▓╬╝√:     @2445 [fieldblock](), @1730 [memvarblock]()
  4221.  
  4222. .2329
  4223. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4224. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4225.  
  4226. file()
  4227. ╙∩╖¿:     file (<cFilename>)
  4228. ╙├═╛:     ▓Γ╩╘╬─╝■╩╟╖±┤µ╘┌íú
  4229. ▓╬╩²:     
  4230.     <cFilename>     ╥¬▓Γ╩╘╩╟╖±┤µ╘┌╡─╬─╝■├√
  4231. ╖╡╗╪╓╡: ┬▀╝¡└α╨═
  4232. ╦╡├≈:     ╚τ╣√▓Γ╩╘╬─╝■┤µ╘┌╙┌╡▒╟░┬╖╛╢╓╨, ╘≥file() ║»╩²╖╡╗╪
  4233. ╥╗╕÷┬▀╝¡╒µ╓╡íú│²╖╟╙├╗º╘┌║»╩²╡─▓╬╩²<cFilename> ╓╨╓╕╢¿╟²╢»
  4234. ╞≈║═┬╖╛╢, ╖±╘≥file() ║»╩²╜½╫±╤¡SET DEFAULT ├ⁿ┴ε╗≥SET PATH ├ⁿ┴ε╡─╔Φ╓├íú
  4235. └²╫╙: // ╚τ╬─╝■myfile. bak ┤µ╘┌, ╘≥╔╛│²╦ⁿ, ╚τ╔╛│²│╔╣ª, ╘≥╕°│÷╨┼╧ó
  4236.  
  4237. if file ("myfile. bak")
  4238.     if ferase ("myfile. bak") ==0
  4239.         ? " ╬─╝■myfile. bak ╥╤▒╗╔╛│²"
  4240.     endif
  4241. endif    
  4242.  
  4243. ▓╬╝√: @2324 [fcreate](), @2345 [fopen](), @2323 [fclose]()
  4244.  
  4245. .2330
  4246. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4247. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4248.  
  4249. filebase()
  4250. ╙∩╖¿: filebase (<cFilename>)
  4251. ╙├═╛: ╚í╬─╝■<nFilename> ╓╨╡─╗∙▒╛╬─╝■├√(▓╗║¼║≤╫║)
  4252. ▓╬╩²: 
  4253.     <nFilename>         ╬─╝■├√╫╓╖√┤«
  4254. ╖╡╗╪╓╡: ╬─╝■╡─╗∙▒╛╬─╝■├√
  4255. └²╫╙:? filebase ("user. dbf")
  4256. ▓╬╝√:@2335 [fileext](), @2337 [filepath](), @2333 [filedrive]()
  4257.  
  4258. .2331
  4259. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4260. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4261.  
  4262. filebottom()
  4263. ╙∩╖¿: filebottom (<nHandle>)
  4264. ╙├═╛: ╜½╬─╝■╓╕╒δ╫¬╡╜╬─╝■╬▓
  4265. ▓╬╩²: 
  4266.     <nHandle>     ╬─╝■╛Σ▒·
  4267. ╖╡╗╪╓╡: ╬▐
  4268. └²╫╙: h: =fopen ("file. dat", 2)
  4269.     filebottom (h)
  4270. ▓╬╝√:@2340 [filetop]( )
  4271.  
  4272. .2332
  4273. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4274. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4275.  
  4276. filedate( )
  4277. ╙∩╖¿: filedate (<cFileName>, [<dDateToSet>]
  4278. ╙├═╛: ╗±╚í╗≥╔Φ╓├DOS ╬─╝■╡─╚╒╞┌
  4279. ▓╬╩²:    
  4280. <cFileName>         ╥¬╗±╚í╔Φ╓├╚╒╞┌╡─╬─╝■├√, ╓º│╓DOS ╡─╚½┬╖╛╢├√íú
  4281. <dDateToSet>         ╨┬╡─╚╒╞┌ú¼╚▒╩í╩▒filedate ╜½╗±╚í╬─╝■╚╒╞┌
  4282. ╖╡╗╪╓╡: ╨┬╡─╚╒╞┌╓╡
  4283. └²╫╙:
  4284. ? filedate ('user. def', date())
  4285. ? filedate ('user. def')
  4286. ▓╬╝√: @2321 [f_gettm]( ), @2322 [f_settm](), @2341 [filetime]()
  4287.  
  4288. .2333
  4289. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4290. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4291.  
  4292. filedrive()
  4293. ╙∩╖¿: filedrive (<cFilename>)
  4294. ╙├═╛: ╚í╬─╝■<cFilename> ╓╨╡─╟²╢»╞≈├√
  4295. ▓╬╩²: 
  4296.     <cFilename>         ╬─╝■├√╫╓╖√┤«
  4297. ╖╡╗╪╓╡: ╬─╝■<cFilename> ╓╨╡─╟²╢»╞≈├√
  4298. └²╫╙:? filedrive ("C: \COMMAND. COM")
  4299. ▓╬╝√:@2335 [fileext](), @2337 [filepath](), @2330 [filebase]()
  4300.  
  4301. .2334
  4302. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4303. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4304.  
  4305. fileeval()
  4306. ╙∩╖¿: fileeval (<nHandle>, <nLength>, <cDelim>, <bBlock>, <bFor>, ;            <bWhile>, <nNextlines>, <nLine>, <nPos>)
  4307. ╙├═╛: ░╤╬─╝■╓╨╡─├┐╥╗╨╨╢╘┤·┬δ┐Θblock ╟≤╓╡
  4308. ▓╬╩²:    
  4309.     <nHandle>        ╬─╝■╛Σ▒·
  4310.     <nLength>         ├┐╨╨│ñ╢╚
  4311.     <cDelim>         ╨╨╜ß╩°╖√(╚▒╩í╬¬GRLF)
  4312.     <bFor>, <bWhile>    ╖╡╗╪┬▀╝¡╓╡╡─┤·┬δ┐Θ, ╚⌠╬¬.T., ╘≥block ▒╗╟≤╓╡.
  4313. <nNextlines>        ╢╘╬─╝■╡▒╟░╨╨┐¬╩╝╡─╥╘╧┬╩²╨╨╟≤╓╡(╩²╫╓╓╡)
  4314.     <nLline>         ╙├╙┌╓╕╢¿▒╗╟≤╓╡╡─╨╨(╩²╫╓╓╡)
  4315. <nPos >     ┬▀╝¡▒φ┤∩╩╜, ╚⌠╬¬.T., ╘≥╢╘╡▒╟░╨╨┐¬╩╝╡─╨╨╜°╨╨╟≤╓╡, ╖±╘≥
  4316. ╢╘╦∙╙╨╨╨╟≤╓╡íú
  4317. ╖╡╗╪╓╡: ╬▐
  4318. └²╫╙:    bb: = {|x|msgbox (x, "", 1)}
  4319.     fh: =fopen ("memo. prg", 2)
  4320.     fileeval (fh, 8,, bb)
  4321.  
  4322. .2335
  4323. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4324. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4325.  
  4326. fileext()
  4327. ╙∩╖¿: fileext (<cFilename>)
  4328. ╙├═╛: ╚í╬─╝■├√╓╨╡─└⌐╒╣├√
  4329. ▓╬╩²: 
  4330.     <cFilename>         ╬─╝■├√╫╓╖√┤«
  4331. ╖╡╗╪╓╡: ╬─╝■╡─└⌐╒╣├√
  4332. └²╫╙:? fileext ("user. dbf")
  4333. ▓╬╝√:@2330 [filebase](), @2337 [filepath](), @2333 [filedrive]()
  4334.  
  4335. .2336
  4336. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4337. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4338.  
  4339. filelen()
  4340. ╙∩╖¿: filelen (<nHandle>)
  4341. ╙├═╛: ╚í╬─╝■│ñ╢╚
  4342. ▓╬╩²: 
  4343.     <nHandle>         ╬─╝■╛Σ▒·
  4344. ╖╡╗╪╓╡: ╬─╝■╡─│ñ╢╚
  4345. └²╫╙: h: =fopen ("file. dat", 2)
  4346.     ? filelen (h)
  4347. ▓╬╝√:@2339 [filesize]()
  4348.  
  4349. .2337
  4350. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4351. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4352.  
  4353. filepath()
  4354. ╙∩╖¿: filepath (<cFilename>)
  4355. ╙├═╛: ╕∙╛▌SET PATH ╡─╔Φ╓├╦╤╦≈╬─╝■├√
  4356. ▓╬╩²: 
  4357.     <cFilename>        ╬─╝■├√
  4358. ╖╡╗╪╓╡: ╚τ╣√╒╥╡╜╘≥╖╡╗╪┤°┬╖╛╢╡─╬─╝■├√, ╖±╘≥╖╡╗╪┐╒
  4359. └²╫╙:? filepath ("wbsedit. dat")
  4360.  
  4361. .2338
  4362. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4363. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4364.  
  4365. filepos()
  4366. ╙∩╖¿: filepos (<nHandle>)
  4367. ╙├═╛: ╚í╬─╝■╡▒╟░╓╕╒δ╬╗╓├
  4368. ▓╬╩²: 
  4369.     <nHandle>         ╬─╝■╛Σ▒·
  4370. ╖╡╗╪╓╡: ╡▒╟░╓╕╒δ╩²╓╡
  4371. └²╫╙: h: =fopen ("file. dat", 2)
  4372.     ? filepos (h)
  4373.  
  4374. .2339
  4375. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4376. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4377.  
  4378. filesize()
  4379. ╙∩╖¿: filesize (<cFileName>)
  4380. ╙├═╛: ╚╖╢¿╬─╝■╡─┤≤╨í(╡Ñ╬╗╬¬╫╓╜┌)
  4381. ▓╬╩²: 
  4382.     <cFileName>         ╬─╝■├√
  4383. ╖╡╗╪╓╡: ╬─╝■┤≤╨í╡─╫╓╜┌╩², ╚τ╣√╙╨┤φ╘≥╖╡╗╪-1
  4384. └²╫╙:? filesize ('use. dbf')
  4385. ▓╬╝√:@2336 [filelen]()
  4386.  
  4387. .2341
  4388. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4389. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4390.  
  4391. filetime()
  4392. ╙∩╖¿: filetime (<cFileName>, [<cTimeToSet>])
  4393. ╙├═╛: ╗±╚í╗≥╔Φ╓├DOS ╬─╝■╔╧╡─╩▒╝Σ
  4394. ▓╬╩²:    
  4395.     <cFileName>         ╬─╝■├√, ╓º│╓DOS ╚½┬╖╛╢├√íú
  4396.     <cTimeToSet>         ╨┬╡─╩▒╝Σ
  4397. ╖╡╗╪╓╡: ╕±╩╜╬¬hh: mm: ss ╩▒╝Σ╫╓╖√┤«
  4398. └²╫╙: filetime ('user. dbf', TIME())
  4399. ▓╬╝√:@2332 [filedate](), @2321 [f_gettm](), @2322 [f_settm]()
  4400.  
  4401. .2340
  4402. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4403. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4404.  
  4405. filetop()
  4406. ╙∩╖¿: filetop (<nHandle>)
  4407. ╙├═╛: ╜½╬─╝■╓╕╒δ╫¬╡╜╬─╝■═╖
  4408. ▓╬╩²: 
  4409.     <nHandle>        ╬─╝■╛Σ▒·
  4410. ╖╡╗╪╓╡: ╬▐
  4411. └²╫╙: h: =fopen ("file. dat", 2)
  4412.     filetop (h)
  4413. ▓╬╝√:@2331 [filebottom]()
  4414.  
  4415. .2342
  4416. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4417. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4418.  
  4419. filetouch()
  4420. ╙∩╖¿: filetouch (<cFileName>)
  4421. ╙├═╛: ░╤╬─╝■╡─╚╒╞┌/ ╩▒╝Σ▒Ω╝╟╕ⁿ╨┬╬¬╧╡═│╚╒╞┌║═╩▒
  4422. ╝Σ
  4423. ▓╬╩²: 
  4424.     <cFileName>        ╥¬▒╗╕ⁿ╨┬╡─╬─╝■├√
  4425. ╖╡╗╪╓╡: ╚τ╣√▓┘╫≈│╔╣ª╘≥╖╡╗╪.T.; ╖±╘≥╖╡╗╪.F.
  4426. └²╫╙:? filetouch ("user. dbf")
  4427.     ? filetime ("user. dbf")
  4428. ▓╬╝√:@2332 [filedate](), @2341 [filetime](), @2321 [f_gettm](), @2322 [f_settm]()
  4429.  
  4430. .2343
  4431. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4432. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4433.  
  4434. findfirst()
  4435. ╙∩╖¿: findfirst (<cFileSpec>, <idAttrib >)
  4436. ╙├═╛: ╘┌╡▒╟░┬╖╛╢╓╨▓Θ╒╥╬─╝■├√
  4437. ▓╬╩²:    
  4438.     <cFileSpec>        ╥¬▓Θ╒╥╡─╬─╝■├√ú¼┐╔║¼═¿┼Σ╖√
  4439.     < Attrib >        ╥¬▓Θ╒╥╡─╬─╝■╡─╩⌠╨╘
  4440.                 ╩⌠╨╘╙╔╥╘╧┬│ú┴┐╣╣│╔( ╝√Winbase.inc )
  4441.                 _A_ARCH    ┤µ╡╡╬─╝■
  4442.                 _A_HIDDEN    ╥■║¼╬─╝■
  4443.                 _A_NORMAL    ╒²│ú
  4444.                 _A_RONLY    ╓╗╢┴╬─╝■
  4445.                 _A_SUBDIR    ─┐┬╝╩⌠╨╘
  4446.                 _A_SYSTEM    ╧╡═│╬─╝■
  4447.                 _A_VOLID    ╛φ▒Ω
  4448. ╖╡╗╪╓╡: │╔╣ª╖╡╗╪╬─╝■├√╫╓╖√┤«ú¼╖±╘≥╖╡╗╪┐╒
  4449. └²╫╙:    ? findfirst ("*. prg", _A_ARCH)
  4450. ▓╬╝√:@2344 [findnext]()
  4451.  
  4452. .2344
  4453. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4454. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4455.  
  4456. findnext()
  4457. ╙∩╖¿: findnext()
  4458. ╙├═╛: ╚τ╧╚╟░╥╤╡≈╙├╣²╥╗╗╪findfirst(), ╘≥╘┌╡▒╟░┬╖╛╢╓╨▓Θ╒╥╧┬
  4459. ╥╗╕÷╬─╝■├√íú
  4460. ▓╬╩²:    ╬▐
  4461. ╖╡╗╪╓╡: │╔╣ª╖╡╗╪╬─╝■├√╫╓╖√┤«ú¼╖±╘≥╖╡╗╪┐╒
  4462. └²╫╙:    ? findnext ()
  4463. ▓╬╝√:@2343 [findfirst]()
  4464.  
  4465. .1720
  4466. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4467. @17[╧╡═│║»╩²╦≈╥²]
  4468.  
  4469. findtsr()
  4470. ╙∩╖¿: findtsr (<cTsrname>)
  4471. ╙├═╛: ▓Θ╒╥─┌┤µ╫ñ┴⌠│╠╨≥
  4472. ▓╬╩²: 
  4473.     <cTsrname>         ─┌┤µ╫ñ┴⌠│╠╨≥├√(╥¬╚Ñ╡⌠╬─╝■└⌐╒╣├√)
  4474. ╖╡╗╪╓╡: │╔╣ª╖╡╗╪1, ╖±╘≥╖╡╗╪0
  4475. └²╫╙:? findtsr ("wbsvga")
  4476.  
  4477. .1721
  4478. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4479. @17[╧╡═│║»╩²╦≈╥²]
  4480.  
  4481. fklabel()
  4482. ╙∩╖¿:     fklabel (<nFuncKey>)
  4483. ╙├═╛:     ╖╡╗╪╙δ╣ª─▄╝ⁿ╧α╣╪┴¬╡─▒Ω║┼íú
  4484. ▓╬╩²:     
  4485.     <nFuncKey>         ╖ó╔·╫≈╙├╡─╣ª─▄╝ⁿ║┼íú╚τ1="F1"
  4486. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  4487. ╦╡├≈:     ╖╡╗╪╓╡╬¬╫╓╖√└α╨═íú
  4488. └²╫╙:    ? fklabel (7) ╖╡╗╪"F7"
  4489.  
  4490. ▓╬╝√: @1722 [fkmax]()
  4491.  
  4492. .1722
  4493. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4494. @17[╧╡═│║»╩²╦≈╥²]
  4495.  
  4496. fkmax()
  4497. ╙∩╖¿:     fkmax()
  4498. ╙├═╛:     ╖╡╗╪┐╔▒α│╠╣ª─▄╝ⁿ╡─╫ε┤≤╨≥║┼íú(WINBASE ╖╡╗╪40)
  4499. ▓╬╩²:     ╬▐
  4500. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  4501. └²╫╙:    ? fkmax() ╖╡╗╪40
  4502.  
  4503. ▓╬╝√:     @1721[fklable()]
  4504.  
  4505. .2449
  4506. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4507. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  4508.  
  4509. flock()
  4510. ╙∩╖¿:     flock()
  4511. ╙├═╛:     ╦°╢¿╡▒╟░╩²╛▌┐Γ, ╩╣╡├╞Σ╦ⁿ╙├╗º▓╗─▄╢╘╕├╬─╝■╓┤
  4512. ╨╨╨┤▓┘╫≈íú
  4513. ▓╬╩²:     ╬▐
  4514. ╖╡╗╪╓╡: ┬▀╝¡└α╨═
  4515. ╦╡├≈:     ╚τ╣√flock() ║»╩²╦°╢¿╬─╝■│╔╣ª, ╘≥╖╡╗╪┬▀╝¡╒µ╓╡íú│²╖╟╙├╗º
  4516. ╣╪▒╒▒╗╦°╢¿╬─╝■╗≥╒▀╓┤╨╨┴φ╥╗╕÷rlock() ║»╩²╡≈╙├, ╖±╘≥▒╪
  4517. ╨δ╙├unlock ╘┌╬∩└φ╔╧╜Γ│²flock() ║»╩²╢╘╬─╝■╡─╖Γ╦°íú
  4518. └²╫╙:     if fclock()
  4519.         ? " ╦°╢¿╬─╝■│╔╣ª"
  4520.     else
  4521.         ? " ▓┘╫≈╩º░▄! "
  4522.     endif
  4523.     
  4524. ▓╬╝√: @2472 [netuse](), @2460 [lockfile](), @2461 [lockrec](), @2477 [rlock](),  @3137[set exclusive], @3148[unlock]
  4525.  
  4526. .2012
  4527. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4528. @20[╩²╤º║»╩²╦≈╥²]
  4529.  
  4530. floor()
  4531. ╙∩╖¿: floor (<nNum>)
  4532. ╙├═╛: ╟≤╨í╙┌╗≥╡╚╙┌<nNum> ╡─╫ε┤≤╒√╩²
  4533. ▓╬╩²: 
  4534.     <nNum>    ╩²╓╡▒Σ┴┐
  4535. ╖╡╗╪╓╡: ╩²╓╡
  4536. └²╫╙:? floor (5. 1)
  4537. ▓╬╝√:@2009 [ceiling]( )
  4538.  
  4539. .1611
  4540. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4541. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  4542.  
  4543. fontexit()
  4544. ╙∩╖¿: fontexit()
  4545. ╙├═╛: ╣╪▒╒║║╫╓┐Γ
  4546. ▓╬╩²: ╬▐
  4547. ╖╡╗╪╓╡: ╬▐
  4548. └²╫╙▓╬╝√drawtext()
  4549. ▓╬╝√:@1610 [fontinit]()
  4550.  
  4551. .1610
  4552. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4553. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  4554.  
  4555. fontinit()
  4556. ╙∩╖¿: fontinit (<cFontfile>)
  4557. ╙├═╛: │⌡╩╝╗»(┤≥┐¬) 16 ╡π╒≤║║╫╓┐Γ
  4558. ▓╬╩²: 
  4559.     <cFontfile>        16 ╡π╒≤║║╫╓┐Γ╬─╝■├√
  4560. ╖╡╗╪╓╡: ╬▐
  4561. └²╫╙▓╬╝√drawtext()
  4562. ▓╬╝√:@1611 [fontexit]()
  4563.  
  4564. .2345
  4565. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4566. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4567.  
  4568. fopen()
  4569. ╙∩╖¿:     fopen (<cFile>, [<nExp>])
  4570. ╙├═╛:     ╬¬╞Σ╦ⁿ╡═╝╢╬─╝■▓┘╫≈║»╩²┤≥┐¬╥╗╕÷╬─╝■íú
  4571. ▓╬╩²:     
  4572.     <cFile>        ╥¬┤≥┐¬╬─╝■╡─├√│╞íú
  4573.     <nExp>    DOS ╬─╝■╡─┤≥┐¬─ú╩╜(0-2)íú
  4574.             0 ╓╗╢┴─ú╩╜
  4575.             1 ╓╗╨┤─ú╩╜
  4576.             2 ╢┴║═╨┤─ú╩╜
  4577. ╖╡╗╪╓╡: ╩²╫╓└α╨═ú¼╬─╝■╛Σ▒·
  4578. ╦╡├≈:     ╚τ╣√├╗╙╨╓╕╢¿dos ┤≥┐¬─ú╩╜, ╩╣╙├╚▒╩í╓╡0íú
  4579.     ╚τ╣√┤≥┐¬╬─╝■╩▒╖ó╔·┤φ╬≤, ╘≥╖╡╗╪╬─╝■├Φ╩÷╫╓-1íú
  4580. └²╫╙:// ╚τ┤≥┐¬╬─╝■myfile. txt ╖ó╔·┤φ╬≤, ╘≥╩Σ│÷┤φ╬≤║┼
  4581.      hand: =fopen ("myfile. txt")
  4582.     if ferror() <>0
  4583.         clear
  4584.     ú└ 10, 10 say " ┤≥┐¬╬─╝■╖ó╔·"+str (ferror(), 2, 0) ;
  4585.     +" ║┼┤φ╬≤"
  4586.         quit
  4587.     endif
  4588.     
  4589. ▓╬╝√:     @2327 [ferror](), @2324 [fcreate](), @2325 [fearse](), @2347 [fread](),
  4590.  @2352 [fwrite](), @2323 [fclose](), @2349 [freadstr]()
  4591.  
  4592. .2502
  4593. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4594. @25[├ⁿ┴ε╩²╦≈╥²]
  4595.  
  4596. for()
  4597. ╙∩╖¿: for (<nStart>, <nEnd>, <nStep>, <cFunc>)
  4598. ╙├═╛: ░╤╥╗╕÷║»╩²╤¡╗╖╓┤╨╨╢α┤╬
  4599. ▓╬╩²:    
  4600.     <nStart>    ╤¡╗╖▒Σ┴┐│⌡╓╡
  4601.     <nEnd>    ╤¡╗╖▒Σ┴┐╜ß╩°╓╡
  4602.     <nStep>    ╘÷╓╡▒Σ┴┐
  4603.     <cFunc>    ║»╩²├√, ╘┌cFunc ╓╨╙├~ ┤·▒φ╤¡╗╖▒Σ┴┐
  4604. ╖╡╗╪╓╡: ╬▐
  4605. └²╫╙: for (660, 880, 10, "tone (~, 2) ")
  4606. ▓╬╝√:@2504 [loop]( ), @2513 [while]()
  4607.  
  4608. .2450
  4609. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4610. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  4611.  
  4612. found()
  4613. ╙∩╖¿:     found()
  4614. ╙├═╛:     ╚╖╢¿╥╗╕÷find, seek, @3122[locate], set relation ╗≥continue ├ⁿ┴ε╩╟╖±╓┤╨╨│╔╣ªíú
  4615. ▓╬╩²:     ╬▐
  4616. ╖╡╗╪╓╡: ┬▀╝¡└α╨═
  4617. ╦╡├≈:     ├┐╕÷╣ñ╫≈╟°╢╝╙╨╕≈╫╘╡─found ╫┤╠¼íú
  4618.     ▓╗─▄═¿╣²╩╣╙├found() ║»╩²└┤╚╖╢¿skip ├ⁿ┴ε╩╟╖±╓┤╨╨│╔╣ªíú
  4619. └²╫╙:    use my index name
  4620.     seek "└ε╤╟├╖"
  4621.     if found()
  4622.         ? no, age
  4623.     else
  4624.         ? " ▓Θ╬▐┤╦╚╦! "
  4625.     endif
  4626.     
  4627. ▓╬╝√:     @3116[find], @2427 [dbseek](), @3122[locate], @3142[set softseek], @3107[continue]    
  4628.  
  4629. .2346
  4630. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4631. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4632.  
  4633. fputs()
  4634. ╙∩╖¿: fputs (<handle>, <cStr>, <nLength>, <nDelim>)
  4635. ╙├═╛: ╧≥╬─╝■╓╨╨┤╚δ╫╓╖√┤«
  4636. ▓╬╩²:    
  4637.     <nHandle>    ╬─╝■╛Σ▒·
  4638.     <cStr>        ╥¬╨┤╚δ╡─╫╓╖√┤«
  4639. <nLength>    ╫╓╖√┤«│ñ╢╚íó╚▒╩í╬¬str ╡─│ñ╢╚╝╙nDelim ╡─│ñ╢╚
  4640.     <nDelim>     ╜ß╩°╖√(╚▒╩í╬¬CRLF)
  4641. ╖╡╗╪╓╡: ╬▐
  4642. └²╫╙:     h: =fopen ("file. dat", 2)
  4643.     fputs (h, "no news is good news")
  4644. ▓╬╝√:@2347 [fread]() , freadsrt()
  4645.  
  4646. .2347
  4647. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4648. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4649.  
  4650. fread()
  4651. ╙∩╖¿:     fread (<nHandle>, ú└<cVariable>, <nByte>)
  4652. ╙├═╛:     ╜½╥╗╕÷dos ╬─╝■╓╨╡─╥╗▓┐╖▌─┌╚▌╢┴╚δ╥╗╕÷─┌┤µ▒Σ
  4653. ┴┐╓╨íú
  4654. ▓╬╩²:     
  4655.     <nHandle>         ╦∙╢┴╬─╝■╡─╬─╝■╛Σ▒·
  4656. <cVariable>     ─┌┤µ▒Σ┴┐íú╖√║┼ú└▒φ╩╛░╤║≤├µ╡─▒Σ┴┐╡▒╫≈╥╗╕÷╗║│σ
  4657. ╟°▓ó╟╥═¿╣²╥²╙├╖╜╩╜┤½╡▌íú╗║│σ╟°│ñ╢╚▒╪╨δ┤≤╙┌
  4658. ╗≥╡╚╙┌<nByte> ▓╬╩²╓╕╢¿╡─╓╡íú
  4659. <nByte>     ┤╙╬─╝■╓╨╢┴╚í╡─╫╓╜┌╩²íú╢┴▓┘╫≈╡─╞≡╩╝╬╗╓├╙╔dos ╬─
  4660. ╝■╓╕╒δ╛÷╢¿íú(<nByte> <= 64K)
  4661. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  4662. ╦╡├≈:     fread() ║»╩²╖╡╗╪┤╙╬─╝■╓╨│╔╣ª╢┴╚í╡─╫╓╜┌╩²íúdos ╬─╝■╓╕╒δ
  4663. ╜½▒╗╢¿╬╗╡╜fread() ║»╩²╢┴╚í╡─╫ε║≤╥╗╕÷╫╓╜┌╓«║≤╡─╡┌
  4664. ╥╗╕÷╫╓╜┌╔╧íúfread() ║»╩²─▄╢┴╚í╬─╝■╓╨╡─╚╬║╬╫╓╖√, ░ⁿ└¿┐╪╓╞
  4665. ╫╓╖√, ┐╒╫╓╖√║═ASCII ┬δ╓╡╘┌127 (╩«╜°╓╞) ╥╘╔╧╡─═╝╨╬╫╓╖√íú
  4666. └²╫╙: // ╧╘╩╛╢┴╚í╨┼╧ó
  4667.     buff: =space (remain)
  4668.     strg: =fread (hand, ¬└buff, remain)
  4669.     if strg<>remain
  4670.         ? " ╖ó╔·┤φ╬≤! "
  4671.     else
  4672.         ? " │╔╣ª╢┴│÷"
  4673.     endif
  4674.     
  4675. ▓╬╝√:     @2349 [freadstr]()
  4676.  
  4677. .2348
  4678. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4679. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4680.  
  4681. freadln()
  4682. ╙∩╖¿: freadln (<nHandle>], [<nLines>], [<nLength>], [<nDelim>]
  4683. ╙├═╛: ┤╙╬─╝■╓╨╢┴╥╗╨╨╗≥╢α╨╨
  4684. ▓╬╩²:    
  4685.     <nHandle>     ╬─╝■╛Σ▒·
  4686.     <nLines>     ╬─╝■╨╨╩²(╚▒╩í╬¬1)
  4687.     <nLength>     ├┐╨╨│ñ╢╚(╚▒╩í╬¬80)
  4688.     <nDelim>     ╜ß╩°╖√(╚▒╩í╬¬CRLF)
  4689. ╖╡╗╪╓╡: ╢┴╚í╡─╫╓╖√┤«
  4690. └²╫╙: ▓╬╝√fgets()
  4691.  
  4692. .2349
  4693. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4694. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4695.  
  4696. freadstr()
  4697. ╙∩╖¿:     freadstr (<nHandle>, <nByte>)
  4698. ╙├═╛:     ╢┴╚í╥╗╕÷┤≥┐¬╬─╝■╓╨╡─▓┐╖▌─┌╚▌íú
  4699. ▓╬╩²:     
  4700.     <nHandle>     ╬─╝■╛Σ▒·
  4701. <nByte>     ╢┴╚í╡─╫╓╜┌╩²íú╚τ╣√<nByte> ╩╟╒²╩², ╘≥╢┴╚í╩▒╬─╝■╓╕╒δ╧≥╬─
  4702. ╝■╬▓╖╜╧≥╥╞╢»íú╚τ╣√<nByte> ╩╟╕║╩², ╘≥╢┴╚í╩▒╬─╝■╓╕╒δ╧≥╬─
  4703. ╝■═╖╖╜╧≥╥╞╢»íú(<nByte> <= 64K)
  4704. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  4705. ╦╡├≈:     ╚τ╣√freadstr() ║»╩²╖╡╗╪╓╡╬¬┐╒, ╘≥╦╡├≈┤µ╘┌╥╗╕÷┤φ╬≤, ╗≥╒▀╩╟
  4706. <nByte> ╦∙╓╕╢¿╡─╡┌╥╗╕÷╫╓╖√╩╟┐╒╫╓╖√, ╗≥╒▀╙÷╡╜┴╦╬─╝■╜ß
  4707. ╬▓íú╚τ╣√freadstr() ║»╩²╙÷╡╜┴╦╥╗╕÷┐╒╫╓╖√, ╘≥╗ß╫╘╢»╓╒╓╣, │²┤╦╓«═Γ
  4708. ╡─╚╬║╬╫╓╖√╢╝─▄╢┴╚ííú
  4709. └²╫╙:// ╧╘╩╛╢┴╚í╨┼╧ó
  4710.      buff: =space (remain)
  4711.     strg: =freadstr (hand, remain)
  4712.     if empty (strg)
  4713.         ? " ╖ó╔·┤φ╬≤"
  4714.     else
  4715.         ? " │╔╣ª╢┴│÷"
  4716.     endif
  4717.     
  4718. ▓╬╝√: @2347 [fread]()
  4719.  
  4720. .2451
  4721. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4722. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  4723.  
  4724. freevars()
  4725. ╙∩╖¿: freevars()
  4726. ╙├═╛: ╩═╖┼╙╔initvars() ┤┤╜¿╡─╣½╣▓╫╓╢╬▒Σ┴┐
  4727. ▓╬╩²: ╬▐
  4728. ╖╡╗╪╓╡: nil
  4729. └²╫╙: ▓╬╝√initvars()
  4730.  
  4731. .2350
  4732. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4733. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4734.  
  4735. frename()
  4736. ╙∩╖¿:     frename (<cOldfilename>, <cNewfilename>)
  4737. ╙├═╛:     ╕°╬─╝■╗╗├√íú
  4738. ▓╬╩²:     
  4739.     <cOldfilename>         ╘¡╬─╝■├√
  4740.     <cNewfilename>        ╨┬╬─╝■├√
  4741. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  4742. ╦╡├≈:     ╚⌠frname() ║»╩²╡≈╙├│╔╣ª, ╘≥╖╡╗╪╓╡0, ╖±╘≥╖╡╗╪╓╡-1 ╥╘▒φ╩╛│÷
  4743. ╧╓┤φ╬≤íú┤φ╬≤╨╘╓╩┐╔╙├ferror() ║»╩²╚╖╢¿íú
  4744. └²╫╙:
  4745. /* ╚τ╬─╝■old. dbf ┤µ╘┌╟╥╬─╝■new. dbf ▓╗┤µ╘┌, ╘≥╜½╬─╝■old. dbf ╗╗├√╬¬new. dbf*/
  4746.  if (file ("old. dbf")). and. (! file ("new. dbf") )
  4747. frename ("old. dbf", "new. dbf")
  4748. endif    
  4749.  
  4750. ▓╬╝√:     @2327 [ferror]()
  4751.  
  4752. .2351
  4753. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4754. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4755.  
  4756. fseek()
  4757. ╙∩╖¿:     fseek (<nHandle>, <nOffest> [, <nStart>])
  4758. ╙├═╛:     ╢¿╬╗╥╗╕÷╙╔fopen() ║»╩²╗≥fcreate() ║»╩²┤≥┐¬╡─╬─╝■╓╨╡─dos ╬─╝■
  4759. ╓╕╒δíú
  4760. ▓╬╩²:     
  4761. <nHandle>            ╬─╝■╛Σ▒·
  4762. <nOffest>     ╬─╝■╓╕╒δ┤╙╡▒╟░╬╗╓├┐¬╩╝╗≥┤╙<nStart> ▓╬╩²╓╕╢¿╡─╨┬╞≡
  4763. ╩╝╬╗╓├┐¬╩╝╨Φ╥¬╥╞╢»╡─╫╓╜┌╩²─┐
  4764. <nStart>     ╓╕╢¿fseek() ║»╩²╘┌╥╞╢»╬─╝■╓╕╒δ╩▒╡─╞≡╩╝▓╬╒╒╬╗╓├(0_2)íú
  4765.                 0 ╬─╝■═╖
  4766.                 1 ╬─╝■╓╕╒δ╡─╡▒╟░╬╗╓├
  4767.                 2 ╬─╝■╬▓
  4768.                 ╚▒╩í╥╘╬─╝■═╖╬¬╞≡╩╝▓╬╒╒╬╗╓├íú
  4769. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  4770. ╦╡├≈:     fseek() ║»╩²╖╡╗╪╬─╝■╓╕╒δ╙δ╬─╝■═╖╝Σ╡─╞½╥╞╫╓╜┌╩²
  4771. ─┐íú
  4772. └²╫╙:// ╧┬└²╕°│÷╝╞╦π╬─╝■│ñ╢╚╡─╥╗╓╓╖╜╖¿
  4773.      flie_len: =fseek (hand, 1, 2) -1
  4774.  
  4775. ▓╬╝√:     @2352 [fwrite](), fopen()
  4776.  
  4777. .1503
  4778. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4779. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  4780.  
  4781. fullkey()
  4782. ╙∩╖¿: fullkey()
  4783. ╙├═╛: ╚╖╢¿╚╬║╬░┤╝ⁿ╡─ASCII ┬δ╓╡║═╔¿├Φ┬δ
  4784. ▓╬╩²: ╬▐
  4785. ╖╡╗╪╓╡: ╖╢╬º-32, 768 ╡╜+32, 767 ╓«╝Σ╡─╩²╓╡
  4786. └²╫╙:? fullkey()
  4787. ▓╬╝√:@1530 [scankey]( )
  4788.  
  4789. .2354
  4790. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4791. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4792.  
  4793. fullpath()
  4794. ╙∩╖¿: fullpath (<cFilename>, <idDospath>)
  4795. ╙├═╛: ╚ícFilename ╡─┬╖╛╢╡─╚½├√
  4796. ▓╬╩²: 
  4797.     <cFilename>         ╬─╝■├√╫╓╖√┤«
  4798. <idDospath>        ╬¬┐╒╩▒╘≥╙╔winbase ╓╨set path ╔Φ╢¿╡─┬╖╛╢╚╖╢¿,  ╘≥╙╔DOS ╗╖╛│╓╨╡─path ┬╖╛╢╚╖
  4799. ╢¿íú
  4800. ╖╡╗╪╓╡: ╖╡╗╪cFilename ╡─┬╖╛╢╡─╚½├√
  4801. └²╫╙:? fullpath ("user. dbf", 1)
  4802. ▓╬╝√:@2337 [filepath]( )
  4803.  
  4804. .2352
  4805. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4806. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4807.  
  4808. fwrite()
  4809. ╙∩╖¿:     fwrite (<nHandle>, <cVariable>, <nByte>)
  4810. ╙├═╛:     ╜½─┌┤µ▒Σ┴┐╡──┌╚▌╨┤╚δ╥╗╕÷╬─╝■╓╨
  4811. ▓╬╩²:     
  4812.     <nHandle>     ╥¬╨┤╚δ─┌┤µ▒Σ┴┐─┌╚▌╡─╬─╝■╛Σ▒·
  4813.     <cVariable>     ─┌┤µ▒Σ┴┐├√
  4814. <nByte>     ╨┤╚δ╬─╝■╓╨╡─╗║│σ╟°╡─╫╓╜┌│ñ╢╚, ╚τ╚▒╩í, ╘≥╗║│σ╟°╓╨
  4815. ╦∙╙╨╡─╫╓╜┌╢╝╨┤╚δ╬─╝■╓╨íú
  4816. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  4817. ╦╡├≈:     fwrite() ║»╩²╖╡╗╪╩╡╝╩╨┤╚δ╬─╝■╓╨╡─╫╓╜┌╩²─┐íú╚τ╣√╨┤
  4818. │╔╣ª, ╘≥╖╡╗╪╓╡╜½╡╚╙┌<nByte> ▓╬╩²╓╕╢¿╡─╓╡, ╚τ╣√<nByte> ▓╬╩²├╗╓╕╢¿, ╘≥
  4819. ╡╚╙┌<cVariable> ▓╬╩²╡─│ñ╢╚len (<cVariable>)íú╞Σ╦ⁿ╖╡╗╪╓╡╢╝╦╡├≈╨┤▓┘╫≈╓╨
  4820. │÷╧╓┴╦┤φ╬≤íú
  4821. └²╫╙:// ╚τA ┼╠┐╒╝Σ╫π╣╗┤≤, ╘≥╜½╗║│σ╟°─┌╚▌╨┤╚δA ┼╠▓ó╣╪▒╒
  4822. ╬─╝■
  4823.      if len (buff) <diskspace (1)
  4824.         fwrire (hand, buff)
  4825.         fclose (hand)
  4826.     endif
  4827.     
  4828. ▓╬╝√: @2324 [fcreate](), @2345 [fopen]()
  4829.  
  4830. .2353
  4831. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4832. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  4833.  
  4834. fwriteln()
  4835. ╙∩╖¿: fwriteln (<nHandle>, <cStr>, <nLength>, <nDelim>)
  4836. ╙├═╛: ╧≥╬─╝■╓╨╨┤╚δ╫╓╖√┤«
  4837. ▓╬╩²:    
  4838.     <nHandle>         ╬─╝■╛Σ▒·
  4839.     <cStr>             ╥¬╨┤╚δ╡─╫╓╖√┤«
  4840. <nLength>        ╫╓╖√┤«│ñ╢╚íó╚▒╩í╬¬str ╡─│ñ╢╚╝╙nDelim ╡─│ñ╢╚
  4841.     <nDelim>        ╜ß╩°╖√(╚▒╩í╬¬CRLF)
  4842. ╖╡╗╪╓╡: ╬▐
  4843. └²╫╙: ▓╬╝√fputs()
  4844.  
  4845. .1612
  4846. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4847. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  4848.  
  4849. g_close()
  4850. ╙∩╖¿:     g_close()
  4851. ╙├═╛:     ╣╪▒╒╥╤│⌡╩╝╗»╡─╧╘╩╛─ú╩╜
  4852. ▓╬╩²:     ╬▐
  4853. ╖╡╗╪╓╡: NIL
  4854.  
  4855. ▓╬╝√:     @1618 [g_init]()
  4856.  
  4857. .1613
  4858. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4859. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  4860.  
  4861. g_color()
  4862. ╙∩╖¿:     g_color (<nColor>)
  4863. ╙├═╛:     ╔Φ╓├╤╒╔½╓╡╬¬<nColor> (0--15)
  4864. ▓╬╩²:     
  4865.     <nColor>        ╤╒╔½╓╡(0--15)
  4866. ╦╡├≈:     ╤╒╔½╓╡╦∙╢╘╙ª╡─╤╒╔½▓╬╝√setcolor()
  4867. ╖╡╗╪╓╡: ╔Φ╓├╡─╤╒╔½╓╡
  4868.  
  4869. ╙├╖¿▓╬╝√: @1623 [g_moveto]()
  4870.  
  4871. .1614
  4872. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4873. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  4874.  
  4875. g_ellips()
  4876. ╙∩╖¿: g_ellips (<idType>, <nX1>, <nY1>, <nX2>, <nY2>)
  4877. ╙├═╛: ╗¡╙╔╛╪╨╬<nX1, nY1, nX2, nY2> ╢¿╥σ╡─╘▓╗≥═╓╘▓íú
  4878. ▓╬╩²:    
  4879. <idType>     ╠ε│Σ▓╬╩²,  idType=2 ╩▒╗¡╥╗╡Ñ╕÷╘▓, idType=3 ╘≥╗¡═¼╨─╘▓
  4880.     <nX1,nY1>     ╛╪╨╬╡─╫≤╔╧╜╟╧≤╦╪╫°▒Ω
  4881.     <nX2,nY2>     ╛╪╨╬╡─╙╥╧┬╜╟╧≤╦╪╫°▒Ω
  4882. ╖╡╗╪╓╡: ╬▐
  4883. └²╫╙: g_ellips (2, 10, 10, 200, 300)
  4884.  
  4885. .1615
  4886. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4887. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  4888.  
  4889. g_get()
  4890. ╙∩╖¿: g_get (<nX1>, <nY1>, <nX2>, <nY2>)
  4891. ╙├═╛: ╜½╓╕╢¿╟°╙≥╡─╞┴─╗═╝╧≤╚í╧┬, ▓ó╤╣╚δ═╝╧±╒╗(╫ε╢α
  4892. 20 ╕÷)
  4893. ▓╬╩²:    
  4894.     <nX1,nY1>    ╚í═╝╧±╡─╫≤╔╧╜╟╧≤╦╪╫°▒Ω
  4895.     <nX2,nY2>     ╚í═╝╧±╡─╙╥╧┬╜╟╧≤╦╪╫°▒Ω
  4896. ╖╡╗╪╓╡: │╔╣ª╖╡╗╪═╝╧±╛Σ▒·, ╩º░▄╖╡╗╪0
  4897. └²╫╙:
  4898. pcx ("file. pcx", 10, 10, 100, 100)
  4899. g_get (10, 10, 100, 100)
  4900. ▓╬╝√:@1625 [g_put](), @1626 [g_puti]()
  4901.  
  4902. .1616
  4903. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4904. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  4905.  
  4906. g_getpixel()
  4907. ╙∩╖¿: g_getpixel (<nX>, <nY>)
  4908. ╙├═╛: ╚í╞┴─╗╔╧─│╡π╡─╤╒╔½
  4909. ▓╬╩²:    
  4910.     <nX, nY>    ╥¬╚í╤╒╔½╡─╡π╡─╧≤╦╪╫°▒Ω
  4911. ╖╡╗╪╓╡: │╔╣ª╖╡╗╪╡▒╟░╡π╡─╤╒╔½ú¼╩º░▄╘≥╖╡╗╪-1
  4912. ▓╬╝√:@1630 [g_setpixel]()
  4913.  
  4914. .1617
  4915. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4916. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  4917.  
  4918. g_gettmp()
  4919. ╙∩╖¿: g_gettmp (<nX1>, <nY1>, <nX2>, <nY2>)
  4920. ╙├═╛:  ╜½═╝╧±╖┼╚δ┴┘╩▒╟°, ╢°▓╗╩╟╤╣╚δ╒╗
  4921. ▓╬╩²:    
  4922.     <nX1,nY1>         ╚í═╝╧±╡─╫≤╔╧╜╟╧≤╦╪╫°▒Ω
  4923.     <nX2,nY2>         ╚í═╝╧±╡─╙╥╧┬╜╟╧≤╦╪╫°▒Ω
  4924. ╖╡╗╪╓╡: ╬▐
  4925. ▓╬╝√:@1627 [g_puttmp]()
  4926.  
  4927. .1618
  4928. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4929. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  4930.  
  4931. g_init()
  4932. ╙∩╖¿:     g_init (<nMode>)
  4933. ╙├═╛:     │⌡╩╝╗»╧╘╩╛─ú╩╜
  4934. ▓╬╩²:     
  4935.     <nMode>         ╧╘╩╛─ú╩╜, ╩²╓╡╨═
  4936. ╖╡╗╪╓╡: 1
  4937. └²╫╙:     
  4938. #include "winbase.inc"    // ▒╪╨δ░ⁿ└¿╕├╬─╝■
  4939. PROCEDURE MAIN (arv1, arv2)
  4940.     windowstart()    //WinBase │⌡╩╝╗»
  4941.     g_init (18) // │⌡╩╝╗»╬¬═╝╨╬╖╜╩╜
  4942.     g_mode (4) // ╗¡╧▀╡─╖╜╩╜╬¬XOR
  4943.     g_color (7) // ╔Φ╓├╤╒╔½╬¬░╫╔½
  4944.     drawrect() // ▓╬╝√: @1628 [g_rect]()
  4945.     inkey (0)
  4946.     cls
  4947.     linepic() // ▓╬╝√: @1623 [g_moveto]()
  4948.     inkey (0)
  4949.     cls
  4950.     tarpic() // ▓╬╝√: @1631 [g_style]()
  4951.     inkey (0)
  4952.     g_close() // ╣╪▒╒╥╤│⌡╩╝╗»╡─╧╘╩╛─ú╩╜
  4953.     windowexit()
  4954. return
  4955.  
  4956. ▓╬╝√: @1612 [g_close]()    
  4957.  
  4958. .1619
  4959. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4960. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  4961.  
  4962. g_lineto()
  4963. ╙∩╖¿: g_lineto (<nX>, <nY>)
  4964. ╙├═╛: ┤╙╡▒╟░╧≤╦╪╡π╬╗╓├╗¡╧▀╡╜<nX, nY>
  4965. ▓╬╩²:
  4966.      <nX>, <nY>     ╧≤╦╪╡π╫°▒Ω
  4967. ╖╡╗╪╓╡: NIL
  4968.  
  4969. ╙├╖¿▓╬╝√: @1623 [g_moveto](),  @1607 [drawline]()
  4970.  
  4971. .1621
  4972. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4973. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  4974.  
  4975. g_mapall()
  4976. ╙∩╖¿: g_mapall (<colorarr>)
  4977. ╙├═╛: ╙╔╤╒╔½╩²╫Θ╥╗┤╬╔Φ╓├╡≈╔½░σ
  4978. ▓╬╩²:
  4979.      <colorarr>     ╤╒╔½╩²╫Θ╡─╕±╩╜╬¬{ {R, G, B},..., {R, G, B}}
  4980. ╖╡╗╪╓╡: ╬▐
  4981. └²╫╙: ▓╬╝√ @1620 [g_mappal]()
  4982.  
  4983.  
  4984. .1620
  4985. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  4986. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  4987.  
  4988. g_mappal()
  4989. ╙∩╖¿: g_mappal (<index>, <nColor>)
  4990. ╙├═╛: ╔Φ╓├─│╤╒╔½╡─╨┬╔½▓╩
  4991. ▓╬╩²:    
  4992.     <index>     ╓╕╢¿╡─╡≈╔½░σ╤╒╔½
  4993.     <nColor>     ╨┬╤╒╔½╓╡, ┐╔╙╔g_rgb ║»╩²╗±╡├
  4994. ╖╡╗╪╓╡: ╬▐
  4995. └²╫╙: #include "winbase. ch"
  4996. PROCEDURE MAIN (arv1, arv2)
  4997. private i, red, green, blue, x, y, color
  4998. declare pal [256]
  4999.  
  5000.     mappal16()
  5001.     setcancel (.T.)
  5002.     i: =0
  5003.     for x: =0 to 639 step 160
  5004.         for y=0 to 479 step 120
  5005.             g_color (i)
  5006.             i++
  5007.             g_rect(3, x, y, x+150, y+110)
  5008.         next
  5009.     next
  5010.     inkey (0)
  5011.     i: =1
  5012.     for blue=0 to 63 step 16
  5013.         for green=0 to 63 step 16
  5014.             for red=0 to 63 step 16
  5015.                 pal [i]: =g_rgb (red, green, blue)
  5016.                 i++
  5017.             next
  5018.         next
  5019.     next
  5020.     g_mapall (pal)
  5021.     inkey (0)
  5022.     mappal16()
  5023.     i: =0
  5024.     for green=0 to 63 step 16
  5025.         for red=0 to 63 step 16
  5026.             for blue=0 to 63 step 16
  5027.                 color=g_rgb (red, green, blue)
  5028.                 g_mappal (i, color)
  5029.                 i++
  5030.                 inkey (1)
  5031.             next
  5032.         next
  5033.     next
  5034.     mappal16()
  5035.     inkey (0)
  5036. RETURN
  5037. ▓╬╝√:@1621 [g_mapall]()
  5038.  
  5039. .1622
  5040. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5041. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  5042.  
  5043. g_mode()
  5044. ╙∩╖¿: g_mode (<action>)
  5045. ╙├═╛: ╔Φ╓├╡▒╟░╨┤─ú╩╜
  5046. ▓╬╩²:    
  5047.     <action>     ╨┤─ú╩╜, ┐╔╥╘╩╟╥╘╧┬▓╬╩²
  5048.     C_GAND:     ╨┤╨┬═╝╧±╩▒╙δ╥╤┤µ╘┌╡─═╝╧±╫≈░┤╬╗╙δ
  5049.     C_GOR:     ╨┤╨┬═╝╧±╩▒╙δ╥╤┤µ╘┌╡─═╝╧±╫≈░┤╬╗╗≥
  5050.     C_GXOR:     ╨┤╨┬═╝╧±╩▒╙δ╥╤┤µ╘┌╡─═╝╧±╫≈░┤╬╗╥∞╗≥
  5051.     C_GPRESET:     ╨┤╨┬═╝╧±╩▒╟≤░┤╬╗╖┤
  5052.     C_GPSET:     ╓▒╜╙╨┤╨┬═╝╧±
  5053. ╖╡╗╪╓╡: ╘¡╙╨╡─╨┤─ú╩╜
  5054.  
  5055. .1623
  5056. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5057. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  5058.  
  5059. g_moveto()
  5060. ╙∩╖¿:     g_moveto (<nX>, <nY>)
  5061. ╙├═╛:     ╜½╧≤╦╪╓╕╒δ╥╞╡╜<nX, nY>
  5062. ▓╬╩²: 
  5063.     <nX, nY>     ╧≤╦╪╡π╫°▒Ω
  5064. ╖╡╗╪╓╡: NIL
  5065. └²╫╙:// ▒╛└²├Φ╩÷┴╦╥╗╕÷╕≈╔½╓▒╧▀╫Θ│╔╡─═╝░╕
  5066.     function linepic()
  5067.     local i, j
  5068.     g_moveto (300, 200) // ╧≤╦╪╓╕╒δ╥╞╡╜(300, 200)
  5069.     for i=1 to 5
  5070.         for j=1 to 5
  5071.             g_color (i+j) // ╔Φ╓├╤╒╔½╓╡╬¬i+j
  5072.             g_lineto (j*100, i*50) 
  5073.                 // ┤╙╡▒╟░╧≤╦╪╬╗╓├╗¡╧▀╡╜(j*100, i*50)
  5074.         next j
  5075.     next i
  5076.     return nil
  5077.     
  5078. ▓╬╝√:     @1607 [drawline](), @1613 [g_color](), @1619 [g_lineto]()
  5079.  
  5080. .1624
  5081. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5082. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  5083.  
  5084. g_port()
  5085. ╙∩╖¿:     g_port (<nX1>, <nY1>, <nX2>, <nY2>)
  5086. ╙├═╛:     ╔Φ╓├═╝╨╬╧╘╩╛╟°╙≥
  5087. ▓╬╩²:     
  5088.     <nX1,nY1>    ╦∙╕°═╝╨╬╧╘╩╛╟°╙≥╫≤╔╧╜╟╧≤╦╪╡π╫°▒Ω;
  5089.     <nX2,nY2>     ╦∙╕°═╝╨╬╧╘╩╛╟°╙≥╙╥╧┬╜╟╧≤╦╪╡π╫°▒Ω.
  5090. ╖╡╗╪╓╡: NIL
  5091. // ▒╛└²├Φ╩÷┴╦╥╗╕÷╘┌═╝╨╬╧╘╩╛╟°╙≥─┌╘╦╢»╡─═╝╨╬
  5092. └²╫╙:
  5093.     #include "winbase.inc"
  5094.     procedure main()
  5095.     local i
  5096.     windowstart()
  5097.     g_init (18) // │⌡╩╝╗»╧╘╩╛─ú╩╜╬¬═╝╨╬╖╜╩╜
  5098.     g_rect (2, 80, 80, 560, 400) // ╗¡╥╗╛╪╨═
  5099.     g_mode (4) // ╗¡╧▀╡─╖╜╩╜╬¬XOR
  5100.     g_port (81, 81, 559, 399) // ╔Φ╓├═╝╨╬╧╘╩╛╟°╙≥
  5101.     for i=60 to 600 step 5
  5102.         drawcore (i, 150, 100, 50)
  5103.         drawcore (640-i, 250, 100, 50)
  5104.         tone (i) // ╖ó╔∙
  5105.         inkey (0. 05)
  5106.     next i
  5107.     g_close (18)
  5108.     windowexit()
  5109. RETURN
  5110. function drawcore (topcol, toprow, hight, width) // ╗¡╥╗╚²╜╟╨╬
  5111. drawline (topcol, toprow, topcol-int (width/2), toprow+hight, 7)
  5112. drawline (topcol, toprow, topcol+int (width/2), toprow+hight, 7)
  5113. drawline (topcol+int (width/2), toprow+hight, topcol-int (width/2),;
  5114. toprow+hight, 7)
  5115. return nil
  5116.  
  5117. ▓╬╝√:     @1628 [g_rect](), @1622 [g_mode](), @1762 [tone](), @1607 [drawline]()
  5118.  
  5119.  
  5120. .1625
  5121. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5122. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  5123.  
  5124. g_put()
  5125. ╙∩╖¿: g_put (<nX1>, <nY1>)
  5126. ╙├═╛: ╜½═╝╧±╒╗╢Ñ─┌╚▌╡»│÷▓ó╧╘╩╛
  5127. ▓╬╩²:
  5128.     <nX1,nY1>     ╧╘╩╛═╝╧±╡─╫≤╔╧╜╟╧≤╦╪╫°▒Ω
  5129. ╖╡╗╪╓╡: │╔╣ª╖╡╗╪╡»│÷╡─═╝╧±╛Σ▒·, ╩º░▄╖╡╗╪0
  5130. └²╫╙:    pcx ("file. pcx", 10, 10, 100, 100)
  5131.     g_get (10, 10, 100, 100)
  5132.     clear
  5133.     g_put (10, 10)
  5134.  
  5135. .1626
  5136. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5137. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  5138.  
  5139. g_puti()
  5140. ╙∩╖¿: g_puti (<nX>, <nY>, <nPh>)
  5141. ╙├═╛: ╧╘╩╛═╝╧±╒╗╓╨╓╕╢¿╛Σ▒·╡─═╝╧±
  5142. ▓╬╩²:    
  5143.     <nX, nY>    ╧╘╩╛═╝╧±╡─╫≤╔╧╜╟╧≤╦╪╫°▒Ω
  5144.     <nPh>        ═╝╧≤╛Σ▒·
  5145. ╖╡╗╪╓╡: │╔╣ª╖╡╗╪═╝╧≤╛Σ▒·, ╩º░▄╖╡╗╪0.
  5146. └²╫╙:    h: =g_get (10, 10, 100, 100)
  5147.     clear
  5148.     g_puti (10, 10, h)
  5149.  
  5150. .1627
  5151. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5152. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  5153.  
  5154. g_puttmp()
  5155. ╙∩╖¿: g_puttmp (nX, nY)
  5156. ╙├═╛: ╧╘╩╛┴┘╩▒╟°╡─═╝╧±, ▓ó╩═╖┼╕├┐╒╝Σíú
  5157. ▓╬╩²: 
  5158.     <nX, nY>    ╧╘╩╛═╝╧±╡─╫≤╔╧╜╟╧≤╦╪╫°▒Ω
  5159. ╖╡╗╪╓╡: ╬▐
  5160.  
  5161. .1628
  5162. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5163. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  5164.  
  5165. g_rect()
  5166. ╙∩╖¿:     g_rect (<nMode>, <nX1>, <nY1>, <nX2>, <nY2>)
  5167. ╙├═╛:     ╗¡╖╜┐≥╗≥╠ε│Σ
  5168. ▓╬╩²:
  5169.     <nMode>    ╬¬2╩▒╗¡╖╜┐≥ú¼╬¬3╩▒╠ε│Σ╖╜┐≥
  5170.     <nX1,nY1>    ╖╜┐≥╫≤╔╧╜╟╧≤╦╪╨╨┴╨╫°▒Ω
  5171.     <nX2,nY2>    ╖╜┐≥╙╥╧┬╜╟╧≤╦╪╨╨┴╨╫°▒Ω
  5172. ╖╡╗╪╓╡: NIL
  5173. └²╫╙:// ╕├└²╗¡╥╗╧╡┴╨╜╗▓µ╡─╖╜┐≥
  5174.  function deawrect()
  5175. local i
  5176.     for i=1 to 10
  5177.         g_rect (2, 30+60*i, 20+40*i, 640-60*i, 480-40*i)
  5178.     next
  5179.     inkey (0)
  5180.     cls
  5181. return nil
  5182.     
  5183. ▓╬╝√: @1606 [drawbox](), @1602 [box3d]()
  5184.  
  5185. g_rectc()
  5186. ╙∩╖¿: g_rectc (<nColor>, <nX1>, <nY1>, <nX2>, <nY2>)
  5187. ╙├═╛: ╗¡╘▓╜╟╖╜┐≥
  5188. ▓╬╩²:    
  5189.     <nColor>    ╖╜┐≥╤╒╔½
  5190.     <nX1,nY1>     ╖╜┐≥╡─╫≤╔╧╜╟╧≤╦╪╫°▒Ω
  5191.     <nX2,nY2>     ╖╜┐≥╡─╙╥╧┬╜╟╧≤╦╪╫°▒Ω
  5192. ╖╡╗╪╓╡: ╬▐
  5193. └²╫╙: g_rectc (1, 5, 5, 100, 100)
  5194. ▓╬╝√:g_rectc()
  5195.  
  5196. .1629
  5197. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5198. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  5199.  
  5200. g_rgb()
  5201. ╙∩╖¿: g_rgb (<R>, <G>, <B>)
  5202. ╙├═╛: ╟≤╙╔R, G, B ╗±╡├╡─│ñ╒√╩²╤╒╔½╓╡
  5203. ▓╬╩²:    
  5204.     <R>        ║∞╔½▒╚└²
  5205.     <G>        ┬╠╔½▒╚└²
  5206.     <B>        └╝╔½▒╚└²
  5207. ╖╡╗╪╓╡: ╙╔R. G. B ╗±╡├╡─│ñ╒√╩²╤╒╔½╓╡
  5208. └²╫╙: ▓╬╝√g_mappal()
  5209.  
  5210. .1630
  5211. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5212. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  5213.  
  5214. g_setpixel()
  5215. ╙∩╖¿: g_setpixel (<nX>, <nY>, [<nColor>])
  5216. ╙├═╛: ╘┌╞┴─╗╔╧╗¡╡π, ╚τ╬┤╔Φ╓├╤╒╔½▓╬╩²╘≥╥╘╡▒╟░╔½╗¡
  5217. ╡π
  5218. ▓╬╩²:    
  5219.     <nX, nY>        ╥¬╗¡╡π╡─╧≤╦╪╫°▒Ω
  5220.     [<nColor>]        ╦∙╗¡╡π╡─╤╒╔½
  5221. ╖╡╗╪╓╡: │╔╣ª╖╡╗╪╧╚╟░╡π╡─╤╒╔½ú¼╩º░▄╘≥╖╡╗╪-1
  5222. ▓╬╝√:@1616 [g_getpixel]()
  5223.  
  5224. .1631
  5225. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5226. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  5227.  
  5228. g_style()
  5229. ╙∩╖¿:    g_style (<nMode>, <nLinestyle>)
  5230. ╙├═╛: ╔Φ╓├╗¡╧▀─ú╩╜
  5231. ▓╬╩²:     ╚⌠nLinestyle ╬¬┐╒ú¼╘≥nMode=0 ╩▒╬¬╨Θ╧▀ú¼nMode=1 ╩▒╬¬╩╡╧▀,
  5232.     ╖±╘≥╗¡╧▀╜½░┤linestyle ╓╕╢¿╡──ú╩╜╜°╨╨.
  5233.     nLinestyle=65536 ╩▒╬¬╩╡╧▀
  5234.     nLinestyle=3084 ╩▒╬¬╨Θ╧▀
  5235.     ╞Σ╙α╬¬╝Σ╢╬╧▀
  5236. ╖╡╗╪╓╡: ╡▒╟░╗¡╧▀─ú╩╜
  5237. └²╫╙ú║
  5238. #include "winbase.inc"
  5239.  
  5240. PROCEDURE MAIN(arv1,arv2)
  5241. private i,x,y,s
  5242.     windowstart( )
  5243.     x:=5
  5244.     y:=5
  5245.     s:=1
  5246.     for i=1 to 60
  5247.         g_style(,s)        //╓├╗¡╧▀─ú╩╜
  5248.         drawline(x,y,300,240,1+mod(i,16))
  5249.         x:=x+10
  5250.         s++
  5251.     next    
  5252. return
  5253.  
  5254. .2355
  5255. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5256. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  5257.  
  5258. getattr()
  5259. ╙∩╖¿: getattr (<cFilename>)
  5260. ╙├═╛: ╗±╡├╬─╝■╡─╩⌠╨╘
  5261. ▓╬╩²: 
  5262.     <cFilename>         ╬─╝■├√
  5263. ╖╡╗╪╓╡: ╬─╝■╩⌠╨╘, ╩⌠╨╘╓╡▓╬╝√setattr
  5264. ▓╬╝√:@2364 [setattr]()
  5265.  
  5266. .1303
  5267. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5268. @13[╗ß╗░║»╩²╦≈╥²]
  5269.  
  5270. getcond()
  5271. ╙∩╖¿:     getcond (<cTitle>, <dbfali>, <cInitval>, <cHelpfunc>)
  5272. ╙├═╛:     ╡»│÷╠⌡╝■╫Θ║╧╢╘╗░┐≥, ┐╔╙├TAB ╝ⁿ╠°╫¬
  5273. ▓╬╩²:     
  5274.     <cTitle>     ╠ß╩╛
  5275.     <dbfali>     ╩²╛▌┐Γ▒≡├√
  5276.     <cInitval>     │⌡╩╝╠⌡╝■┤«
  5277.     <cHelpfunc>     ░∩╓·║»╩²├√
  5278. ╖╡╗╪╓╡: ╫╓╖√┤«(╫Θ║╧╠⌡╝■)
  5279.  
  5280. └²╫╙: 
  5281. #include "winbase.inc"
  5282. procedure example4()
  5283. local temp, mycon
  5284.     windowstart()
  5285.     select 1 // ╤í╘±╣ñ╫≈╟°1
  5286.     use dd // ┤≥┐¬╩²╛▌┐Γdd
  5287.     temp: =alias (1) // ╡├╡╜dd ╡─▒≡├√
  5288.     mycon: =getcond (" ╤í╘±╠⌡╝■╫Θ║╧", temp," '', "myfun") 
  5289.             // ╡├╡╜╠⌡╝■╫Θ║╧(mycon)
  5290.     ... // │⌡╓╡╬¬┐╒, ░∩╓·║»╩²myfun
  5291.     windowexit()
  5292. return
  5293.  
  5294. function myfun() // ░∩╓·║»╩²
  5295.     msgbox( "Please wait! ", " ╙├╩≤▒Ω╤í╘±╠⌡╝■",1)
  5296. return nil
  5297.  
  5298. ▓╬╝√:     @3116[find], @3122[locate]
  5299.  
  5300. .1304
  5301. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5302. @13[╗ß╗░║»╩²╦≈╥²]
  5303.  
  5304. getdlg()
  5305. ╙∩╖¿:    getdlg (<nHandle>, <idType>, <cTitle>, [<nSpecpos>])
  5306. ╙├═╛:    ╚í└α╨═╬¬CHECK, RADIO, EDIT, LISTBOX, MULEDIT
  5307.     ╢╘╗░┐≥╡─╖╡╗╪╓╡
  5308. ▓╬╩²:     
  5309.     <nHandle>         ╢╘╗░┐≥╛Σ▒·
  5310.     <idType>        ╢╘╗░┐≥└α╨═
  5311.     <cTitle>        ╢╘╗░┐≥▒Ω╠Γ
  5312. <nSpecpos>         ╓╕╢¿╥¬╗±╚í╡─╧ε─┐╘┌╢╘╗░┐≥╓╨╡─╬╗╓├(╢╘CHECKíóEDITíóLISTBOX └α╨═)
  5313. ╖╡╗╪╓╡:▓╗═¼└α╨═╡─╢╘╗░┐≥╜½╖╡╗╪▓╗═¼╡─╓╡, ╛▀╠σ╚τ╧┬:
  5314.  (1) CHECK └α: ╚⌠nSpecpos╓╕╢¿╡─╧ε─┐▒╗╤í╘±╛═╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.
  5315.  (2) RADIO └α: ╖╡╗╪▒╗╤í╓╨╧ε─┐╡─╨≥║┼
  5316.  (3) LISTBOX └α: ╖╡╗╪▒╗╤í╓╨╧ε─┐╡──┌╚▌(╫╓╖√┤«)
  5317.  (4) EDIT └α: ╖╡╗╪nSpecpos ╓╕╢¿╧ε─┐╡──┌╚▌(╩²╛▌└α╨═╧ε─┐╢°╢¿)
  5318.  (5) MULEDIT └α: ╖╡╗╪▒╗▒α╝¡╡─╬─▒╛
  5319. └²╫╙:     
  5320. #include "winbase.inc"
  5321. memvar dlg_succ, check_ret, edit_ret, radio_ret, list_ret, mul_ret
  5322.  
  5323. procedure main()
  5324. local init_pos: =1
  5325. private setdlg_ret, dlg_succ
  5326. private check_ret, edit_ret, radio_ret, list_ret, mul_ret
  5327.  
  5328.     windowstart()
  5329.     msgbox (" ╚í╢╘╗░┐≥╖╡╗╪╓╡", " ╙ª╙├║»╩²GETDLG() └α", 1)
  5330.     setdlg_ret=muti_demo (init_pos)
  5331.     if. not. dlg_succ
  5332.         msgbox (" ╔Φ╓├╫Θ║╧╢╘╗░┐≥╩º░▄", "", 1)
  5333.     else
  5334.         if check_ret
  5335.             msgbox (" ╢α╧ε╢╘╗░┐≥╖╡╗╪╓╡:.T. ",;
  5336.             "CHECK"+str (init_pos, 1) +" ▒╗╤í╓╨", 1)
  5337.         else
  5338.             msgbox (" ╢α╧ε╢╘╗░┐≥╖╡╗╪╓╡:.F. ",;
  5339.             "CHECK"+str (init_pos, 1) +" ╬┤╤í╓╨", 1)
  5340.         endif
  5341.         msgbox (" ╡Ñ╧ε╢╘╗░┐≥╖╡╗╪╓╡: ", str (radio_ret, 1), 1)
  5342.         msgbox (" ╩²╛▌▒α╝¡╢╘╗░┐≥╖╡╗╪╓╡: ", edit_ret, 1)
  5343.         msgbox (" ╬─▒╛▒α╝¡╢╘╗░┐≥╖╡╗╪╓╡: ", mul_ret, 1)
  5344.         msgbox (" ┴╨▒φ╢╘╗░┐≥╖╡╗╪╓╡: ", list_ret, 1)
  5345.     endif
  5346.     windowexit()
  5347. return
  5348.  
  5349. function muti_demo (init_pos)
  5350.  
  5351.     dlg_succ=setdlg (19687, "check", " ╢α╧ε┐≥",;
  5352.      { {"CHECK1", 0}, {"CHECK2", 0}, {"CHECK3", 1}}, 1, 8, 20, init_pos)
  5353.     dlg_succ=setdlg (19687, "radio", " ╡Ñ╧ε┐≥",;
  5354.          {"RADIO1", "RADIO2"}, 1, 8, 42, init_pos)
  5355.     dlg_succ=setdlg (19687, "edit", " ▒α╝¡┐≥",;
  5356.      { {"EDIT1", "WINBASE"}, {"EDIT2", 8}}, 1, 10, 13, 26)
  5357.     dlg_succ=setdlg (19687, "listbox", " ┴╨▒φ┐≥",;
  5358.      {"list1", "list2", "list3"}, 18, 26, 22, 42, init_pos)
  5359.     dlg_succ=setdlg (19687, "muledit", " ╬─▒╛▒α╝¡┐≥",;
  5360.         " ╘╞┤≤╚φ╝■╣½╦╛", 18, 45, 22, 66)
  5361.     if    makedlg (19687, " ╫Θ║╧╢╘╗░┐≥")
  5362.         check_ret=getdlg (19687, "check", " ╢α╧ε┐≥", init_pos)
  5363.         radio_ret=getdlg (19687, "radio", " ╡Ñ╧ε┐≥")
  5364.         edit_ret=getdlg (19687, "edit", " ▒α╝¡┐≥", init_pos)
  5365.         list_ret=getdlg (19687, "listbox", " ┴╨▒φ┐≥")
  5366.         mul_ret=getdlg (19687, "muledit", " ╬─▒╛▒α╝¡┐≥")
  5367.     endif
  5368.     removedlg (19687)
  5369.  
  5370. return nil
  5371. ▓╬╝√:@1312 [setdlg]()
  5372.  
  5373. .1723
  5374. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5375. @17[╧╡═│║»╩²╦≈╥²]
  5376.  
  5377. getenv()
  5378. ╙∩╖¿:     getenv (<cExp>)
  5379. ╙├═╛:     ╚íDOS ╗╖╛│▒Σ┴┐╡──┌╚▌íú
  5380. ▓╬╩²:     
  5381.     <cExp>    ╫╓╖√┤«, DOS ╗╖╛│▒Σ┴┐╡─├√│╞íú
  5382. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  5383. └²╫╙:     temp: =getenv ("path")
  5384.     ? temp // ╜½╖╡╗╪DOS ╗╖╛│▒Σ┴┐PATH ╡─╔Φ╓├
  5385.     
  5386. ▓╬╝√: @1719 [errorlevel]()
  5387.  
  5388. .1305
  5389. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5390. @13[╗ß╗░║»╩²╦≈╥²]
  5391.  
  5392. getfile()
  5393. ╙∩╖¿:     getfile (<cTitle>, <cFilespec>, <idFlag>)
  5394. ╙├═╛:     ╡»│÷╬─╝■╢╘╗░┐≥, ┐╔╙├TAB ╝ⁿ╠°╫¬, ╙├ALT+ í²╤í╘±┬╖╛╢
  5395. ▓╬╩²: 
  5396.     <cTitle>         ╠ß╩╛, ╫╓╖√┤«
  5397.     <cFilespec>         ╓╕╢¿╬─╝■└α╨═, ┐╔╙├? ╝░*
  5398. <idFlag>         ▓╗╬¬┐╒╩▒, ╖╡╗╪┤°┬╖╛╢╡─╬─╝■├√, ╖±╘≥╓╗╖╡╗╪╬─╝■├√
  5399. ╖╡╗╪╓╡: ╫╓╖√┤«
  5400. └²╫╙:     
  5401. #include "winbase.inc"
  5402. procedure example3()
  5403. local temp: =' '
  5404.     windowstart()
  5405.     temp: =getfile (" ╟δ╤í╘±╬─╝■", "c: \winbase\system\*. *,;
  5406.         c: \winbase\system\*. dbf", 'n')
  5407.         // ╤í╘±╬─╝■, ╖╡╗╪┤°┬╖╛╢╡─╬─╝■├√
  5408.     ú└ 24, 20 say padc (" ─π╤í╘±╬─╝■╩╟"+temp, 50)
  5409.              // ┤≥╙í│÷─π╤í╘±╡─┤°┬╖╛╢╬─╝■├√
  5410.     inkey (0) // ╚╬░┤╥╗╝ⁿ╝╠╨°
  5411.     windowexit()
  5412. return
  5413. ▓╬╝√:     @2313 [directory]()
  5414.  
  5415. .2356
  5416. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5417. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  5418.  
  5419. getfilepath()
  5420. ╙∩╖¿: getfilepath (<cFilename>)
  5421. ╙├═╛: ╚í╬─╝■├√╓╨╡─┬╖╛╢
  5422. ▓╬╩²: 
  5423.     <cFilename>         ╬─╝■├√╫╓╖√┤«
  5424. ╖╡╗╪╓╡: ╖╡╗╪╬─╝■<cFilename> ╓╨╡─┬╖╛╢
  5425. └²╫╙:? getfilepath ("C: \DOS\COMANND. COM")    //╖╡╗╪ú║C:\DOS\
  5426.  
  5427. .2357
  5428. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5429. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  5430.  
  5431. getint24()
  5432. ╙∩╖¿: getint24()
  5433. ╙├═╛: ╗±╚íINT 24 ┤ª└φ╡─│÷┤φ┤·┬δ
  5434. ▓╬╩²: ╬▐
  5435. ╖╡╗╪╓╡: ╩²╓╡, ╛▀╠σ║¼╥σ╚τ╧┬▒φ╦∙╩╛
  5436.         ┤·┬δ            ║¼╥σ
  5437.         1            ┤┼┼╠╨┤▒ú╗ñ
  5438.         2            ╬┤╓¬╡─▓┐╝■
  5439.         3            ╟²╢»╞≈╬┤╫╝▒╕║├
  5440.         4            ╬┤╓¬╡─├ⁿ┴ε
  5441.         5            CRC │÷┤φ
  5442.         6            ╟δ╟≤│÷┤φ
  5443.         7            ╦╤╦≈│÷┤φ
  5444.         8            ╜Θ╓╩└α╨═┤φ
  5445.         9            ╔╚╟°╬┤╒╥╡╜
  5446.         10            ┤≥╙í╗·╚▒╓╜
  5447.         11            ┤┼┼╠╨┤│÷┤φ
  5448.         12            ┤┼┼╠╢┴│÷┤φ
  5449.         13            ╥╗░π╨╘┤φ╬≤
  5450.     
  5451. └²╫╙:    ▓╬╝√setint24()
  5452.  
  5453. .1632
  5454. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5455. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  5456.  
  5457. getrname()
  5458. ╙∩╖¿:     getrname (<nRow>, <nCol>, <cFilename>)
  5459. ╙├═╛:     ╜½┤╙╗╖╛│▒Σ┴┐BASETEMP ╦∙╓╕┬╖╛╢╡─╬─╝■<cFilename> ╓╨╗╓╕┤╡╜╞┴─╗, ▓ó
  5460. ╖╡╗╪╧α╙ª╡─╬─╝■├√íú
  5461. ▓╬╩²:     
  5462. <nRow,nCol>    ╓╕╢¿╡─╞┴─╗╟°╙≥╫≤╔╧╜╟╫°▒Ω;╘┌WINBASE╨┬░µ╓╨ú¼╕├▓╬╩²╥╤╬▐
  5463. ╫≈╙├ú¼╓╗╩╟╬¬┴╦▒ú│╓╙δ╛╔░µ╝µ╚▌íú
  5464.     <cFilename>        ╬─╝■├√, ┐╔┤°┬╖╛╢íú
  5465. ╖╡╗╪╓╡: ╧α╙ª╡─╬─╝■├√
  5466.     
  5467. └²╫╙▓╬╝√: @1634 [loadform](), @1637 [pcx](),
  5468.  @1641 [putform](), @1605 [dispform]()
  5469.  
  5470. .2358
  5471. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5472. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  5473.  
  5474. getpath()
  5475. ╙∩╖¿: getpath (<cFilename>, <cPathspec>)
  5476. ╙├═╛: ╘┌╓╕╢¿╡─┬╖╛╢╓╨╚╖╢¿╬─╝■╩╟╖±┤µ╘┌
  5477. ▓╬╩²:    
  5478.     <cFilename>         ╬─╝■├√
  5479.     <cPathspec>         ┬╖╛╢├√
  5480. ╖╡╗╪╓╡: ╘┌cPathspec ╓╕╢¿╡─┬╖╛╢╓╨┤µ╘┌cFilename ╘≥╖╡╗╪┤°┬╖╛╢cFilename , ╖±╘≥╖╡
  5481. ╗╪NIL
  5482. └²╫╙:? getpath ("user. dbf", "mydir")
  5483. ▓╬╝√:@2354 [fullpath]()
  5484.  
  5485. .1633
  5486. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5487. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  5488.  
  5489. getwname()
  5490. ╙∩╖¿:     getwname (<nRow1>, <nCol1>, <nRow2>, <nCol2>, <cFilename>)
  5491. ╙├═╛:     ╜½╓╕╢¿╡─╞┴─╗╟°╙≥┤µ╓ⁿ╡╜╙╔╗╖╛│▒Σ┴┐BASETEMP ╦∙╓╕┬╖
  5492. ╛╢╡─╬─╝■<cFilename> ╓╨, ▓ó╖╡╗╪╧α╙ª╡─╬─╝■├√íú
  5493. ▓╬╩²:     
  5494.     <nRow1, nCol1>     ╓╕╢¿╡─╞┴─╗╟°╙≥╫≤╔╧╜╟╫°▒Ω;
  5495.     <nRow2, nCol2>     ╓╕╢¿╡─╞┴─╗╟°╙≥╙╥╧┬╜╟╫°▒Ω;
  5496.     <cFilename>         ╬─╝■├√, ┐╔┤°┬╖╛╢
  5497. ╖╡╗╪╓╡: ╧α╙ª╡─╬─╝■├√
  5498.     
  5499. ╙├╖¿▓╬╝√: @1642 [saveform](), @1634 [loadform](), @1637 [pcx](), @1632 [getrname]()
  5500.  
  5501. .1001
  5502. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5503. @10[┤░┐┌║»╩²╦≈╥²]
  5504.  
  5505. gotowindow()
  5506. ╙∩╖¿:     gotowindow (<nHandle>)
  5507. ╙├═╛:     ▓╗▒ú┤µ╡▒╟░┤░┐┌, ╫¬╡╜<nHandle> ╓╕╢¿╡─┤░┐┌
  5508. ▓╬╩²:     
  5509.     <nHandle>    ╓╕╢¿╡─┤░┐┌╛Σ▒·, ╙╔makewindow(), window() ╡╚╗±╡├
  5510. ╖╡╗╪╓╡: NIL
  5511.  
  5512. └²╫╙▓╬╝√: @1006 [shiftwindow]()
  5513.  
  5514. .2359
  5515. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5516. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  5517.  
  5518. hard_chdir()
  5519. ╙∩╖¿: hard_chdir (<cDirPath>)
  5520. ╙├═╛: ░╤╡▒╟░─┐┬╝╫¬╡╜╓╕╢¿╡─╟²╢»╞≈║═┬╖╛╢╓╨
  5521. ▓╬╩²:    
  5522.     <cDirPath>         ┬╖╛╢├√╫╓╖√┤«
  5523. ╖╡╗╪╓╡: │╔╣ª╖╡╗╪. T., ╖±╘≥╖╡╗╪. F.
  5524. └²╫╙:    ? hard_chdir ("c: \winbase")
  5525.  
  5526. .2208
  5527. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5528. @22[╫╓╖√┤«║»╩²╦≈╥²]
  5529.  
  5530. hardcr()
  5531. ╙∩╖¿:     hardcr (<cExp>)
  5532. ╙├═╛:     ╜½╫╓╖√┤«╗≥▒╕╫ó╬─╝■╓╨╦∙╙╨╚φ╗╪│╡(chr (141) ╗╗│╔╙▓╗╪
  5533. │╡chr (13)íú
  5534. ▓╬╩²: 
  5535.     <cExp>    ┤«▒Σ┴┐╡─├√│╞╗≥▒╕╫ó╫╓╢╬╡─├√│╞
  5536. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  5537. └²╫╙:    // ┤≥╙ímymem ╡──┌╚▌
  5538.      set printer on
  5539.     hardcr (mymem)
  5540.     
  5541. ▓╬╝√:     @2222 [memoedit](), @2230 [memotran]()
  5542.  
  5543. .2452
  5544. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5545. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  5546.  
  5547. header()
  5548. ╙∩╖¿:     header()
  5549. ╙├═╛:     ╝╞╦π╡▒╟░╩²╛▌┐Γ╬─╝■═╖╡─╫╓╜┌╩²íú
  5550. ▓╬╩²:     ╬▐
  5551. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  5552. └²╫╙:
  5553. /* ╧┬└²╝∞▓ΘA ┼╠╡─╩ú╙α┐╒╝Σ┴┐, ╚τ╨í╙┌─┐▒Ω╬─╝■│ñ╢╚, ╘≥▓╗
  5554. ┐╜▒┤íú*/
  5555.  if diskspace (1) < (recsize() *lastrec() +header() +1)
  5556.     cls
  5557.     ú└ 10, 10 "A ┼╠╡─╫╘╙╔┐╒╝Σ▓╗╣╗, ▓╗─▄┐╜▒┤"
  5558. else
  5559.     copy file klgz. dbf to A:
  5560. endif
  5561.  
  5562. ▓╬╝√:     @2474 [recsize](), @2318 [diskspace](), @2459 [lastrec]()    
  5563.  
  5564. .1919
  5565. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5566. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  5567.  
  5568. hsecond()
  5569. ╙∩╖¿: hsecond()
  5570. ╙├═╛: ╟≤▒╛╠∞╥╤┴≈╩┼╡─├δ╩²
  5571. ▓╬╩²: ╬▐
  5572. ╖╡╗╪╓╡: ├δ╩²
  5573. └²╫╙:? hsecond()
  5574.  
  5575. .2104
  5576. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5577. @21[╫¬╗╗║»╩²╦≈╥²]
  5578.  
  5579. i2bin()
  5580. ╙∩╖¿:     i2bin (<nExp>)
  5581. ╙├═╛:     ╜½╩²╫╓╓╡╫¬╗╗│╔16 ▒╚╠╪(2 ╫╓╜┌) ╖√║┼╒√╩²╕±╩╜╡─╫╓╖√
  5582. ┤«íú
  5583. ▓╬╩²:     
  5584.     <nExp>     ╩²╫╓╓╡, ▒φ┤∩╩╜╓╨╡─╨í╩²▓┐╖╓╢╝╜½▒╗╔ß╞·
  5585. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  5586. └²╫╙:     hand: =fopen ("my. prg")
  5587.     fwrite (hand, i2bin (26), 1) // ╧┬╥╗╕÷╨┤╡╜┤┼┼╠╡─╫╓╜┌╩╟1A
  5588.         
  5589. ▓╬╝√:     @2102 [bin2l](), @2101 [bin2i](), @2103 [bin2w](), @2105 [l2bin](), @2347 [fread]()
  5590.  
  5591. .2503
  5592. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5593. @25[├ⁿ┴ε╩²╦≈╥²]
  5594.  
  5595. if|iif()
  5596. ╙∩╖¿:     if|iif (<lCondition>, <exp1>, <exp2>)
  5597. ╙├═╛:     ╠ß╣⌐╥╗╓╓╖╜╖¿╥╘╤í╘±╩╣╙├┴╜╓╓┐╔─▄▒φ┤∩╩╜╡─
  5598. ╥╗╓╓
  5599. ▓╬╩²:     
  5600. <lCondition>    ▒╗╟≤╓╡╡─╠⌡╝■
  5601. <exp1>        ╚τ<lCondition> ╡─┬▀╝¡╓╡╬¬╒µ, ╘≥╩╣╙├<exp1> ▒φ┤∩╩╜
  5602. <exp2>        ╚τ<lCondition> ╡─┬▀╝¡╓╡╬¬╝┘, ╘≥╩╣╙├<exp2> ▒φ┤∩╩╜
  5603. ╖╡╗╪╓╡: <exp1> ╓╡╗≥<exp2> ╓╡
  5604. └²╫╙:     
  5605. temp: =-1
  5606. ? if (temp>0, temp, 0-temp) // ╖╡╗╪1
  5607.  
  5608. .1210
  5609. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5610. @12[▒¿▒φ╔Φ╝╞║»╩²╦≈╥²]
  5611.  
  5612. in
  5613. ╙∩╖¿:in( <cDesp> , [<nLen> ,<xInit>] )
  5614. ╙├═╛:╙├╙┌╘┌┤≥╙í╣²│╠╓╨╩╡╩▒╩Σ╚δ╫╓╖√┤«ú¿ ╙├╙┌▒¿▒φ
  5615. ╔Φ╝╞ú⌐
  5616. ▓╬╩²:
  5617.     <cDesp>    ╓╨╬─╠ß╩╛
  5618.     <nLen>    ╧▐╓╞╩Σ╚δ╡─╫╓╖√┤«│ñ╢╚
  5619.     <xInit>        ╩Σ╚δ╓╡╡─│⌡╓╡
  5620. ╖╡╗╪╓╡:
  5621. └²╫╙:
  5622. IN( "╟δ╩Σ╚δ▓┐├┼ú║"ú¼20ú¼SPACE(20) ) 
  5623.  
  5624. .2453
  5625. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5626. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  5627.  
  5628. indexext()
  5629. ╙∩╖¿:     indexext()
  5630. ╙├═╛:     ═¿╣²┼╨╢╧╡▒╟░┴¼╜╙╜°╡─╩²╛▌┐Γ╟²╢»╞≈╥╘╖╡╗╪
  5631. ╚▒╩í╡─╦≈╥²╬─╝■╡─└⌐╒╣├√íú
  5632. ▓╬╩²:     ╬▐
  5633. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  5634. ╦╡├≈:     │²╖╟─π┴¼╜╙╜°▒≡╡─╩²╛▌┐Γ╟²╢»╞≈, ╖±╘≥╖╡╗╪WINBASE ╚▒╩í
  5635. ╓╡"   .NTX"íú
  5636. └²╫╙:     if lower (indexext()) <>. "ntx"
  5637.         ? " ╥╤┴¼╜╙╜°▒≡╡─╩²╛▌┐Γ╟²╢»╞≈"
  5638.     else
  5639.         ? " ├╗┴¼╜╙╜°▒≡╡─╩²╛▌┐Γ╟²╢»╞≈"
  5640.     endif
  5641.     
  5642. ▓╬╝√:     @2429 [dbsetdriver]()        
  5643.  
  5644. .2455
  5645. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5646. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  5647.  
  5648. indexkey()
  5649. ╙∩╖¿:     indexkey (<nExp>)
  5650. ╙├═╛:     ╚╖╢¿╥╗╕÷╦≈╥²╬─╝■╡─╣╪╝ⁿ╫╓╜ß╣╣íú
  5651. ▓╬╩²:     
  5652. <nExp>     ╓╕╢¿╦≈╥²╬─╝■▒φ╓╨╦≈╥²╬─╝■╦│╨≥║┼, ╞Σ╓╨╦≈╥²╬─╝■
  5653. ▒φ╙╔╫ε╜ⁿ╥╗┤╬╓┤╨╨use ├ⁿ┴ε╗≥set index ├ⁿ┴ε╛÷╢¿íú
  5654. ╖╡╗╪╓╡: ╫╓╖√└α╨═, ╣╪╝ⁿ╫╓▒φ┤∩╩╜
  5655. ╦╡├≈:     indexkey() ╫▄╩╟╖╡╗╪╡▒╟░┐╪╓╞▒φ┤∩╩╜╡─╫╓╢╬íú
  5656. └²╫╙: use my index no, name, age
  5657.     ? indexkey (0) // ╖╡╗╪no
  5658.     ? indexkey (1) // ╖╡╗╪no
  5659.     ? indexkey (2) // ╖╡╗╪name
  5660.     ? indexkey (5) // ╖╡╗╪╥╗┐╒┤«
  5661.     
  5662. ▓╬╝√:     indextent(), @2456 [indexord](), @3139[set index], @3140[set order]    
  5663.  
  5664. .2456
  5665. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5666. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  5667.  
  5668. indexord()
  5669. ╙∩╖¿:     indexord()
  5670. ╙├═╛:     ╚╖╢¿╡▒╟░╦≈╥²╬─╝■▒φ╓╨╡─╓≈╦≈╥²╬─╝■íú╓≈╦≈╥²
  5671. ╬─╝■╩▄╫ε╜ⁿ╥╗┤╬╡─use ├ⁿ┴ε╗≥set index ├ⁿ┴ε┐╪╓╞íú
  5672. ▓╬╩²:     ╬▐
  5673. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  5674. ╦╡├≈:     indexord() ╫▄╩╟╖╡╗╪╡▒╟░╦≈╥²╬─╝■▒φ╡─╦≈╥²╬─╝■╡─╬╗╓├
  5675. ╨≥║┼íú╚τ╣√╖╡╗╪0, ╘≥▒φ├≈╡▒╟░├╗╙╨┤≥┐¬╦≈╥²╬─╝■íú
  5676. └²╫╙:     use my index no, name, age
  5677.     ? indexord() // ╖╡╗╪1
  5678.     set order to 3
  5679.     ? indexord() // ╖╡╗╪3    
  5680.  
  5681. ▓╬╝√:     indextent(), @2455 [indexkey](), @3139[set index], @3140[set order]
  5682.  
  5683. .2454
  5684. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5685. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  5686.  
  5687. indextext()
  5688. ╙∩╖¿:     indextext()
  5689. ╙├═╛:     ╚╖╢¿╩╟╖±╙╨╥╗╕÷▒╕╙├╡─╩²╛▌┐Γ╟²╢»│╠╨≥▒╗┴¼
  5690. ╜╙╜°╙ª╙├│╠╨≥╓╨íú
  5691. ▓╬╩²:     ╬▐
  5692. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  5693. ╦╡├≈:     winbase ╘╩╨φ░╤╥╗╕÷▒╕╙├╡─╩²╛▌┐Γ╟²╢»│╠╨≥┴¼╜╙╜°╙ª
  5694. ╙├│╠╨≥╓╨, ╒Γ╩╣╡├╙ª╙├│╠╨≥┐╔╥╘═╕├≈╡╪╩╣╙├▒╕╙├╬─
  5695. ╝■╕±╩╜íú
  5696. └²╫╙: if indextext() =". ndx"
  5697.         ? "dBASE ╟²╢»│╠╨≥┴¼╜╙╜°╙ª╙├│╠╨≥"
  5698.     else
  5699.         ? "dBASE ╟²╢»│╠╨≥├╗▒╗┴¼╜╙╜°╙ª╙├│╠╨≥"
  5700.     endif
  5701.     
  5702. ▓╬╝√: @2455 [indexkey](), @2456 [indexord]()
  5703.  
  5704. .1724
  5705. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5706. @17[╧╡═│║»╩²╦≈╥²]
  5707.  
  5708. initline()
  5709. ╙∩╖¿:     initline (<nNum>)
  5710. ╙├═╛:     ╔Φ╓├├┐╥╗╬─▒╛╨╨╡─╧≤╦╪╕▀╢╚
  5711. ▓╬╩²:     
  5712.     <nNum>     ╩²╫╓╓╡, ▒φ╩╛╧≤╦╪╕▀╢╚
  5713. ╖╡╗╪╓╡: NIl
  5714. └²╫╙:     initline (16) // ╔Φ╓├╬─▒╛╨╨╡─╧≤╦╪┐φ╢╚╬¬16
  5715.  
  5716. .2457
  5717. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5718. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  5719.  
  5720. initvars()
  5721. ╙∩╖¿: initvars()
  5722. ╙├═╛:     ┤┤╜¿╥╗╠╫╢╘╙ª╙┌╡▒╟░╩²╛▌┐Γ╓╨╡─╫╓╢╬╡─╣½╣▓
  5723. ─┌┤µ▒Σ┴┐, ▒Σ┴┐├√╬¬╫╓╢╬├√╟░╝╙╫╓╖√"M".
  5724. ▓╬╩²: ╬▐
  5725. ╖╡╗╪╓╡: nil
  5726. └²╫╙:     use test new        // ╝┘╔Φtest. dbf ║¼╫╓╢╬T1, T2
  5727.     initvars()
  5728.     equvars()
  5729.     ? mt1            // ╣█▓∞▒Σ┴┐
  5730.     mt1: ="aaaaaa"
  5731.     replvars()        // ┤·╠µ╡▒╟░╩²╛▌┐Γ╓╨╡─╫╓╢╬
  5732.     display
  5733.     freevars()
  5734.  
  5735. .1504
  5736. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5737. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  5738.  
  5739. inkey()
  5740. ╙∩╖¿:     inkey (<nExp>)
  5741. ╙├═╛:     ╚╖╢¿╝ⁿ┼╠╔╧▒╗╝ⁿ╚δ╡─╫╓╖√, ▓ó╜½╝ⁿ╚δ╡─╫╓╖√┤╙│¼
  5742. ╟░╝ⁿ╚δ╗║│σ╟°╓╨╔╛│²íúinkey() ║»╩²╥▓┐╔╜½│╠╨≥╡─╓┤╨╨╣╥
  5743. ╞≡╥╗╢╬╠╪╢¿╡─╩▒╝Σíú
  5744. ▓╬╩²: 
  5745. <nExp>    │╠╨≥╗╓╕┤╘╦╨╨╓«╟░╘▌═ú╡─├δ╩²íú╚⌠╬¬0, ▒φ╩╛│╠╨≥╜½
  5746. ▒ú│╓╘▌═ú╓▒╡╜╙╨╗≈╝ⁿ╖ó╔·╬¬╓╣íú
  5747. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  5748. ╦╡├≈:     inkey() ║»╩²╖╡╗╪╥╗╩²╫╓íú┤╦╩²╫╓╩╟╝ⁿ╚δ╡─╫╓╖√╡─inkey( )╓╡╗≥
  5749. ASCII ┬δ╓╡íú
  5750. └²╫╙:    ? inkey (0) // ╚τ░┤╧┬ESC ╝ⁿ, ╖╡╗╪27
  5751.     inkey (5) // ╤╙╩▒5 ├δ, ░┤╧┬╞Σ╦ⁿ╝ⁿ╜½┴ó╝┤╖╡╗╪
  5752.     
  5753. ▓╬╝√:     @1507 [lastkey](), @1526 [nextkey](), @3405[set key],
  5754.  @2205 [chr](), @1710 [delay](), @1521 [mousekey]()
  5755.  
  5756. .1306
  5757. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5758. @13[╗ß╗░║»╩²╦≈╥²]
  5759.  
  5760. inputbox()
  5761. ╙∩╖¿:     inputbox (<nMsg1>, <nMsg2>, <idType>, <xInitval>)
  5762. ╙├═╛:     ╘┌▓╗═¼╨╨╧╘╩╛╨┼╧ó▓ó╜╙╩▄╩Σ╚δ
  5763. ▓╬╩²:     
  5764.     <nMsg1>,<nMsg2>    ╧╘╩╛╨┼╧ó, ╫╓╖√┤«
  5765.     <xInitval>         ╬¬╩Σ╚δ│⌡╩╝╓╡
  5766. <idType>         ╬¬1 ╩▒╧╘╩╛╩Σ╚δ─┌╚▌, ╬¬2 ▓╗╧╘╩╛
  5767. ╖╡╗╪╓╡: ╩Σ╚δ╓╡
  5768.  
  5769. └²╫╙╝√ msgbox()
  5770.  
  5771. .2013
  5772. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5773. @20[╩²╤º║»╩²╦≈╥²]
  5774.  
  5775. int()
  5776. ╙∩╖¿:     int (<nExp>)
  5777. ╙├═╛:     ╔ß╞·╩²╤º▒φ┤∩╩╜╡─╨í╩²▓┐╖▌, ╖╡╗╪╥╗╒√╩²íú
  5778. ▓╬╩²:     
  5779.     <nExp>     ▒╗╟≤╓╡╡─╩²╤º▒φ┤∩╩╜
  5780. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  5781. └²╫╙:    ? int (8/3) // ╖╡╗╪2
  5782.     ? int (-8/3) // ╖╡╗╪-2
  5783.     
  5784. ▓╬╝√:     @2245 [str]()    
  5785.  
  5786. .2458
  5787. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5788. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  5789.  
  5790. isalias()
  5791. ╙∩╖¿: isalias (<aliasname>)
  5792. ╙├═╛: ┼╨╢╧aliasname ╩╟╖±╩╟▒≡├√
  5793. ▓╬╩²: 
  5794.     <aliasname>         ╩²╛▌┐Γ▒≡├√╡─╫╓╖√┤«
  5795. ╖╡╗╪╓╡: │╔╣ª╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.
  5796. └²╫╙:    use datafile alias tt
  5797.     ? closealias ("tt")
  5798.     ? closealias ("cc")
  5799.  
  5800. .2209
  5801. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5802. @22[╫╓╖√┤«║»╩²╦≈╥²]
  5803.  
  5804. isalpha()
  5805. ╙∩╖¿:     isalpha (<cExp>)
  5806. ╙├═╛:     ╚╖╢¿╫╓╖√┤«╓╨╡┌╥╗╕÷╫╓╖√╩╟╖±╬¬╫╓─╕íú
  5807. ▓╬╩²:     
  5808.     <cExp>    ╟≤╓╡╡─┤«
  5809. ╖╡╗╪╓╡: ┬▀╝¡└α╨═
  5810. └²╫╙:    
  5811. ? isalpha ("t123") // ╜ß╣√╬¬.T.
  5812. ? isalpha ("123a") // ╜ß╣√╬¬.F.
  5813.  
  5814. ▓╬╝√:     @2210 [isdigit](), @2211 [islower](), @2213 [isupper]()    
  5815.  
  5816. .1725
  5817. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5818. @17[╧╡═│║»╩²╦≈╥²]
  5819.  
  5820. iscolor()
  5821. ╙∩╖¿:     iscolor()
  5822. ╙├═╛:     ╚╖╢¿╝╞╦π╗·╩╟╖±┼Σ╙╨▓╩╔½╧╘╩╛╞≈
  5823. ▓╬╩²:     ╬▐
  5824. ╖╡╗╪╓╡: ┬▀╝¡└α╨═, ┼Σ╙╨▓╩╔½╧╘╩╛╞≈╘≥╖╡╗╪.T. ,╖±╘≥╖╡╗╪.F.
  5825.  
  5826. └²╫╙: // ╧┬└²╧╘╩╛╥╗╨⌐╧╡═│╨┼╧ó
  5827. function sysform (topr, topc, endr, myendc)
  5828. local curscreen, curcolor
  5829.     curoff()
  5830.     curscreen: =savescreen (topr, topc, endr, myendc)
  5831.     curcolor: =setcolor ("gr+/b", "w")
  5832.     ú└ topr, topc clear to endr, myendc
  5833.     ú└ topr+2, topc+3 say padc (" ╧╡═│╨┼╧ó", 34)
  5834.     ú└ topr+3, topc+3 say "DOS ░µ▒╛║┼: "+os()
  5835.     ú└ topr+4, topc+3 say "WINBASE ░µ▒╛║┼: "+version()
  5836.     ú└ topr+5, topc+3 say " ╧╘╩╛╞≈: "+iif (iscolor(), " ▓╩╧╘", " ╡Ñ╧╘")
  5837.     ú└ topr+6, topc+3 say " ╣ª─▄╝ⁿ╫ε┤≤╨≥║┼: "+str (fkmax())
  5838.     ú└ topr+7, topc+3 say " ╡▒╟░DOS ╣ñ╫≈╟°: "+d_path()
  5839.     ú└ topr+8, topc+3 say " ╧╘╩╛╞≈╫ε┤≤╨╨╩²: "+str (maxrow() +1)
  5840.     ú└ topr+9, topc+3 say " ╧╘╩╛╞≈╫ε┤≤┴╨╩²: "+str (maxcol() +1)
  5841.     inkey (0)
  5842.     setcolor (curcolor)
  5843.     ú└ topr, topc clear to endr, myendc
  5844.     restscreen (topr, topc, endr, myendc, curscreen)
  5845.     curon()
  5846. return nil
  5847.  
  5848. ▓╬╝√:     @1749 [setcolor](), @3017[set color]
  5849.  
  5850. .2210
  5851. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5852. @22[╫╓╖√┤«║»╩²╦≈╥²]
  5853.  
  5854. isdigit()
  5855. ╙∩╖¿:    isdigit (<cExp>)
  5856. ╙├═╛:     ╚╖╢¿╫╓╖√┤«╓╨╡┌╥╗╕÷╫╓╖√╩╟╖±╬¬╩²╫╓íú
  5857. ▓╬╩²:     
  5858.     <cExp>    ╟≤╓╡╡─┤«
  5859. ╖╡╗╪╓╡: ┬▀╝¡└α╨═ú¼╩╟╩²╫╓╖╡╗╪.T. , ╖±╘≥╖╡╗╪.F.
  5860. └²╫╙:    
  5861. ? isdigit ("t123") // ╜ß╣√╬¬.F.
  5862. ? isalpha ("123a") // ╜ß╣√╬¬.T.
  5863.  
  5864. ▓╬╝√:     @2209 [isalpha](), @2211 [islower](), @2213 [isupper]()
  5865.  
  5866. .2360
  5867. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5868. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  5869.  
  5870. isdir()
  5871. ╙∩╖¿: isdir (<cPathname>, <xCreatflag>)
  5872. ╙├═╛: ┼╨╢╧pathname ╩╟╖±╬¬┬╖╛╢íú
  5873. ▓╬╩²:    
  5874.     <cPathname>         ┬╖╛╢├√
  5875.     <xCreatflag>         ╬¬┐╒╩▒, ╘≥╩╘═╝┤┤╜¿┬╖╛╢cPathname
  5876. ╖╡╗╪╓╡: ╚⌠cPathname ╬¬┬╖╛╢╖╡╗╪.T., ┤┤╜¿┬╖╛╢│╔╣ª╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.
  5877. └²╫╙:? isdir ("mydir", 1)
  5878.  
  5879. .1920
  5880. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5881. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  5882.  
  5883. islastday()
  5884. ╙∩╖¿: islastday (<dDate>)
  5885. ╙├═╛: ╚╖╢¿┤½╡▌╣²└┤╡─╩²╛▌╩╟╖±╩╟╥╗╕÷╘┬╡─╫ε║≤╥╗
  5886. ╠∞
  5887. ▓╬╩²: 
  5888.     <dDate>    ╚╒╞┌╓╡
  5889. ╖╡╗╪╓╡: ╚τ╣√┤½╡▌╣²└┤╡─╚╒╞┌╩╟╥╗╕÷╘┬╡─╫ε║≤╥╗╠∞ú¼
  5890. ╘≥╖╡╗╪.T.ú╗╖±╘≥╖╡╗╪.F.
  5891. └²╫╙:? islastday()
  5892.  
  5893. .2361
  5894. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5895. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  5896.  
  5897. ismemo()
  5898. ╙∩╖¿: ismemo (<cFileName>)
  5899. ╙├═╛: ╚╖╢¿╥╗╕÷╩²╛▌┐Γ╩╟╖±░ⁿ║¼▒╕╫ó╫╓╢╬íú
  5900. ▓╬╩²: 
  5901.     <cFilenmae>        ┤°╙╨┐╔╤í└⌐╒╣├√╡─╩²╛▌┐Γ╬─╝■├√íú
  5902. ╖╡╗╪╓╡: ╩²╓╡, ║¼╥σ╚τ╧┬:
  5903.         0 -- ╬▐▒╕╫ó╫╓╢╬
  5904.         1 --╓┴╔┘╙╨╥╗╕÷▒╕╫ó╫╓╢╬▒╗╢¿╥σ
  5905.                -1 -- ▓╗╩╟DBF ╩²╛▌┐Γ╬─╝■, ╗≥╒▀╙÷╡╜╬─╝■┤φ╬≤
  5906. └²╫╙:? ismemo ("user. dbf")
  5907.  
  5908. .2211
  5909. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5910. @22[╫╓╖√┤«║»╩²╦≈╥²]
  5911.  
  5912. islower()
  5913. ╙∩╖¿:     islower (<cExp>)
  5914. ╙├═╛:     ╚╖╢¿╫╓╖√┤«╓╨╡┌╥╗╕÷╫╓╖√╩╟╖±╬¬╨í╨┤╫╓─╕íú
  5915. ▓╬╩²:     
  5916.     <cExp>     ╟≤╓╡╡─┤«íú
  5917. ╖╡╗╪╓╡: ┬▀╝¡└α╨═íú
  5918. └²╫╙:    
  5919. ? islower ("t123") // ╜ß╣√╬¬.T.
  5920. ? isalpha ("A123a") // ╜ß╣√╬¬.F.
  5921.  
  5922. ▓╬╝√:     @2209 [isalpha](), @2210 [isdigit](), @2213 [isupper]()
  5923.  
  5924. .2212
  5925. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5926. @22[╫╓╖√┤«║»╩²╦≈╥²]
  5927.  
  5928. isnumber()
  5929. ╙∩╖¿: isnumber (<cNumstr>)
  5930. ╙├═╛: ┼╨╢╧cNumstr ╫╓╖√┤«╩╟╖±╩╟╓╗╙╔╩²╫╓íó.íó+íó-, ╫Θ│╔íú
  5931. ▓╬╩²: 
  5932.     <cNumstr>    ┤²┼╨▒≡╫╓┤«íú
  5933. ╖╡╗╪╓╡: ╩╟╩²╫╓╫╓┤«╘≥╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.íú
  5934. └²╫╙:? isnumber ("-1234. 123")
  5935.     ? isnnumber ("abc")
  5936.  
  5937. isprinter()
  5938. ╙∩╖¿:     isprinter()
  5939. ╙├═╛:     ╝∞▓ΘLPT1 ┤≥╙í┐┌, ▓ó╚╖╢¿LPT1 ╩╟╖±╥╤╬¬╦═╡╜┤≥╙í╗·╡─╩Σ│÷
  5940. ╫≈║├┴╦╩²╛▌╜╙╩╒╫╝▒╕íú
  5941. ▓╬╩²:     ╬▐íú
  5942. ╖╡╗╪╓╡: ┬▀╝¡└α╨═íú
  5943. ╦╡├≈:     ╚τ┤≥╙í╗·╥╤╛¡┤≥┐¬▓ó╫≈║├┴╦┤≥╙í╫╝▒╕, ╘≥isprinter() ║»╩²╖╡
  5944. ╗╪.T.íú
  5945. └²╫╙:     if !isprinter() // ┤≥╙í╗·├╗╫╝▒╕║├
  5946.         ? " ╟δ┤≥┐¬┤≥╙í╗·▓ó╫≈║├┤≥╙í╫╝▒╕! "
  5947.         inkey (0)
  5948.     endif
  5949.         
  5950. ▓╬╝√:     @3022[set device], set print    
  5951.  
  5952. .1921
  5953. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5954. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  5955.  
  5956. istime()
  5957. ╙∩╖¿: istime (<cTime>)
  5958. ╙├═╛: ┼╨╢╧cTime ╩╟╖±╬¬╒²│ú╡─╩▒╝Σ┤«íú
  5959. ▓╬╩²: 
  5960.     <cTime>    ╩▒╝Σ╫╓╖√┤«íú
  5961. ╖╡╗╪╓╡: ╩╟╒²│ú╡─╩▒╝Σ╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.íú
  5962. └²╫╙:? istime ("10: 00: 00")        //╖╡╗╪.T.
  5963.  
  5964. .2213
  5965. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5966. @22[╫╓╖√┤«║»╩²╦≈╥²]
  5967.  
  5968. isupper()
  5969. ╙∩╖¿:     isupper (<cExp>)
  5970. ╙├═╛:     ╚╖╢¿╫╓╖√┤«╓╨╡┌╥╗╕÷╫╓╖√╩╟╖±╬¬┤≤╨┤╫╓─╕íú
  5971. ▓╬╩²:     
  5972.     <cExp>    ╟≤╓╡╡─┤«íú
  5973. ╖╡╗╪╓╡: ┬▀╝¡└α╨═,╩╟╫╓─╕╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.íú
  5974. └²╫╙:    
  5975. ? isupper ("t123") // ╜ß╣√╬¬.F.
  5976. ? isupper ("A123a") // ╜ß╣√╬¬.T.
  5977.  
  5978. ▓╬╝√:     @2209 [isalpha](), @2210 [isdigit](), @2211 [islower]()
  5979.     
  5980. .1727
  5981. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5982. @17[╧╡═│║»╩²╦≈╥²]
  5983.     
  5984. iswbsdos( )
  5985. ╙∩╖¿: iswbsdos()
  5986. ╙├═╛: ▓Γ╩╘╩╟╖±╩╟WBSDOS ║║╫╓╧╡═│íú
  5987. ▓╬╩²: ╬▐íú
  5988. ╖╡╗╪╓╡: ╩╟╘≥╖╡╗╪1, ╖±╘≥╖╡╗╪0
  5989.  
  5990. .1211
  5991. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  5992. @12[▒¿▒φ╔Φ╝╞║»╩²╦≈╥²]
  5993.  
  5994. itack
  5995. ╙∩╖¿: itack ( <Key>, <cDbfname>, <cNtcname> , <ncField> ,<nLen>)
  5996. ╙├═╛: ╘┌▒¿▒φ╔Φ╝╞╓╨░┤╣╪╝ⁿ╫╓▓Θ╒╥╝╟┬╝▓ó╖╡╗╪╓╕╢¿
  5997. ╫╓╢╬╡──┌╚▌íú
  5998. ▓╬╩²: 
  5999.     <Key>        ╣╪╝ⁿ╫╓íú
  6000.     <cDbfname>    ╩²╛▌┐Γ╬─╝■├√íú
  6001.     <cNtcname>    ╦≈╥²╦≈╥²╬─╝■├√íú
  6002.     <ncField>    ╫╓╢╬├√╗≥╫╓╢╬╨≥║┼íú 
  6003.     <nLen>    ╖╡╗╪╓╡│ñ╢╚íú
  6004. ╖╡╗╪╓╡: ╫╓╢╬─┌╚▌íú
  6005. └²╫╙: ITACK  ú¿"12345"ú¼"COUNTRY .DBF"ú¼"COUNTRY.NTX"ú¼3ú⌐
  6006. ▓╬╝√:@1205 [ctack](), @1222 [tack]()
  6007.  
  6008. .1505
  6009. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6010. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  6011.  
  6012. keybd()
  6013. ╙∩╖¿: keybd (<nKey>)
  6014. ╙├═╛: ╚í╝ⁿ┼╠╡─╫┤╠¼íú
  6015. ▓╬╩²: 
  6016.     <nKey>     ╩²╓╡, ╥¬╚í╡─╝ⁿ┼╠╫┤╠¼ú¼╛▀╠σ║¼╥σ╚τ╧┬
  6017.     1: Ins          2: CapsLock
  6018.     3: NumLock     4: Scroll Lock
  6019. ╖╡╗╪╓╡: ░┤╧┬╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.
  6020. ▓╬╝√:@1501 [capslock](), @1502 [capsloff](), @1527 [numlock](), @1528 [numloff](), @1531 [scrollock]( ), @1532 [scrolloff]()
  6021.  
  6022. .1506
  6023. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6024. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  6025.  
  6026. keybdbuf()
  6027. ╙∩╖¿: keybdbuf()
  6028. ╙├═╛: ╟σ╝ⁿ┼╠╗║│σ╟°íú
  6029. ▓╬╩²: ╬▐íú
  6030. ╖╡╗╪╓╡: ╝ⁿ┼╠╗║│σ╟°╓╨╡─╘¡╙╨─┌╚▌íú
  6031. ▓╬╝√:@3401[clear typeahead]
  6032.  
  6033. .2105
  6034. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6035. @21[╫¬╗╗║»╩²╦≈╥²]
  6036.  
  6037. l2bin()
  6038. ╙∩╖¿:     l2bin (<nExp>)
  6039. ╙├═╛:     ╩²╫╓╓╡<nExp> ╫¬╗╗│╔32 ▒╚╠╪(4 ╫╓╜┌) ╖√║┼╒√╩²╕±╩╜╡─╫╓╖√┤«íú
  6040. ▓╬╩²:     
  6041. <nExp>     ╩²╫╓╓╡, ▒φ┤∩╩╜╓╨╡─╨í╩²▓┐╖╓╢╝╜½▒╗╔ß╞·íú
  6042. ╖╡╗╪╓╡: ╫╓╖√└α╨═íú
  6043. └²╫╙:     hand: =fopen ("my. prg")
  6044.     fwrite (hand, i2bin (28772997619310), 6) 
  6045.     // ╜╙╫┼╨┤╡╜┤┼┼╠╡─6 ╕÷╫╓╜┌╩╟1A 2B 3C 4D 5E 6F
  6046.     
  6047. ▓╬╝√:     @2102 [bin2l](), @2101 [bin2i](), @2103 [bin2w](), 
  6048. @2104 [i2bin](), @2347 [fread]()
  6049.  
  6050. .1507
  6051. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6052. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  6053.  
  6054. .1922
  6055. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6056. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  6057.  
  6058. lastday()
  6059. ╙∩╖¿: lastday (<dDate>)
  6060. ╙├═╛: ╗±╚í╥╗╕÷╘┬╡─╫ε║≤╥╗╠∞╡─╩²╓╡
  6061. ▓╬╩²: 
  6062.     <dDate>     ┐╔╤í╡─╚╒╞┌╓╡íú
  6063. ╖╡╗╪╓╡: ╒√╩²
  6064. └²╫╙:? lastday (date())
  6065.  
  6066. .2362
  6067. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6068. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  6069.  
  6070. lastdrive()
  6071. ╙∩╖¿: lastdrive()
  6072. ╙├═╛: ╚í║╧╖¿╡─DOS ┤┼┼╠╟²╢»╞≈╡─╫ε╕▀╟²╢»╞≈╖√íú
  6073. ▓╬╩²: ╬▐íú
  6074. ╖╡╗╪╓╡: ╡Ñ╕÷┤≤╨┤╫╓╖√íú
  6075. └²╫╙:     diskdrive: ="F"
  6076.     if lastdrive() >diskdrive
  6077.         ? " ╟²╢»╞≈║┼╬▐╨º"
  6078.     endif
  6079.  
  6080. lastkey()
  6081. ╙∩╖¿:     lastkey()
  6082. ╙├═╛:     ╖╡╗╪╡╚┤²╞┌╝Σ╫ε║≤╥╗╕÷╩Σ╚δ╝ⁿ╡─ASCII┬δ╓╡íú
  6083. ▓╬╩²:     ╬▐íú
  6084. ╖╡╗╪╓╡: ╩²╫╓└α╨═íú
  6085. ╦╡├≈:     winbase.inc═╖╬─╝■╬╗╙┌INCLUDE ╫╙─┐┬╝╧┬, ╞Σ╓╨╙╨╥╗╨⌐╙├#define ╢¿╥σ╡─│ú╩², ╒Γ
  6086. ╤∙╙├╗º─▄░┤╥²╙├╝ⁿ├√ú¼╢°▓╗▒╪╝╟╥Σ╝ⁿ╡─ASCII ┬δ╓╡íú
  6087.     └²╚τ, IF LASTKEY() =K_ESC
  6088. └²╫╙:     if lastkey() = K_ESC // ╡╚┤²╞┌╝Σ╫ε║≤╥╗╕÷╩Σ╚δ╝ⁿ╬¬ESC ╘≥│╠╨≥═╦│÷
  6089.         ? " ╘┘╝√"
  6090.         quit
  6091.     endif
  6092.     
  6093. ▓╬╝√:     @1504 [inkey](), @1526 [nextkey](), @3405[set key], @2205 [chr](), @1710 [delay]()
  6094.  
  6095. .2459
  6096. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6097. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  6098.  
  6099. lastrec() |reccount()
  6100. ╙∩╖¿:     lastrec() |reccount()
  6101. ╙├═╛:     ╚╖╢¿╩²╛▌┐Γ╓╨╝╟┬╝╡─╫▄╩²─┐íú
  6102. ▓╬╩²:     ╬▐íú
  6103. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  6104. ╦╡├≈:     ╡▒╟░╣ñ╫≈╟°╓╨├╗╙╨┤≥┐¬╩²╛▌┐Γ, ╘≥lastrec() |reccount() ║»╩²╖╡╗╪0íúset filter ├ⁿ┴ε
  6105. ║═set deleted ├ⁿ┴ε╢╘lastrec() |reccount() ║»╩²▓╗╞≡╫≈╙├íú
  6106. └²╫╙:
  6107. /* ╧┬└²╝∞▓ΘA ┼╠╡─╩ú╙α┐╒╝Σ┴┐, ╚τ╨í╙┌─┐▒Ω╬─╝■│ñ╢╚, ╘≥▓╗
  6108. ┐╜▒┤*/
  6109.  if diskspace (1) < (recsize() *lastrec() +header() +1)
  6110.     cls
  6111.     ú└ 10, 10 "A ┼╠╡─╫╘╙╔┐╒╝Σ▓╗╣╗, ▓╗─▄┐╜▒┤"
  6112. else
  6113.     copy file klgz. dbf to A:
  6114. endif
  6115.  
  6116. ▓╬╝√:  @2474 [recsize]()    
  6117.  
  6118. .2214
  6119. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6120. @22[╫╓╖√┤«║»╩²╦≈╥²]
  6121.  
  6122. left()
  6123. ╙∩╖¿:     left (<cExp>, <nExp>)
  6124. ╙├═╛:  ┤╙╫╓╖√┤«(╘┤┤«) ╡─╫≤╢╦┐¬╩╝, ╠ß╚í╓╕╢¿│ñ╢╚╡─╥╗╫╙┤«íú
  6125. ▓╬╩²:  
  6126.     <cExp>    ╘┤┤«íú
  6127.     <nExp>    ╠ß╚í╡─╫╙┤«│ñ╢╚íú
  6128. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  6129. └²╫╙:    ? temp: =left ("123abc", 2) // ╜ß╣√╬¬"12"
  6130.     ? temp: =left ("123abc", 10) // ╜ß╣√╬¬"123abc"
  6131.     
  6132. ▓╬╝√:     @2242 [right](), @2249 [substr]()    
  6133.  
  6134. .2215
  6135. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6136. @22[╫╓╖√┤«║»╩²╦≈╥²]
  6137.  
  6138. len()
  6139. ╙∩╖¿:     len (<cExp>|<aTarget>)
  6140. ╙├═╛:     ╚╖╢¿╫╓╖√┤«╡─┤«│ñú¼╗≥╚╖╢¿╩²╫Θ╡─╘¬╦╪╕÷╩²íú
  6141. ▓╬╩²:     
  6142.     <cExp>    ╟≤╓╡╡─┤«íú
  6143.     <aTarget>    ╥¬╚╖╢¿╘¬╦╪╕÷╩²╡─╩²╫Θíú
  6144. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  6145. └²╫╙: 
  6146. temp: ="1234"
  6147. ? len (temp) // ╜ß╣√╬¬4
  6148. my_arr1: = {1, 2, 3, 4, 5, 6}
  6149. my_arr2: = {1, {1, 2}}
  6150. ? len (my_arr1) // ╜ß╣√╬¬6
  6151. ? len (my_arr2) // ╜ß╣√╬¬2
  6152.     
  6153. ▓╬╝√:     @2218 [ltrim](), @2243 [rtrim]()
  6154.  
  6155. .2014
  6156. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6157. @20[╩²╤º║»╩²╦≈╥²]
  6158.  
  6159. lennum()
  6160. ╙∩╖¿: lennum (<nNum>)
  6161. ╙├═╛: ╟≤╩²╓╡│ñ╢╚
  6162. ▓╬╩²: 
  6163.     <nNum>    ╩²╓╡▒Σ┴┐
  6164. ╖╡╗╪╓╡: ╖╡╗╪╩²╓╡nNum ╡─│ñ╢╚
  6165. └²╫╙:? lennum (3. 1415926)
  6166.  
  6167. .2216
  6168. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6169. @22[╫╓╖√┤«║»╩²╦≈╥²]
  6170.  
  6171. listtoa()
  6172. ╙∩╖¿: Listtoa (<cList>, <cDelim>)
  6173. ╙├═╛: ╜½║¼╙╨╖╓╕⌠╖√╡─╫╓╖√┤«╫¬╗╗│╔╫╓╖√╩²╫Θ
  6174. ▓╬╩²:    
  6175.     <cList>        ╫╓╖√┤«íú
  6176.     <Delim>    ╖╓╕⌠╖√íú
  6177. ╖╡╗╪╓╡: ╫¬╗╗│╔╡─╫╓╖√╩²╫Θ
  6178. └²╫╙: 
  6179. arr: =listtoa ("abc, def, gf", ", ")    //arr=={"abc", "def", "gf"}
  6180. ? arr [1]    //╖╡╗╪ú║abc
  6181.  
  6182. .1634
  6183. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6184. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  6185.  
  6186. loadform()
  6187. ╙∩╖¿:     loadform (<cFilename>)
  6188. ╙├═╛:     ┤╙╬─╝■╓╨╗╓╕┤╞┴─╗
  6189. ▓╬╩²:     
  6190.     <cFilename>        ┤µ╞┴╬─╝■├√, ┐╔┤°┬╖╛╢íú
  6191. ╖╡╗╪╓╡:
  6192. ╙├╖¿▓╬╝√: @1642 [saveform](),  @1605 [dispform](), @1632 [getrname]()
  6193.  
  6194. .1635
  6195. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6196. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  6197.  
  6198. loadpcx()
  6199. ╙∩╖¿: loadpcx (<nX1>, <nY1>, <nX2>, <nY2>, <cFilename>, <nMode>, <xPalflag>)
  6200. ╙├═╛:     ╧╘╩╛pcx ═╝╧≤
  6201. ▓╬╩²:
  6202.     <nX1,nY1>     ╧╘╩╛pcx ═╝╧≤╡─╫≤╔╧╜╟╧≤╦╪╫°▒Ωíú
  6203.     <nX2,nY2>     ╧╘╩╛pcx ═╝╧≤╡─╙╥╧┬╜╟╧≤╦╪╫°▒Ωíú
  6204.     <cFilename>     PCX ╬─╝■├√íú
  6205.     <nMode>     256 ╔½╡─╧╘╩╛─ú╩╜, ╚▒╩í╩╟0(320*200 ╖╓▒µ┬╩)
  6206. <xPalflag>    ╬¬16 ╔½╡≈╔½░σ▒Ω╓╛, ╚⌠╬¬┐╒╘≥╔Φ╓├│╔PCX╬─╝■╡─╡≈╔½░σ, ╖±╘≥
  6207. ▓╗┐╔╔Φ╓├╡≈╔½░σíú
  6208. ╖╡╗╪╓╡: ╬▐
  6209. └²╫╙: loadpcx (0, 0, 400, 600, "photo. pcx")
  6210.  
  6211. .2460
  6212. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6213. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  6214.  
  6215. lockfile()
  6216. ╙∩╖¿:     lockfile()
  6217. ╙├═╛:     ╦°╫í╡▒╟░╩²╛▌┐Γ, ╙├╙┌░┤╣▓╧φ╖╜╩╜┤≥┐¬╡─╩²╛▌┐Γíú
  6218.  
  6219. ▓╬╩²:     ╬▐íú
  6220. ╖╡╗╪╓╡: ┬▀╝¡└α╨═, │╔╣ª╖╡╗╪.T.
  6221. ╦╡├≈:     ╡▒╥¬╥╗┤╬╨▐╕─íó╘÷╝╙, ╔╛│²╡╚╢α╠⌡╝╟┬╝╩▒, ▒╪╨δ╩╣╙├╕├
  6222. ║»╩².
  6223. └²╫╙:     netuse ("my. dbf", A, "n")
  6224.     lockfile()
  6225.     replace all code with code+2
  6226.     unclock
  6227.     
  6228. ▓╬╝√:     @2461 [lockrec](),@3148[unlock], @2472 [netuse]()
  6229.     
  6230. .2461
  6231. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6232. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  6233.  
  6234. lockrec()
  6235. ╙∩╖¿:     lockrec()
  6236. ╙├═╛:     ╦°╫í╡▒╟░╝╟┬╝, ╙├╙┌░┤╣▓╧φ╖╜╩╜┤≥┐¬╡─╩²╛▌┐Γíú
  6237. ▓╬╩²:     ╬▐íú
  6238. ╖╡╗╪╓╡: ┬▀╝¡└α╨═, │╔╣ª╖╡╗╪.T.
  6239. ╦╡├≈:     ╡▒╥¬╢╘╡▒╟░╝╟┬╝╜°╨╨╨▐╕─íó╘÷╝╙íó╔╛│²╡╚▓┘╫≈╩▒, ▒╪
  6240. ╨δ╩╣╙├╕├║»╩²íú
  6241. └²╫╙: // ╕°╡┌10 ╠⌡╝╟┬╝┤≥╔╧╔╛│²▒Ω╝╟
  6242. netuse ("my. dbf", A, "n")
  6243. dbgoto (10)
  6244. lockrec()
  6245. dbdelete()    
  6246. unlock
  6247. ▓╬╝√:     @2460 [lockfile](), @2477 [rlock]() /lock(),@3148[unlock],@2472 [netuse]()
  6248.     
  6249. .2015
  6250. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6251. @20[╩²╤º║»╩²╦≈╥²]
  6252.  
  6253. log()
  6254. ╙∩╖¿:     log (<nExp>
  6255. ╙├═╛:     ╝╞╦π╩²╤º▒φ┤∩╩╜╡─╫╘╚╗╢╘╩²íú
  6256. ▓╬╩²: 
  6257.     <nExp>    ▒╗╟≤╓╡╡─╩²╤º▒φ┤∩╩╜íú
  6258. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  6259. └²╫╙:    ? log (8) // ╖╡╗╪2. 08
  6260.  
  6261. ▓╬╝√:     @3201[set decimals], @3203[set fixed], @2011 [exp]()    
  6262.  
  6263. .2016
  6264. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6265. @20[╩²╤º║»╩²╦≈╥²]
  6266.  
  6267. log10()
  6268. ╙∩╖¿: log10 (<nNum>)
  6269. ╙├═╛: ╟≤╥╘10 ╬¬╡╫╡─nNum ╢╘╩²╓╡
  6270. ▓╬╩²: 
  6271.     <nNum>     ╩²╓╡▒Σ┴┐íú
  6272. ╖╡╗╪╓╡: ╢╘╩²╓╡
  6273. └²╫╙: log10 (100)
  6274.  
  6275. .2504
  6276. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6277. @25[├ⁿ┴ε╩²╦≈╥²]
  6278.  
  6279. loop()
  6280. ╙∩╖¿: loop (<nNum>, <cFunc>)
  6281. ╙├═╛: ░╤╥╗╕÷║»╩²╓┤╨╨╢α┤╬
  6282. ▓╬╩²:    
  6283.     <nNum>     ╓┤╨╨┤╬╩²íú
  6284.     <cFunc>     ╥¬╓┤╨╨╡─║»╩²├√íú
  6285. ╖╡╗╪╓╡: ╬▐
  6286. └²╫╙: loop (3, "tone (660, 2) ")
  6287.  
  6288. .2217
  6289. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6290. @22[╫╓╖√┤«║»╩²╦≈╥²]
  6291.  
  6292. lower()
  6293. ╙∩╖¿:     lower (<cExp>)
  6294. ╙├═╛:  ░╤╫╓╖√┤«╓╨╡─╫╓─╕╫¬╗╗╬¬╨í╨┤╫╓─╕íú
  6295. ▓╬╩²:     
  6296.     <cExp>     ╥¬╫¬╗╗╡─╫╓╖√┤«
  6297. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  6298. └²╫╙:    ? lower ("ABCD") // ╧╘╩╛╬¬abcd
  6299.  
  6300. ▓╬╝√: @2253 [upper]()
  6301.  
  6302. .2218
  6303. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6304. @22[╫╓╖√┤«║»╩²╦≈╥²]
  6305.  
  6306. ltrim()
  6307. ╙∩╖¿:     ltrim (<cExp>)
  6308. ╙├═╛:     ╚Ñ╡⌠╫╓╖√┤«╓╨╡─╟░╡╝┐╒╕±íú
  6309. ▓╬╩²:
  6310.     <cExp>    ╥¬╚Ñ╡⌠╟░╡╝┐╒╕±╡─╫╓╖√┤«
  6311. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  6312. └²╫╙: 
  6313. temp: =" 1234 "
  6314. ? temp // ╖╡╗╪10
  6315. temp: +ltrim (temp)
  6316. ? temp // ╖╡╗╪7
  6317.  
  6318. ▓╬╝√:     @2251 [trim](), @2201 [alltrim]()
  6319.  
  6320. .1923
  6321. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6322. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  6323.  
  6324. lupdate()
  6325. ╙∩╖¿:     lupdate()
  6326. ╙├═╛:     ╝∞▓Θ╩²╛▌┐Γ╬─╝■═╖▓ó╢┴╚í╫ε╜ⁿ╥╗┤╬╕ⁿ╨┬╡─╚╒
  6327. ╞┌íú
  6328. ▓╬╩²:     ╬▐
  6329. ╖╡╗╪╓╡: ╚╒╞┌└α╨═
  6330. ╦╡├≈:     ╚τ╣√╙╨╥╗╕÷┤≥┐¬╡─╩²╛▌┐Γ, ╘≥╕├║»╩²╖╡╗╪╬─╝■═╖
  6331. ╨┼╧ó╓╨╓╕│÷╡─╚╒╞┌íú╚τ╣√├╗╙╨╩²╛▌┐Γ▒╗┤≥┐¬, ╘≥╕├║»╩²
  6332. ╖╡╗╪╥╗╕÷┐╒╚╒╞┌íú
  6333. └²╫╙:     use my
  6334.     ? lupdate() // ╖╡╗╪└α╦╞02/02/94
  6335.  
  6336. .1508
  6337. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6338. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  6339.  
  6340. m_hide()
  6341. ╙∩╖¿: m_hide()
  6342. ╙├═╛: ╥■▓╪╩≤▒Ω
  6343. ▓╬╩²: ╬▐
  6344. ╖╡╗╪╓╡: NIL
  6345. └²╫╙: 
  6346. procedure mouseway()
  6347. local temp
  6348.     ú└ 24, 10 say " ╔Φ╓├╩≤▒Ω╖╜╩╜: 0- ╥■▓╪, ╞Σ╦ⁿ- ╧╘╩╛" get temp
  6349.     if temp==0
  6350.         m_hide() // ╥■▓╪╩≤▒Ω
  6351.     else
  6352.         m_show() // ╧╘╩╛╩≤▒Ω
  6353.     endif
  6354. return
  6355.  
  6356. ▓╬╝√:     @1515 [m_show](), @1517 [mouse]()
  6357.     
  6358. .1509
  6359. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6360. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  6361.  
  6362. m_inbox()
  6363. ╙∩╖¿:     m_inbox (<nX1>, <nY1>, <nX2>, <nY2>, <nX>, <nY>)
  6364. ╙├═╛:     ┼╨╢╧<nX, nY> ╩╟╖±╘┌<nX1, nY1, nX2, nY2> ╢¿╥σ╡─╛╪╨╬╓«╓╨
  6365. ▓╬╩²:     
  6366.     <nX, nY>         ╕°╢¿╧≤╦╪╡π╫°▒Ω
  6367.     <nX1,nY1>         ╦∙╕°╖╢╬º╫≤╔╧╜╟╧≤╦╪╡π╫°▒Ω
  6368.     <nX2,nY2>         ╦∙╕°╖╢╬º╙╥╧┬╜╟╧≤╦╪╡π╫°▒Ω
  6369. ╖╡╗╪╓╡: ╒√╩², │╔╣ª╖╡╗╪1, ╖±╘≥╖╡╗╪0
  6370. └²╫╙: m_inbox (100, 100, 300, 300, 120, 234)    //╖╡╗╪1
  6371.     
  6372. ▓╬╝√: @1516 [m_where](), @1518 [mousebox](), @1520 [mousein]()
  6373.  
  6374. .1510
  6375. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6376. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  6377.  
  6378. m_init()
  6379. ╙∩╖¿: m_init()
  6380. ╙├═╛: │⌡╩╝╗»╩≤▒Ω
  6381. ▓╬╩²: ╬▐
  6382. ╖╡╗╪╓╡: 0 ╗≥1, │╔╣ª╖╡╗╪1, ╖±╘≥╬¬0
  6383. └²╫╙: 
  6384. procedure testmouse()
  6385.     if m_init() ==0 // │⌡╩╝╗»╩≤▒Ω╩º░▄
  6386.         ? " ▒╛└²╨Φ╥¬╩≤▒Ω, ╟δ╧╚╟²╢»╩≤▒Ω! "
  6387.         ? " ░┤╚╬╥╗╝ⁿ═╦│÷"
  6388.         quit
  6389.     endif
  6390. return
  6391.  
  6392. ▓╬╝√:     @1514 [m_reset]()
  6393.  
  6394. .1511
  6395. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6396. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  6397.  
  6398. m_move()
  6399. ╙∩╖¿:     m_move (<nX>, <nY>)
  6400. ╙├═╛:     ╥╞╢»╩≤▒Ω╡╜╧≤╦╪╡π
  6401. ▓╬╩²:     
  6402.     <nX, nY>    ╧≤╦╪╡π╫°▒Ω
  6403. ╖╡╗╪╓╡: ╬▐
  6404.  
  6405. └²╫╙▓╬╝√: @1516 [m_where]()
  6406.  
  6407. .1512
  6408. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6409. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  6410.  
  6411. m_press()
  6412. ╙∩╖¿: m_press (<idBotton>)
  6413. ╙├═╛: ▓Γ╩╘╩≤▒Ω░┤┼Ñ╩╟╖±░┤╧┬
  6414. ▓╬╩²:     
  6415.     <idBotton>    ╬¬0 ▓Γ╩╘╫≤▒▀░┤┼Ñú¼╬¬1 ▓Γ╩╘╙╥▒▀░┤┼Ñ
  6416. ╖╡╗╪╓╡: ╒√╩², ░┤╧┬╖╡╗╪1, ╖±╘≥╖╡╗╪0
  6417. └²╫╙:
  6418. #include "winbase.inc"
  6419.  
  6420. PROCEDURE MAIN (arv1, arv2)
  6421. local temp, sign, k, p, r, r1, c, c1, left, right
  6422.     windowstart()    
  6423.     testmouse() // ▓╬╝√m_init()
  6424.     mybotton()
  6425.     makebotton (3, 34, " ╩≤▒Ω▓Γ╩╘│╠╨≥", 1, 1)
  6426.     makebotton (24, 56, " ═╦│÷", 2, 1)
  6427.     makebotton (20, 25, " ╣╪▒╒╩≤▒Ω", 3, 1)
  6428.     makebotton (20, 40, " ░┤Enter ╝ⁿ╧╘╩╛╩≤▒Ω", 4, 1)
  6429.     left: =right: =0
  6430.     sign: =k: =p: =1
  6431.     do while (inkey() <>27). and. (sign==1)
  6432.         if (mousein (24, 56, 25, 60)). and. (m_press (0) ==1. or.;
  6433.                  m_press (1) ==1)
  6434.             sign: =0 
  6435.         /* ╚τ╩≤▒Ω╘┌░┤┼Ñ" ═╦│÷" ╔╧, ╟╥╫≤░┤┼Ñ╗≥╙╥░┤┼Ñ▒╗░┤╧┬*/
  6436.         endif
  6437.         if mousein (20, 25, 21, 33). and. (m_press (0) ==1. or.;
  6438.                  m_press (1) ==1)
  6439.             mouse (0) 
  6440.             /* ╚τ╩≤▒Ω╘┌░┤┼Ñ" ╣╪▒╒╩≤▒Ω" ╔╧, ╟╥╫≤░┤┼Ñ╗≥╙╥░┤┼Ñ▒╗░┤
  6441. ╧┬, ╘≥╣╪▒╒╩≤▒Ω*/
  6442.         endif 
  6443.         if inkey() ==13 // ╚τEnter ▒╗░┤╧┬
  6444.             mouse (1) // ╧╘╩╛╩≤▒Ω
  6445.         endif
  6446.         if mousein (3, 34, 4, 46). and. (m_press (0) ==1. or. ú╗                m_press (1) ==1)
  6447.             k: = (k+1)% 16 
  6448.                 /* ╚τ╩≤▒Ω╘┌░┤┼Ñ" ╩≤▒Ω▓Γ╩╘│╠╨≥" ╔╧, 
  6449.         ╟╥╫≤░┤┼Ñ╗≥ ╙╥░┤┼Ñ▒╗░┤╧┬*/
  6450.             makebotton (3, 34, " ╩≤▒Ω▓Γ╩╘│╠╨≥", k, 1)
  6451.             mybotton()
  6452.         endif
  6453.         if mousein (20, 40, 21, 57). and. (m_press (0) ==1. or. ú╗                m_press (1) ==1)
  6454.             p: = (p+1)% 16 
  6455.             /* ╚τ╩≤▒Ω╘┌░┤┼Ñ" ░┤Enter ╝ⁿ╧╘╩╛╩≤▒Ω" ╔╧,                 ╟╥╫≤░┤┼Ñ╗≥╙╥░┤┼Ñ
  6456. ▒╗░┤╧┬*/
  6457.             makebotton (20, 40, " ░┤Enter ╝ⁿ╧╘╩╛╩≤▒Ω", p, 1)
  6458.         endif
  6459.         r: =int (mouserow() /2) 
  6460.         // ╖╡╗╪╩≤▒Ω╦∙╘┌╡▒╟░╡─╨╨╩²▒╗2 │²╚í╒√╡─╜ß╣√
  6461.         r1: =mouserow()% 2 
  6462.         // ╖╡╗╪╩≤▒Ω╦∙╘┌╡▒╟░╡─╨╨╩²▒╗2 │²╡─╙α╩²
  6463.         c: =int ( (mousecol() -10) /6)
  6464.          //mousecol(), ╖╡╗╪╩≤▒Ω╦∙╘┌╡▒╟░╡─┴╨╩²
  6465.         c1: = (mousecol() -10)% 6
  6466.         if r1==0. and. r>=3. and. r<=7. and. c>=0. and. c<=9;
  6467.             . and. c1<=4. and. c1>=0
  6468.             if m_press (0) ==1 // ╫≤░┤┼Ñ▒╗╤╣╧┬
  6469.                 left: =1
  6470.                 makebotton (2*r, 10+6*c, space (1) +;
  6471.                     " ╫≤"+space (1), 7, 2)
  6472.             endif
  6473.             if (left==1). and. (m_rele (0) ==1) // ╫≤░┤┼Ñ▒╗╩═╖┼
  6474.                 makebotton (2*r, 10+6*c, space (1) +;
  6475.                     " ╫≤"+space (1), 7, 1)
  6476.                 left: =0
  6477.             endif
  6478.             if m_press (1) ==1 // ╙╥░┤┼Ñ▒╗╤╣╧┬
  6479.                 right: =1
  6480.                 makebotton (2*r, 10+6*c, space (1) +;
  6481.                     "╙╥"+space (1), 7, 2)
  6482.             endif
  6483.             if (right==1). and. (m_rele (1) ==1) // ╙╥░┤┼Ñ▒╗╩═╖┼
  6484.                 makebotton (2*r, 10+6*c, space (1);     
  6485.                         +"╙╥"+space (1), 7, 1)
  6486.                 right: =0
  6487.             endif
  6488.         endif
  6489.     enddo
  6490.     windowexit()
  6491. RETURN
  6492. function mybotton()
  6493. local i, j
  6494.  
  6495. for i=0 to 9
  6496.     for j=3 to 7
  6497.     makebotton (2*j, 10+6*i, " ", 7, 1)
  6498.     next 
  6499. next 
  6500. return nil    
  6501.     
  6502. ▓╬╝√:     @1002 [makebotton](), @1513 [m_rele](), @1520 [mousein](), @1518 [mousebox](),
  6503.     @1523 [mouserow](), @1519 [mousecol](), @1517 [mouse]()
  6504.  
  6505. .1513
  6506. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6507. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  6508.  
  6509. m_rele()
  6510. ╙∩╖¿: m_rele (<nBotton>)
  6511. ╙├═╛: ▓Γ╩╘╩≤▒Ω░┤┼Ñ╩╟╖±╩═╖┼
  6512. ▓╬╩²:     
  6513.     <nBotton>    ╬¬0╩▒▓Γ╩╘╫≤▒▀░┤┼Ñú¼╬¬1▓Γ╩╘╙╥▒▀░┤┼Ñ
  6514. ╖╡╗╪╓╡: ╒√╩², ╩═╖┼╖╡╗╪1, ╖±╘≥╖╡╗╪0
  6515. └²╫╙: 
  6516. if m_rele (0) =1
  6517.     ? " ╫≤▒▀░┤┼Ñ╥╤╩═╖┼"
  6518. else
  6519.     ? " ╫≤▒▀░┤┼Ñ├╗▒╗╩═╖┼"
  6520. endif
  6521.     
  6522. ▓╬╝√: @1512 [m_press](), @1518 [mousebox]()
  6523.  
  6524. .1514
  6525. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6526. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  6527.  
  6528. m_reset()
  6529. ╙∩╖¿: m_reset()
  6530. ╙├═╛: ╓╪╓├╩≤▒Ω
  6531. ▓╬╩²: ╬▐
  6532. ╖╡╗╪╓╡: 0, -1, │╔╣ª╖╡╗╪-1, ╖±╘≥╬¬0
  6533. └²╫╙: 
  6534. procedure mousereset()
  6535. if m_reset() ==0
  6536.     ú└24, 10 say " ╓╪╓├╩≤▒Ω╩º░▄"
  6537.     ú└24, 10 say " ░┤╚╬╥╗╝ⁿ╝╠╨°"
  6538.     inkey (0)
  6539. endif
  6540. return
  6541.     
  6542. ▓╬╝√: @1510 [m_init]()
  6543.     
  6544. .1515
  6545. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6546. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  6547.  
  6548. m_show()
  6549. ╙∩╖¿: m_show()
  6550. ╙├═╛: ╧╘╩╛╩≤▒Ω
  6551. ▓╬╩²: ╬▐
  6552. ╖╡╗╪╓╡: NIL
  6553.  
  6554. └²╫╙▓╬╝√: @1508 [m_hide](), @1517 [mouse]()
  6555.  
  6556. .1516
  6557. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6558. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  6559.  
  6560. m_where()
  6561. ╙∩╖¿: m_where ( ú└ <nX>,  ú└ <nY>)
  6562. ╙├═╛: ╚í╡▒╟░╩≤▒Ω╬╗╓├╡╜<nX, nY> ╓╨
  6563. ▓╬╩²: 
  6564.     <nX, nY>     ╖╡╗╪╩≤▒Ω╬╗╓├╡─╧≤╦╪╡π╫°▒Ω, ╥╘╡╪╓╖╖╜╩╜┤½╚δ
  6565. ╖╡╗╪╓╡: ╒√╩²
  6566. └²╫╙:
  6567. #include "winbase.inc"
  6568. procedure main (var1, var2)
  6569. local x, y, sign
  6570. windowstart()
  6571. testmouse() // ▓╬╝√: @1510 [m_init]()
  6572. makebotton (2, 30, " ╩≤▒Ω▓Γ╩╘, ░┤ESC ╗≥╧╞╢»╩≤▒Ω═╦│÷", 2, 1)
  6573. g_rect (2, 100, 100, 600, 400) // ╗¡╥╗╛╪╨╬╖╜┐≥
  6574. m_move (350, 250) // ╥╞╢»╩≤▒Ω╡╜╧≤╦╪╡π(350, 250)
  6575. sign: =mousekey() // ═¼╩▒▓Γ╩╘╩≤▒Ω║═╝ⁿ┼╠╖╡╗╪╓╡
  6576. do while sign<>27// ▓Γ╩╘ESC ╝ⁿ╩╟╖±▒╗░┤╧┬
  6577.     sign: =mousekey()
  6578.     m_where (ú└x, ú└y) // ╖╡╗╪╡▒╟░╩≤▒Ω╬╗╓├╡╜(x, y) ╓╨
  6579.     ú└ 24, 10 say " ╩≤▒Ω╬╗╓├: "+str (x) +": "+str (y) // ╩Σ│÷╡▒╟░╩≤▒Ω╬╗╓├
  6580.     if m_inbox (100, 100, 600, 400, x, y) ==1 // ╩≤▒Ω╘┌(100, 100, 600, 400) ╖╢╬º─┌
  6581.         drawline (350, 250, x, y, 1) // ┤╙(350, 250) ╗¡╥╗└╢╔½╓▒╧▀╡╜╡▒╟░
  6582.     endif // ╩≤▒Ω╬╗╓├
  6583.     if (sign==901). or. (sign==902) // ╚τ╩≤▒Ω╫≤░┤┼Ñ╗≥╙╥░┤┼Ñ▒╗░┤╧┬
  6584.         quit // ╘≥═╦│÷
  6585.     endif
  6586. enddo
  6587. windowexit()
  6588. return
  6589.     
  6590. ▓╬╝√: @1511 [m_move](), @1509 [m_inbox](), @1521 [mousekey]()        
  6591.  
  6592. .1002
  6593. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6594. @10[┤░┐┌║»╩²╦≈╥²]
  6595.  
  6596. makebotton()
  6597. ╙∩╖¿:     makebotton (<nRow>, <nCol>, <cTitle>, <nColor>, <idType>)
  6598. ╙├═╛:     ╘┌┤░┐┌╓╨┤┤╜¿░┤┼Ñ
  6599. ▓╬╩²:     
  6600.     <row, nCol>     ░┤┼Ñ╬╗╓├(╧α╢╘╙┌┤░┐┌)
  6601.     <cTitle>     ░┤┼Ñ▒Ω╠Γ, ╫╓╖√┤«
  6602.     <nColor>     ░┤┼Ñ╤╒╔½, ┐╔╬¬0--15
  6603.     <idType>     ░┤┼Ñ└α╨═, ┐╔╬¬1--4
  6604. ╖╡╗╪╓╡: NIL
  6605. └²╫╙:    
  6606. #include "winbase.inc"
  6607. procedure example14()
  6608. local i
  6609. windowstart()
  6610. makewindow (5, 10, 20, 70, "Winbase", 1, 3, 4) // ╗¡╥╗┤░┐┌
  6611. for i=1 to 4 // ╗¡╦─╕÷▓╗═¼└α╨═, ▓╗═¼╤╒╔½░┤┼Ñ
  6612.     makebotton (2*i-1, 1, str (i, 1, 0) +" ╨═░┤┼Ñ", i, i)
  6613. next i
  6614. windowexit()
  6615. return
  6616.  
  6617. ▓╬╝√:     @1003 [makewindow](), @1309 [msgbox](), @1306 [inputbox]()
  6618.  
  6619. .1307
  6620. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6621. @13[╗ß╗░║»╩²╦≈╥²]
  6622.  
  6623. makedlg()
  6624. ╙∩╖¿:    makedlg (<nHandle>, <cTitle>)
  6625. ╙├═╛:    ╝ñ╗ε╛Σ▒·╬¬<nHandle> ╡─╦∙╙╨└α╨═╢╘╗░┐≥
  6626. ▓╬╩²:    
  6627.     <nHandle>    ╢╘╗░┐≥╛Σ▒·
  6628.     <cTitle>    ╢╘╗░┐≥▒Ω╠Γ
  6629. ╖╡╗╪╓╡:│╔╣ª╘≥╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.
  6630. └²╫╙:    ▓╬╝√: @1312 [setdlg] └α
  6631.  
  6632. .1402
  6633. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6634. @14[▓╦╡Ñ║»╩²╦≈╥²]
  6635.  
  6636. makemenu()
  6637. ╙∩╖¿: makemenu (<aMenuarr>, <cMenufunc>, <nRow>, <nCol1>, <nCol2>,;
  6638.             <exist>, <nOldpos>, <nNewpos>)
  6639. ╙├═╛: ┤┤╜¿▓ó╝ñ╗ε▓╦╡Ñ
  6640. ▓╬╩²:
  6641.     <aMenuarr>         ▓╦╡Ñ╩²╫Θ, ═¿╣²menuset ║»╩²╔Φ╓├
  6642.     <cMenufunc>         ▓╦╡Ñ╣ª─▄║»╩²
  6643.     <nRow>         ▓╦╡Ñ╦∙╘┌╨╨
  6644.     <nCol1>         ▓╦╡Ñ╞≡╩╝┴╨
  6645.     <nCol2>         ▓╦╡Ñ╜ß╩°┴╨
  6646.     <exist>             ═╦│÷▓╦╡Ñ╩▒╩╟╖±╧√│²╢Ñ╨╨▓╦╡Ñ╡─▒Ω╓╛
  6647. <nOldpos,nNewpos>     ╝ñ╗ε▓╦╡Ñ╩▒, ╜½╢Ñ╨╨▓╦╡Ñ╙╔╛╔╬╗╓├╥╞╡╜╨┬╬╗╓├
  6648. ╖╡╗╪╓╡: ▓╦╡Ñ╛Σ▒·
  6649. └²╫╙:
  6650. #include "winbase.inc"    // ▒╪╨δ░ⁿ└¿╕├╬─╝■
  6651. // ╚½╛╓▒Σ┴┐╦╡├≈
  6652. memvar marr, menu_arr
  6653. PROCEDURE MAIN (arv1, arv2)
  6654. private marr: = { {1, 0, 0, " ╟░╛░╔½"}, {2, 0, 0, " ▒│╛░╔½"},;
  6655.          {3, 0, 0, " ┴┴╠⌡╟░╛░╔½"}, {4, 0, 0, " ┴┴╠⌡▒│╛░╔½"},;
  6656.          {1, 1, 0, " ║∞", 4}, {1, 2, 0, " ╗╞", 14},;
  6657.          {1, 3, 0, " ║┌", 0}, {1, 4, 0, " └╝", 1},;
  6658.          {2, 1, 0, " ┴┴░╫", 15}, {2, 2, 0, " ╔ε║∞", 12},;
  6659.          {2, 3, 0, " ╗╥", 7}, {2, 4, 0, " ╟α", 11},;
  6660.          {3, 1, 0, " ╗╞", 14}, {3, 2, 0, " ║∞", 4},;
  6661.          {3, 3, 0, " ║┌", 0}, {3, 4, 0, " └╝", 1},;
  6662.          {4, 1, 0, " ┴┴└╝", 9}, {4, 2, 0, " ╗╞", 14},;
  6663.          {4, 3, 0, " ╔ε╗╥", 8}, {4, 4, 0, " ┬╠", 2},;
  6664.          {5, 0, 0, " ╡≈╒√", 0}, {5, 1, 0, " ╘÷╝╙╥╗╠⌡", 1},;
  6665.          {6, 0, 0, " ═╦│÷", 0}}
  6666. private    menu_arr: = { }, i
  6667.  
  6668.     windowstart()    //WinBase │⌡╩╝╗»
  6669.     setcancel (.T.)
  6670.     for i=1 to 23
  6671.         menuset (menu_arr, marr [i, 1], marr [i, 2], marr [i, 3],;
  6672.              marr [i, 4], MU_NORMAL)
  6673.     next
  6674.     makemenu (menu_arr, "menufunc", 5, 5, 75, 1)
  6675.     windowexit()    //Winbase ═╦│÷
  6676. RETURN
  6677.  
  6678. function menufunc (m_bar, m_item, m_sub)
  6679. private fc: =1, bc: =1, bar_fc: =1, bar_bc: =1
  6680.  
  6681.     msgshow (" ╦∙╤í▓╦╡Ñ╧ε", {" ╢Ñ└╕="+str (m_bar, 6), " ╠⌡─┐="+;
  6682.         str (m_item, 6), " ╫╙└╕="+str (m_sub, 6)}, {" ╚╖╢¿"}, 1)
  6683.     menugetc (ú└fc, ú└bc, ú└bar_fc, ú└bar_bc)
  6684.     do case
  6685.         case m_bar==1
  6686.             msgbox (" ▓╦╡Ñ╟░╛░╔½", str (fc, 2) +" => "+;
  6687.             str (marr [m_bar*4+m_item, 5], 2), 1)
  6688.             menusetc (marr [m_bar*4+m_item, 5])
  6689.         case m_bar==2
  6690.             msgbox (" ▓╦╡Ñ▒│╛░╔½", str (bc, 2) +" => "+;
  6691.                 str (marr [m_bar*4+m_item, 5], 2), 1)
  6692.             menusetc (, marr [m_bar*4+m_item, 5])
  6693.         case m_bar==3
  6694.             msgbox (" ▓╦╡Ñ┴┴╠⌡╟░╛░╔½", str (bar_fc, 2) +;
  6695.                 " => "+str (marr [m_bar*4+m_item, 5], 2), 1)
  6696.             menusetc (,, marr [m_bar*4+m_item, 5])
  6697.         case m_bar==4
  6698.             msgbox (" ▓╦╡Ñ┴┴╠⌡▒│╛░╔½", str (bar_bc, 2) +;
  6699.                 " => "+str (marr [m_bar*4+m_item, 5], 2), 1)
  6700.             menusetc (,,, marr [m_bar*4+m_item, 5])
  6701.         case m_bar==5
  6702.             if m_item==1
  6703.                 menuins (menu_arr, 5, 2, 0, " ╔╛│²╥╗╠⌡")
  6704.             else
  6705.                 menudel (menu_arr, 5, 2, 0)
  6706.             endif
  6707.         case m_bar==6
  6708.             mskeyb (K_ESC)
  6709.     endcase
  6710. return nil
  6711.  
  6712. .1003
  6713. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6714. @10[┤░┐┌║»╩²╦≈╥²]
  6715.  
  6716. makewindow()
  6717. ╙∩╖¿:     makewindow (<nRow1>, <nCol1>, <nRow2>, <nCol2>, <nTitle>,;
  6718.              <nAttr1>, <nAttr2>, <nType>)
  6719. ╙├═╛:     ┤┤╜¿┤░┐┌, ▓ó╖╡╗╪┤┤╜¿╡─┤░┐┌╛Σ▒·
  6720. ▓╬╩²:     
  6721.     <nRow1, nCol1>     ╬¬┤░┐┌╫≤╔╧╜╟╨╨┴╨╫°▒Ω
  6722.     <nRow2, nCol2>     ╬¬┤░┐┌╙╥╧┬╜╟╨╨┴╨╫°▒Ω
  6723.     <nTitle>         ┤░┐┌▒Ω╠Γ, ╥╗╫╓╖√┤«
  6724.     <nAttr1>         ▒Ω╠Γ╤╒╔½┐╔╬¬1-15
  6725. <nAttr2>         ┤░┐┌▒│╛░╔½, ┐╔╬¬1-15, ╬¬╢╘╙ª╡─╤╒╔½▒Ω║┼
  6726.     <nType>         ┤░┐┌└α╨═, ┐╔╬¬1-4
  6727. ╖╡╗╪╓╡: ┤┤╜¿╡─┤░┐┌╛Σ▒·
  6728. └²╫╙:// ┤╦└²╝≥╡Ñ╡╪╘┌╞┴─╗╔╧├Φ╩÷┴╦WINBASE ╡─╦─╓╓┤░┐┌└α╨═
  6729.  #include "winbase.inc"
  6730. procedure example3()
  6731. local i: =1
  6732. windowstart() // │⌡╩╝╗»Winbase
  6733. for i=1 to 4
  6734.     makewindow (10, 10, 20, 70, " ╗╢╙¡╩╣╙├WINBASE", 1, 3, i)
  6735.              // ╗¡i └α╨═┤░┐┌
  6736.     inkey (5) // ╤╙╩▒5 ├δ╓╙
  6737.     removewindow() // ╣╪▒╒╕├┤░┐┌
  6738. next
  6739. windowexit() // ═╦│÷Winbase
  6740. return
  6741.     
  6742. ▓╬╝√:    @1005 [removewindow](), @1006 [shiftwindow](), @1008 [winclear]()
  6743.     
  6744. .1636
  6745. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6746. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  6747.  
  6748. mappal16()
  6749. ╙∩╖¿:     mappal16 ( [xFlag])
  6750. ╙├═╛:     ╔Φ╓├╡≈╔½░σ╬¬▒Ω╫╝16 ╔½
  6751. ▓╬╩²:     
  6752. xFlag         ╬¬┐╒╩▒╘≥╬¬▒Ω╫╝16 ╔½, ╖±╘≥╬¬└α╦╞Windows ╡─16 ╔½╡≈╔½░σ
  6753. ╖╡╗╪╓╡: NIL
  6754. └²╫╙: mappal16()
  6755.  
  6756. .2017
  6757. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6758. @20[╩²╤º║»╩²╦≈╥²]
  6759.  
  6760. max()
  6761. ╙∩╖¿:     max (<nExp1>, <nExp2>)
  6762. ╙├═╛:     ╢╘┴╜╩²╤º▒φ┤∩╩╜╟≤╓╡▓ó╚í╜╧┤≤╒▀íú
  6763. ▓╬╩²:     
  6764.     <nExp1>, <nExp2>     ╥¬▒╚╜╧┤≤╨í╡─╩²╤º▒φ┤∩╩╜
  6765. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  6766. └²╫╙:    ? max (90, 100) // ╖╡╗╪100
  6767.     ? max (-90, -100) // ╖╡╗╪-90    
  6768.     
  6769. ▓╬╝√: @2018 [min]()
  6770.  
  6771. .1728
  6772. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6773. @17[╧╡═│║»╩²╦≈╥²]
  6774.  
  6775. maxcol()
  6776. ╙∩╖¿: maxcol()
  6777. ╙├═╛: ╚╖╢¿╝╞╦π╗·╡─╝α╩╙╞≈─▄╧╘╩╛╡─╫ε┤≤╫╓╖√┴╨╩²íú
  6778. ▓╬╩²: ╬▐
  6779. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  6780. ╦╡├≈: maxcol() ║»╩²╗ß╫╘╢»╕─▒Σ╥╘╖┤╙ªSETMODE() ║»╩²╡─╔Φ╓├íú
  6781.  
  6782. └²╫╙▓╬╝√: @1725 [iscolor](), @1729 [maxrow]()
  6783.  
  6784. .1729
  6785. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6786. @17[╧╡═│║»╩²╦≈╥²]
  6787.  
  6788. maxrow()
  6789. ╙∩╖¿: maxrow()
  6790. ╙├═╛: ╚╖╢¿╝╞╦π╗·╡─╝α╩╙╞≈─▄╧╘╩╛╡─╫ε┤≤╨╨╩²íú
  6791. ▓╬╩²: ╬▐
  6792. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  6793. ╦╡├≈: maxrow() ║»╩²╗ß╫╘╢»╕─▒Σ╥╘╖┤╙ªSETMODE() ║»╩²╡─╔Φ╓├íú
  6794.  
  6795. └²╫╙▓╬╝√: @1725 [iscolor](), @1728 [maxcol]()
  6796.  
  6797. .2219
  6798. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6799. @22[╫╓╖√┤«║»╩²╦≈╥²]
  6800.  
  6801. memoat()
  6802. ╙∩╖¿: memoat (<cStr>, <cSearstr>, <nLength>, <nTabsize>,;
  6803.          <lWrap>, <xCaseflag>)
  6804. ╙├═╛: ╘┌╫╓╖√┤«cStr ╓╨▓Θ╒╥cSearstr
  6805. ▓╬╩²: 
  6806.     <cStr>         ┤²▓Θ╒╥╡─╫╓┤«
  6807.     <cSearstr>     ▓Θ╒╥╙├╡─╫╓┤«
  6808.     <nLenth>     ├┐╨╨╕±╩╜╗»┐φ╢╚
  6809.     <nTabsize>     TAB ╕±╡─┐φ╢╚, ╚▒╩í╓╡╬¬4
  6810. <lWrap>     ┐╪╓╞╘╩╨φ╗≥╜√╓╣┤╩╛φ╣÷╡─┬▀╝¡▒φ┤∩╩╜, ╬¬╒µ╩▒╘╩╨φíú╡▒
  6811. ╜√╓╣┤╩╛φ╣÷╩▒╘≥╜½╖╧╞·╫╘│¼│÷╨╨│ñ╡╜╗╪│╡╖√╝Σ
  6812. ╡──┌╚▌íú
  6813. <xCaseflag>     ╬¬┐╒╩▒, ╘≥░┤cSearstr ╡─╘¡╤∙▓Θ╒╥, ╖±╘≥▓╗┬█┤≤╨í╨┤╜°╨╨▓Θ╒╥íú
  6814. ╖╡╗╪╓╡: newstr ╘┌str ╓╨╩╫╧╚│÷╧╓╡─╨╨║┼
  6815. └²╫╙: str: ="aaa aa"+chr (13) +chr (10) +"bbbbbbbbb"+chr (13) +chr (10) +;
  6816.     "cccccc"+chr (13) +chr (10) +"ddd dd ddd"+chr (13) +chr (10) +"55";
  6817.  
  6818.     str1: =memorat (str, "Bb", 5, 4,.F., 1)
  6819.     ? str1
  6820.  
  6821. .2220
  6822. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6823. @22[╫╓╖√┤«║»╩²╦≈╥²]
  6824.  
  6825. memocount()
  6826. ╙∩╖¿: memocount (<cStr>, <cNewstr>, <nLength>, <nTabsize>,;
  6827.              <lWrap>, <xCaseflag>)
  6828. ╙├═╛: ═│╝╞newstr ╘┌╓╨│÷╧╓╡─╨╨╩²
  6829. ▓╬╩²:     
  6830.     <cStr>         ┤²═│╝╞╚í╫╓┤«
  6831.     <cNewstr>     ═│╝╞╙├╡─╫╓┤«
  6832.     <nLenth>     ├┐╨╨╕±╩╜╗»┐φ╢╚
  6833.     <nTabsize>     TAB ╕±╡─┐φ╢╚, ╚▒╩í╓╡╬¬4
  6834. <lWrap>     ┐╪╓╞╘╩╨φ╗≥╜√╓╣┤╩╛φ╣÷╡─┬▀╝¡▒φ┤∩╩╜, ╬¬╒µ╩▒╘╩╨φíú╡▒
  6835. ╜√╓╣┤╩╛φ╣÷╩▒╘≥╜½╖╧╞·╫╘│¼│÷╨╨│ñ╡╜╗╪│╡╖√╝Σ
  6836. ╡──┌╚▌íú
  6837. <xCaseflag>     ╬¬┐╒╩▒, ╘≥░┤cNewstr ╡─╘¡╤∙▓Θ╒╥, ╖±╘≥▓╗┬█┤≤╨í╨┤╜°╨╨▓Θ╒╥íú
  6838. ╖╡╗╪╓╡:
  6839. └²╫╙: str: ="aaa aa"+chr (13) +chr (10) +"bbbbbbbbb"+chr (13) +chr (10) +;
  6840.     "cccccc"+chr (13) +chr (10) +"ddd dd ddd"+chr (13) +chr (10) +"55";
  6841.     str1: =memocount (str, "Bbb", 5, 4,.F., 1)
  6842.     ? str1
  6843.  
  6844. .2221
  6845. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6846. @22[╫╓╖√┤«║»╩²╦≈╥²]
  6847.  
  6848. memodel()
  6849. ╙∩╖¿: memodel (<cStr>, <nLinenum>, <nEndline>, <nLenth>,;
  6850.          <nTabsize>, <lWrap>)
  6851. ╙├═╛: ╔╛│²╫╓╖√┤«cStr ╡─╡┌nLinenum ╡╜nEndline ╨╨╡──┌╚▌
  6852. ▓╬╩²:     
  6853.     <cStr>         ┤²╔╛╫╓┤«
  6854.     <nLineum>     ┐¬╩╝╨╨
  6855.     <nEndline>     ╜ß╩°╨╨(┐╔╥╘╬¬┐╒)
  6856.     <nLenth>    ├┐╨╨╕±╩╜╗»┐φ╢╚
  6857.     <nTabsize>     TAB ╕±╡─┐φ╢╚, ╚▒╩í╓╡╬¬4
  6858. <lWrap>     ┐╪╓╞╘╩╨φ╗≥╜√╓╣┤╩╛φ╣÷╡─┬▀╝¡▒φ┤∩╩╜, ╬¬╒µ╩▒╘╩╨φíú╡▒
  6859. ╜√╓╣┤╩╛φ╣÷╩▒╘≥╜½╖╧╞·╫╘│¼│÷╨╨│ñ╡╜╗╪│╡╖√╝Σ
  6860. ╡──┌╚▌íú
  6861. ╖╡╗╪╓╡: ╔╛│²║≤╡─╫╓┤«
  6862. └²╫╙: str: ="aaa aa"+chr (13) +chr (10) +"bbbbbbbbb"+chr (13) +chr (10) +;
  6863.     "cccccc"+chr (13) +chr (10) +"ddd dd ddd"+chr (13) +chr (10) +"55";
  6864.     str1: =memodel (str, 2, 4, 5, 4,.F.)
  6865.     ? str1
  6866.  
  6867. .2222
  6868. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6869. @22[╫╓╖√┤«║»╩²╦≈╥²]
  6870.  
  6871. memoedit()
  6872. ╙∩╖¿: memoedit (<cString>, [<nRowtop>], [<nColtop>],;
  6873.      [<nRowbot>], [<nColbot>], [<iEditmode>],;
  6874.      [<cUDFcontrol>], [<nLinelength>],[<nTabsize>], ;
  6875.     [<nBufferrow>], [<nBuffercol>],[<nWindowrow>], [<nWindowcol>])
  6876. ╙├═╛: ╢╘╫╓╖√┤«╗≥╒▀▒╕╫ó╫╓╢╬╜°╨╨╡»│÷╩╜▒α╝¡íú
  6877. ▓╬╩²:
  6878.     <cString>         ╤í╘±▒α╝¡╡─╫╓╖√┤«╗≥╒▀▒╕╫ó╫╓╢╬íú
  6879.  <nRowtop,nColtop>    ▒α╝¡╡─╔╧▒▀╜τ╨╨,  ╫≤▒▀╜τ┴╨, ╚▒╩í╩╣╙├╚½╞┴─╗▒α╝¡íú
  6880. <nRowbot,nColbot>    ▒α╝¡╡─╧┬▒▀╜τ╨╨, ╙╥▒▀╜τ┴╨, ╚▒╩í╩╣╙├╚½╞┴─╗▒α╝¡íú
  6881.  [<iEditmode>]     ╛÷╢¿memoedit() ║»╩²╩╟╖±╜°╨╨╧╘╩╛╗≥▒α╝¡╡─┬▀╝¡▒φ┤∩╩╜íú╚⌠[<iEditmode>] ╓╡
  6882. ╬¬.T., ╘≥╘╩╨φ╕├║»╩²╢╘┤«╜°╨╨╨▐╕─, ╖±╘≥memoedit() ║»╩²░┤╓╗╢┴╖╜╩╜
  6883. ╓┤╨╨íú
  6884.  [<cUDFcontrol>]     ╙├╗º╫╘╢¿╥σ║»╩², ╚τ╓╕╢¿, ╘≥▓┘╫≈╒▀├┐╥╗┤╬╗≈╝ⁿ╢╝╦═╚δ
  6885. ╕├▓╬╩²╓╕╢¿╡─╙├╗º╫╘╢¿╥σ║»╩²╟≤╓╡íú
  6886.     [<nLinelength>]    ╚╖╢¿▒α╝¡╨╨│ñ╡─╩²╫╓▒φ┤∩╩╜íú
  6887.  [<nTabsize>]         ╥╗╕÷╩²╫╓▒φ┤∩╩╜, ╓╕╢¿╠µ┤·tab ╝ⁿ╡─┐╒╕±╩²─┐, ╚▒╩í╬¬4íú
  6888.  [<nBufferrow>], [<nBuffercol>] ╖╓▒≡╬¬▒╕╫ó╫╓╢╬╓╨╣Γ▒Ω╡─│⌡╩╝╨╨┴╨╬╗╓├, ╚▒╩í╢╝╬¬
  6889. 1íú
  6890. [<nWindowrow>], [<nWindowcol>] ╖╓▒≡╬¬memoedit() ║╨╓╨│⌡╩╝╨╨┴╨╬╗╓├, ╫°▒Ω╧╡╥╘memoedit() ║╨╡─╫≤╔╧╜╟╬¬
  6891. ╫°▒Ω╘¡╡πíú
  6892. ╖╡╗╪╓╡: ╫╓╖√└α╨═, ╚τ╣√╝ⁿ╚δESC ╓╒╓╣▒α╝¡, ╘≥memoedit() ║»╩²╡─╖╡╗╪╓╡╜½
  6893.  ╬¬<cString> ▓╬╩²╡─╓╡; ╖±╘≥, ╜½╖╡╗╪▒╗▒α╝¡╡─┤«íú
  6894. └²╫╙:// ╥╗╕÷┤°╙╨╙├╗º╫╘╢¿╥σ║»╩²╡─╝≥╡Ñ▒α╝¡╞≈
  6895.  makewindow (4, 1, 23, 76, " ▒α╝¡╞≈", 1, 2, 1)
  6896. udf_var: =setudf: =0
  6897. mem_var: =memoread ("c: \winbase\readme.Txt")
  6898. mem_var: =memoedit (mem_var, 5, 2, 22, 75,.T., "my_udf")
  6899. function my_udf (mode, line, col)
  6900. private stroke
  6901. udf_val: =0
  6902. stroke: =lastkey()
  6903.     do case
  6904.         case mode=0
  6905.             ú└ 24, 45 say " ╨╨: "+trim (str (line, If (line<100, 2, 4), 0))
  6906.             ú└ 24, 57 say " ┴╨: "+trim (str (col, 2, 0)
  6907.             if stroke==-6
  6908.                 udf_val: =23
  6909.             endif
  6910.         case mode=3
  6911.             if setudf=0
  6912.                 readinsert (.F.)
  6913.                 udf_val: =0
  6914.             endif
  6915.     endcase
  6916. return udf_val
  6917. ▓╬╝√:    @2208 [hardcr](), @2224 [memoline](), @2226 [memoread](), 
  6918. @2230 [memotran](), @2231 [memowrite](), @2233 [mlcount]()
  6919.  
  6920. .2223
  6921. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6922. @22[╫╓╖√┤«║»╩²╦≈╥²]
  6923.  
  6924. memoins()
  6925. ╙∩╖¿: memoins (<cStr>, <nLinenum>, <cNewstr>, <nLength>,;
  6926.          <nTabsize>, <lWrap>)
  6927. ╙├═╛: ╘┌╫╓╖√┤«cStr ╡─╡┌nLinenum ╨╨▓σ╨┬╫╓╖√┤«cNewstr.
  6928. ▓╬╩²:     
  6929.     <cStr>         ┤²▓σ╚δ╫╓┤«
  6930.     <nLinenum>     ┐¬╩╝╨╨
  6931.     <cNewstr>     ▓σ╚δ╡─╫╓┤«
  6932.     <nLength>     ├┐╨╨╕±╩╜╗»┐φ╢╚
  6933.     <nTabsize>     TAB ╕±╡─┐φ╢╚, ╚▒╩í╓╡╬¬4
  6934. <lWrap>     ┐╪╓╞╘╩╨φ╗≥╜√╓╣┤╩╛φ╣÷╡─┬▀╝¡▒φ┤∩╩╜, ╬¬╒µ╩▒╘╩╨φíú╡▒
  6935. ╜√╓╣┤╩╛φ╣÷╩▒╘≥╜½╖╧╞·╫╘│¼│÷╨╨│ñ╡╜╗╪│╡╖√╝Σ
  6936. ╡──┌╚▌íúlWrap ╢╘cNewstr ╬▐╨ºíú
  6937. ╖╡╗╪╓╡: ▓σ╚δ║≤╡─╫╓┤«
  6938. └²╫╙: str: ="aaa aa"+chr (13) +chr (10) +"bbbbbbbbb"+chr (13) +chr (10) +;
  6939.     "cccccc"+chr (13) +chr (10) +"ddd dd ddd"+chr (13) +chr (10) +"55";
  6940.     str1: =memoins (str, 2, "new string", 5, 4,.F.)
  6941.     ? str1
  6942.  
  6943. .2224
  6944. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6945. @22[╫╓╖√┤«║»╩²╦≈╥²]
  6946.  
  6947. memoline()
  6948. ╙∩╖¿:     memoline (<cString>, [<nLinelength>], [<nLinenumber>], [<nTabsize>],;
  6949.      [<lWrap>]
  6950. ╙├═╛:     ╠ß╚í╗≥╕±╩╜╗»▒╕╫ó╬─╝■╓╨╡─╬─▒╛╨╨╗≥╫╓╖√┤«íú
  6951. ▓╬╩²:     
  6952.     <cString>         ╙├└┤╧╘╩╛╡─╫╓╖√╫╓╢╬, ┤«, ▒╕╫ó╫╓╢╬íú
  6953.      [<nLinelength>]     ╧╘╩╛╡─╨╨┐φíú
  6954.      [<nLinenumber>]     ┤«╗≥╒▀╠ß╚í╡─╬─▒╛╨╨╡─╨╨║┼íú
  6955.      [<nTabsize>]         └⌐╒╣TAB ╝ⁿ╡─┐╒╕±╩²─┐íú
  6956.  [<lWrap>]         ┐╪╓╞╘╩╨φ╗≥╜√╓╣┤╩╛φ╣÷╡─┬▀╝¡▒φ┤∩╩╜íú┬▀╝¡▒φ┤∩
  6957. ╩╜╓╡╬¬╒µ, ╘╩╨φ╛φ╛φ╣÷; ╖±╘≥╜√╓╣┤╩╛φ╣÷íú
  6958. ╖╡╗╪╓╡: ╫╓╖√└α╨═┤╩
  6959. ╦╡├≈:     ╚τ─│╨╨╡─│ñ╢╚╨í╙┌memoline() ║»╩²╓╕╢¿╡─┐φ╢╚, ▓╗╫π▓┐╖▌═¿
  6960. ╣²╠φ╝╙╬▓▓┐┐╒╕±▓╣╞δíú╚τ╨╨║┼│¼╣²╖╢╬º, ╘≥╖╡╗╪╥╗╕÷
  6961. ┐╒┤«íú
  6962. └²╫╙:
  6963. // ╧┬└²╜½╩Σ│÷readme. txt ╡──┌╚▌
  6964. no_line: =mlcount ("c: \winbase\readme. txt", 65) // ╗±╡├readme. txt ╡─┴╨╩²
  6965. for i=1 to no_line // ╨╨┐φ╬¬65
  6966.     said: =memoline ("c: \winbase\readme. txt", 65, i) // ╗±╡├╡┌i ┴╨─┌╚▌
  6967.     ú└ row() +1, 10 say said
  6968. next
  6969.     
  6970. ▓╬╝√: @2208 [hardcr](), @2224 [memoline](), @2222 [memoedit](),
  6971.  @2233 [mlcount]()    
  6972.     
  6973. .2462
  6974. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6975. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  6976.  
  6977. memopack()
  6978. ╙∩╖¿: memopack (<aDbfList>)
  6979. ╙├═╛: ┤╙DBT ╬─╝■╔╛│²╬┤╩╣╙├╡─▒╕╫ó╩²╛▌
  6980. ▓╬╩²: 
  6981.     <aDbfList>     ╥¬╤╣╦⌡╡─╩²╛▌┐Γ├√╩²╫Θ, ▓╗░ⁿ║¼└⌐╒╣├√
  6982. ╖╡╗╪╓╡: ╚τ╣√╦∙╙╨╬─╝■▒╗│╔╣ª╡╪╤╣╦⌡╘≥╖╡╗╪┐╒┤«, ╖±╘≥, ╖╡
  6983. ╗╪░ⁿ║¼├Φ╩÷╨╘┤φ╬≤║┼║═╧α╣╪╬─╝■├√╡─┤«íú
  6984. └²╫╙:
  6985. filelist [1] = 'customer'
  6986. filelist [2] ='orders'
  6987. filelist [3] ='invoice'
  6988. ? memopack (filelist)
  6989.  
  6990. .2226
  6991. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  6992. @22[╫╓╖√┤«║»╩²╦≈╥²]
  6993.  
  6994. memoread()
  6995. ╙∩╖¿:     memoread (<cFile>)
  6996. ╙├═╛:     ┤╙┤┼┼╠╓╨╢┴╚í╥╗╓╕╢¿╡─ASCII ╬─╝■íú
  6997. ▓╬╩²:     
  6998.     <cFile>        ╢┴╚í╡─ASCII ╬─╝■├√
  6999. ╖╡╗╪╓╡: ╫╓╖√└α╨═, ▒╗╢┴╚í╡─╬─╝■│ñ╢╚▒╪╨δ╨í╙┌64K, ╖±╘≥╢α
  7000. │÷▓┐╖▌╜½▒╗╔╛│²íú╚τ╒╥▓╗╡╜╥¬╢┴╚í╡─╬─╝■, ╘≥╖╡╗╪╥╗┐╒
  7001. ┤«íú
  7002. └²╫╙: mem_var: =memoread ("as. prg")
  7003.  
  7004. ▓╬╝√: @2222 [memoedit](), @2231 [memowrite]()
  7005.     
  7006. .2225
  7007. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7008. @22[╫╓╖√┤«║»╩²╦≈╥²]
  7009.  
  7010. memorat()
  7011. ╙∩╖¿: memorat (<cStr>, <cSearstr>, <nLength>, <nTabsize>,;
  7012.          <lWrap>, <xCaseflag>)
  7013. ╙├═╛: ╘┌╫╓╖√┤«cStr ╓╨▓Θ╒╥cSearstr
  7014. ▓╬╩²:     <cStr>         ┤²▓Θ╒╥╡─╫╓┤«
  7015.     <cSearstr>     ▓Θ╒╥╙├╡─╫╓┤«
  7016.     <nlength>     ├┐╨╨╕±╩╜╗»┐φ╢╚
  7017.     <nTabsize>     TAB ╕±╡─┐φ╢╚, ╚▒╩í╓╡╬¬4
  7018. <lWrap>    ┐╪╓╞╘╩╨φ╗≥╜√╓╣┤╩╛φ╣÷╡─┬▀╝¡▒φ┤∩╩╜, ╬¬╒µ╩▒╘╩╨φíú╡▒
  7019. ╜√╓╣┤╩╛φ╣÷╩▒╘≥╜½╖╧╞·╫╘│¼│÷╨╨│ñ╡╜╗╪│╡╖√╝Σ
  7020. ╡──┌╚▌íú
  7021. <xCaseflag>     ╬¬┐╒╩▒, ╘≥░┤newstrr ╡─╘¡╤∙▓Θ╒╥, ╖±╘≥▓╗┬█┤≤╨í╨┤╜°╨╨▓Θ╒╥íú
  7022. ╖╡╗╪╓╡: ╖╡╗╪newstr │÷╧╓╡─╫ε─⌐╥╗╨╨íú
  7023. └²╫╙: str: ="aaa aa"+chr (13) +chr (10) +"bbbbbbbbb"+chr (13) +chr (10) +;
  7024.     "cccccc"+chr (13) +chr (10) +"ddd dd ddd"+chr (13) +chr (10) +"55";
  7025.     str1: =memorat (str, "Bb", 5, 4,.F., 1)
  7026.     ? str1
  7027.  
  7028. .2227
  7029. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7030. @22[╫╓╖√┤«║»╩²╦≈╥²]
  7031.  
  7032. memorepl()
  7033. ╙∩╖¿: memorepl (<cStr>, <nLinenum>, <nEndline>, <cNewstr>,;
  7034.              <nLength>, <nTabsize>, <lWrap>)
  7035. ╙├═╛: ╜½╫╓╖√┤«str ╡─╡┌linenum ╨╨╡╜endline ╨╨╡─╫╓╖√┤«╙├newstr ╠µ╗╗
  7036. ▓╬╩²:    <cStr>         ┤²╠µ╗╗╡─╫╓┤«
  7037.     <cNewstr>     ╠µ╗╗╙├╡─╫╓┤«
  7038.     <nLinenum>     ┐¬╩╝╨╨
  7039.     <nEndline>     ╜ß╩°╨╨(┐╔╥╘╬¬┐╒)
  7040.     <nLength>     ├┐╨╨╕±╩╜╗»┐φ╢╚
  7041.     <nTabsize>     TAB ╕±╡─┐φ╢╚, ╚▒╩í╓╡╬¬4
  7042. <lWrap>     ┐╪╓╞╘╩╨φ╗≥╜√╓╣┤╩╛φ╣÷╡─┬▀╝¡▒φ┤∩╩╜, ╬¬╒µ╩▒╘╩╨φíú╡▒
  7043. ╜√╓╣┤╩╛φ╣÷╩▒╘≥╜½╖╧╞·╫╘│¼│÷╨╨│ñ╡╜╗╪│╡╖√╝Σ
  7044. ╡──┌╚▌íú
  7045. ╖╡╗╪╓╡: ╠µ╗╗║≤╡─╫╓┤«
  7046. └²╫╙: str: ="aaa aa"+chr (13) +chr (10) +"bbbbbbbbb"+chr (13) +chr (10) +;
  7047.     "cccccc"+chr (13) +chr (10) +"ddd dd ddd"+chr (13) +chr (10) +"55";
  7048.     str1: =memorepl (str, 2, 4, "new string", 5, 4,.F.)
  7049.     ? str1
  7050.  
  7051. .2228
  7052. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7053. @22[╫╓╖√┤«║»╩²╦≈╥²]
  7054.  
  7055. memory()
  7056. ╙∩╖¿: memory (<nExp>)
  7057. ╙├═╛: ╚╖╢¿WINBASE ╔Φ╓├" ┐╒╧╨─┌┤µ│╪" ╦∙╙├╡──┌┤µ╫▄┴┐íú
  7058. ▓╬╩²: 
  7059.     <nExp>     ╩²╫╓▒φ┤∩╩╜, ╞Σ║╧╖¿╓╡╙╨╚²╕÷:
  7060.             0 = ╬¬╫╓╖√╓╡╣└╝╞╡─╫▄┐╒╝Σíú
  7061.             1 = ╬¬╫╓╖√╓╡╣└╝╞╡─╫ε┤≤┴¼╨°┐Θíú
  7062.             2 = ╬¬RUN ├ⁿ┴ε┴⌠│÷╡─╟°íú
  7063. ╖╡╗╪╓╡: ╩²╫╓└α╨═            
  7064. ╦╡├≈:     memory() ║»╩²▒¿╕µ┐╒╧╨─┌┤µ│╪╡─╟Θ┐÷, ┐╒╧╨─┌┤µ│╪╙├╙┌╜¿
  7065. ┴ó╫╓╖√┤«║═╖ó▓╝RUN ├ⁿ┴εíú
  7066. └²╫╙: ? memory (0) // ╖╡╗╪│╪╓╨╡──┌┤µ╫▄┴┐
  7067.     
  7068. .2229
  7069. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7070. @22[╫╓╖√┤«║»╩²╦≈╥²]
  7071.  
  7072. memotake()
  7073. ╙∩╖¿: memotake (<cStr>, <nLinenum>, <nEndline>, <nLength>,;
  7074.          <nTabsige>, <lWrap>)
  7075. ╙├═╛: ╚í│÷cStr ╓╨╡─╡┌nLinenum ╡╜nEndline ╨╨╡─╫╓╖√┤«
  7076. ▓╬╩²:    
  7077.     <cStr>         ┤²╚í╫╓┤«
  7078.     <nLinenum>     ┐¬╩╝╨╨
  7079.     <nEndline>     ╜ß╩°╨╨(┐╔╥╘╬¬┐╒)
  7080.     <nlength>     ├┐╨╨╕±╩╜╗»┐φ╢╚
  7081.     <nTabsize>     TAB ╕±╡─┐φ╢╚, ╚▒╩í╓╡╬¬4
  7082. <lWrap>     ┐╪╓╞╘╩╨φ╗≥╜√╓╣┤╩╛φ╣÷╡─┬▀╝¡▒φ┤∩╩╜, ╬¬╒µ╩▒╘╩╨φíú╡▒
  7083. ╜√╓╣┤╩╛φ╣÷╩▒╘≥╜½╖╧╞·╫╘│¼│÷╨╨│ñ╡╜╗╪│╡╖√╝Σ
  7084. ╡──┌╚▌íú
  7085. ╖╡╗╪╓╡: ╚í│÷╡─╫╓╖√┤«
  7086. └²╫╙: str: ="aaa aa"+chr (13) +chr (10) +"bbbbbbbbb"+chr (13) +chr (10) +;
  7087.     "cccccc"+chr (13) +chr (10) +"ddd dd ddd"+chr (13) +chr (10) +"55";
  7088.     str1: =memotake (str, 2, 4, 5, 4,.F., 1)
  7089.     ? str1
  7090.  
  7091. .2230
  7092. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7093. @22[╫╓╖√┤«║»╩²╦≈╥²]
  7094.  
  7095. memotran()
  7096. ╙∩╖¿:    memotran (<cString>, [<cHardcr>], [<cSoftcr>])
  7097. ╙├═╛:     ╜½╬─▒╛┐Θ╗≥▒╕╫ó╫╓╢╬╓╨╡─╗╪│╡/╗╗╨╨╢╘╖¡╥δ│╔╞Σ
  7098. ╦ⁿ╕±╩╜╡─╫╓╖√íú
  7099. ▓╬╩²:     
  7100.     <cString>     ╫╓╖√┤«▒Σ┴┐╗≥▒╕╫ó╫╓╢╬╡─├√│╞íú
  7101.     [<cHardcr>]     ╠µ╗╗╙▓╗╪│╡╡─╫╓╖√íú
  7102.     [<cSoftcr>]     ╠µ╗╗╚φ╗╪│╡╡─╫╓╖√íú
  7103. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  7104. ╦╡├≈:     ╚⌠╚▒╩í[<cHardcr>] ▓╬╩², ╘≥WINBASE ╙├╖╓║┼(;) ╠µ╗╗╙▓╗╪│╡;
  7105.     ╚⌠╚▒╩í[<cSoftcr>] ▓╬╩², ╘≥WINBASE ╙├┐╒╕±╠µ╗╗╚φ╗╪│╡;
  7106. └²╫╙:     memotran (memvar)
  7107.  
  7108. ▓╬╝√:     @2222 [memoedit]()
  7109.  
  7110. .2231
  7111. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7112. @22[╫╓╖√┤«║»╩²╦≈╥²]
  7113.  
  7114. memowrite()
  7115. ╙∩╖¿:     memowrite (<cFile>, <cString>)
  7116. ╙├═╛:     ╜½╫╓╖√┤«▒Σ┴┐╡──┌╚▌╨┤╚δ┤┼┼╠╬─╝■╓╨íú
  7117. ▓╬╩²:  
  7118. <cFile>         ╨┤╡╜┤┼┼╠╔╧╡─╬─╝■├√│╞, ▒╪╨δ░ⁿ║¼┬╖╛╢├√║═└⌐╒╣├√
  7119. <cString>     ┤µ╙╨╫╓╖√┤«╡─▒Σ┴┐├√│╞, ╕├╫╓╖√┤«╜½▒╗╨┤╚δ<cFile>╦∙╓╕╡─
  7120. ┤┼┼╠╬─╝■╓╨
  7121. ╖╡╗╪╓╡: ┬▀╝¡└α╨═, │╔╣ª╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.
  7122. ╦╡├≈:     ╚⌠╨┤▓┘╫≈│╔╣ª, memowrite() ║»╩²╖╡╗╪╥╗┬▀╝¡╒µ╓╡íú
  7123. └²╫╙:/* ╜½╫╓╖√▒Σ┴┐myvar ╡──┌╚▌╨┤╚δ┤┼┼╠╬─╝■as. prg ╓╨, ▓ó╕°│÷╩╟╖±
  7124. │╔╣ª╡─╨┼╧ó*/
  7125.      sign: =memowrite ("as. prg", myvar)
  7126.     if sign
  7127.         ? " ╨┤▓┘╫≈│╔╣ª! "
  7128.     else
  7129.         ? " ╨┤▓┘╫≈╩º░▄! "
  7130.     endif
  7131.     
  7132. ▓╬╝√:     @2226 [memoread]()
  7133.  
  7134. .1730
  7135. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7136. @17[╧╡═│║»╩²╦≈╥²]
  7137.  
  7138. memvarblock()
  7139. ╙∩╖¿:     memvarblock (<cVarName>)
  7140. ╙├═╛:     ╜¿┴ó╥╗╕÷" ╔Φ╓├- ╤í╚í" ┤·┬δ┐Θ, ╡▒┤·┬δ┐Θ▒╗╟≤╓╡╩▒, ╜ß╣√
  7141. ╜½╩╟╕°▒Σ┴┐╕│╡─╓╡╗≥╒▀╩╟╤í╚í▒Σ┴┐╡─╓╡íú
  7142. ▓╬╩²:     
  7143.     <cVarName>     ╜¿┴ó" ╔Φ╓├- ╤í╚í" ┤·┬δ┐Θ╡─▒Σ┴┐├√│╞
  7144. ╖╡╗╪╓╡: ╖╡╗╪┤·┬δ┐Θ, ╚τ▒Σ┴┐▓╗┤µ╘┌, ╘≥╖╡╗╪NILíú
  7145. ╦╡├≈:     ╚τ╣√╢╘┤·┬δ┐Θ╟≤╓╡╩▒╕°┤·┬δ┐Θ┤½╡▌╥╗╕÷▓╬╩², ╘≥
  7146. ▒Σ┴┐▒╗╕│╙Φ┤½╚δ╡─▓╬╩²╓╡, ╚τ╣√╢╘┤·┬δ┐Θ╟≤╓╡╩▒├╗
  7147. ╙╨╕°╦ⁿ┤½╡▌▓╬╩², ╘≥▒Σ┴┐╡─╡▒╟░╓╡▒╗╖╡╗╪íú
  7148. └²╫╙:     local var, blk
  7149.     blk: =memvarblock ("var")
  7150.     ? eval (blk) // ╜ß╣√╬¬NIL
  7151.     ? eval (blk, 47) // ╜ß╣√╬¬47
  7152.     ? var // ╜ß╣√╬¬47
  7153.     
  7154. ▓╬╝√:     @1806 [aeval](), @2417 [dbeval](), @2445 [fieldblock](), @2448 [fieldwblock]()    
  7155.  
  7156. .1403
  7157. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7158. @14[▓╦╡Ñ║»╩²╦≈╥²]
  7159.  
  7160. menudel()
  7161. ╙∩╖¿: menudel (<aMenuarr>, <nMbarm>, <nMitem>, <nMsub>)
  7162. ╙├═╛: ╔╛│²▓╦╡Ñ╧ε
  7163. ▓╬╩²:     
  7164.     <aMenuarr>     ▓╦╡Ñ╩²╫Θ
  7165.     <nMbar>     ╢Ñ└╕▓╦╡Ñ╧ε╨≥║┼
  7166.     <nMitem>     ╧┬└¡▓╦╡Ñ╧ε╨≥║┼
  7167. <nMsub>     ╬¬-1╩▒╔╛│²╓╕╢¿╧ε╡─╦∙╙╨╡┌╚²╝╢▓╦╡Ñú¼╚τ╣√>0 ╘≥╔╛│²╠╪╢¿
  7168. ╡┌╚²╝╢▓╦╡Ñ╧ε
  7169. ╖╡╗╪╓╡: ╬▐
  7170.  
  7171. └²╫╙: ▓╬╝√makemenu()
  7172.  
  7173. .1404
  7174. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7175. @14[▓╦╡Ñ║»╩²╦≈╥²]
  7176.  
  7177. menuget()
  7178. ╙∩╖¿:     menuget (<aMenuarray>, <nMbar>, <nMitem>, <nMsub>)
  7179. ╙├═╛:     ┤╙▓╦╡Ñ╩²╫Θ<aMenuarray> ╓╨╚í▓╦╡Ñ─┌╚▌
  7180. ▓╬╩²:     
  7181.     <aMenuarray>     ▓╦╡Ñ╩²╫Θ
  7182.     <nMbar>     ╢Ñ└╕▓╦╡Ñ╨≥║┼
  7183.     <nMitem>    ╧┬└¡▓╦╡Ñ╨≥║┼
  7184.     <nMsub>    ╫╙▓╦╡Ñ╨≥║┼
  7185. ╖╡╗╪╓╡: ▓╦╡Ñ─┌╚▌, ╫╓╖√╨═
  7186.         
  7187. └²╫╙▓╬╝√: @1407 [menuset](), @1402 [makemenu]()
  7188.     
  7189. .1405
  7190. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7191. @14[▓╦╡Ñ║»╩²╦≈╥²]
  7192.  
  7193. menugetc()
  7194. ╙∩╖¿: menugetc (ú└<nFc>, ú└<nBc>, ú└<nBar_fc>, ú└<nBar_bc>,;
  7195.          ú└<nGray_fc>, ú└<nGray_bc>)
  7196. ╙├═╛: ╗±╚í▓╦╡Ñ╤╒╔½
  7197. ▓╬╩²:     <nFc, nBc>        ▓╦╡Ñ╡─╟░╛░╔½íó▒│ ╛░╔½
  7198.     <nBar_fc, nBar_bc>     ┴┴╠⌡╡─╟░╛░╔½íó▒│ ╛░╔½
  7199.     <nGray_fc, nGray_bc>     ╗╥╔½▓╦╡Ñ╧ε╡─╟░╛░╔½íó▒│ ╛░╔½
  7200. ╖╡╗╪╓╡: ║»╩²╬▐╖╡╗╪╓╡ú¼▓╦╡Ñ╤╒╔½╖╡╗╪╡╜╧α╣╪▓╬╩²
  7201.  
  7202. └²╫╙: ▓╬╝√makemenu()
  7203.  
  7204. .1406
  7205. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7206. @14[▓╦╡Ñ║»╩²╦≈╥²]
  7207.  
  7208. menuins()
  7209. ╙∩╖¿: menuins (<aMenuarr>, <nMbar>, <nMitem>, <nMsub>, <cTitle>)
  7210. ╙├═╛: ╘┌╓╕╢¿╬╗╓├▓σ╚δ▓╦╡Ñ╧ε
  7211. ▓╬╩²:    
  7212.     <aMenuarr>     ▓╦╡Ñ╩²╫Θ
  7213.     <nMbar>     ╢Ñ└╕▓╦╡Ñ╧ε
  7214.     <nMitem>     ╧┬└¡▓╦╡Ñ╧ε
  7215.     <nMsub>     ╫╙▓╦╡Ñ╧ε
  7216.     <nTitle>     ▓╦╡Ñ╧ε─┌╚▌
  7217. ╖╡╗╪╓╡:
  7218.  
  7219. └²╫╙: ▓╬╝√makemenu()
  7220.  
  7221. .1407
  7222. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7223. @14[▓╦╡Ñ║»╩²╦≈╥²]
  7224.  
  7225. menuset()
  7226. ╙∩╖¿: menuset (<aMenuarr>, <nMbar>, <nMitem>, <nMsub>,;
  7227.          <cTitle>, <idFlag>)
  7228. ╙├═╛: ╔Φ╓├▓╦╡Ñ╧ε
  7229. ▓╬╩²:    
  7230.     <aMenuarr>     ▓╦╡Ñ╩²╫Θ
  7231.     <nMbar>     ╢Ñ└╕▓╦╡Ñ╧ε
  7232.     <nMitem>     ╧┬└¡▓╦╡Ñ╧ε
  7233.     <nMsub>     ╫╙▓╦╡Ñ╧ε
  7234.     <idFlag>     =MU_NORMAL, ╒²│ú▓╦╡Ñ╧ε
  7235.             =MU_REMAIN, ▒ú┴⌠▓╦╡Ñ╧ε
  7236.             =MU_GRAY, ╗╥╔½▓╦╡Ñ╧ε
  7237. ╖╡╗╪╓╡: ╬▐
  7238.  
  7239. └²╫╙: ▓╬╝√makemenu()
  7240.  
  7241. .1408
  7242. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7243. @14[▓╦╡Ñ║»╩²╦≈╥²]
  7244.  
  7245. menusetc()
  7246. ╙∩╖¿: menusetc (<nFc>, <nBc>, <nBar_fc>, <nBar_bc>,;
  7247.          <nGray_fc>, <nGray_bc>)
  7248. ╙├═╛: ╔Φ╓├▓╦╡Ñ╤╒╔½
  7249. ▓╬╩²:     
  7250.     <nFc, nBc>             ▓╦╡Ñ╡─╟░╛░╔½íó▒│ ╛░╔½
  7251.     <nBar_fc, nBar_bc>         ┴┴╠⌡╡─╟░╛░╔½íó▒│ ╛░╔½
  7252.     <nGray_fc, nGray_bc>        ╗╥╔½▓╦╡Ñ╧ε╡─╟░╛░╔½íó▒│ ╛░╔½
  7253. ╖╡╗╪╓╡: ╬▐
  7254. └²╫╙: ▓╬╝√makemenu()
  7255.  
  7256. .2018
  7257. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7258. @20[╩²╤º║»╩²╦≈╥²]
  7259.  
  7260. min()
  7261. ╙∩╖¿: min (<nExp1>, <nExp2>)
  7262. ╙├═╛: ╢╘┴╜╩²╤º▒φ┤∩╩╜╟≤╓╡▓ó╚í╜╧╨í╒▀íú
  7263. ▓╬╩²: 
  7264.     <nExp1>, <nExp2>     ╥¬▒╚╜╧┤≤╨í╡─╩²╤º▒φ┤∩╩╜
  7265. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  7266. └²╫╙:? min (90, 100) // ╖╡╗╪90
  7267.     ? min (-90, -100) // ╖╡╗╪-100    
  7268.     
  7269. ▓╬╝√: @2017 [max]()
  7270.  
  7271. .2233
  7272. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7273. @22[╫╓╖√┤«║»╩²╦≈╥²]
  7274.  
  7275. mlcount()
  7276. ╙∩╖¿:     mlcount (<cString>, [<nLinelength>], [<nTabsize>], [<lWrap>])
  7277. ╙├═╛:     ═│╝╞╥╗╕÷╫╓╖√▒Σ┴┐╗≥╒▀╥╗╕÷▒╕╫ó╫╓╢╬╓╨╕±╩╜
  7278. ╗»╨╨╡─╩²─┐íú
  7279. ▓╬╩²:     
  7280. <cString>         ╨Φ╥¬╟≤╓╡╡─╫╓╖√▒Σ┴┐╗≥╒▀▒╕╫ó╫╓╢╬╡─├√│╞íú
  7281.     [<nLinelength>]    ╕±╩╜╗»╬─▒╛┐Θ╦∙╩╣╙├╡─╨╨│ñ╢╚íú
  7282.     [<nTabsize>]         └⌐╒╣TAB ╝ⁿ╡─┐╒╕±╩²─┐íú
  7283. [<lWrap>]         ┐╪╓╞╘╩╨φ╗≥╜√╓╣┤╩╛φ╣÷╡─┬▀╝¡▒φ┤∩╩╜íú┬▀╝¡▒φ┤∩
  7284. ╩╜╓╡╬¬╒µ, ╘≥╘╩╨φ┤╩╛φ╣÷; ╖±╘≥╜√╓╣┤╩╛φ╣÷íú
  7285. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  7286. └²╫╙:// ╧┬└²╜½╩Σ│÷readme. txt ╡──┌╚▌
  7287.  no_line: =mlcount ("c: \winbase\readme. txt", 65) // ╗±╡├readme. txt ╡─┴╨╩²
  7288.     for i=1 to no_line // ╨╨┐φ╬¬65
  7289.     said: =memoline ("c: \winbase\readme. txt", 65, i) // ╗±╡├╡┌i ┴╨─┌╚▌
  7290.         ú└ row() +1, 10 say said
  7291.     next i
  7292.     
  7293. ▓╬╝√:     @2224 [memoline]()
  7294.  
  7295. .2232
  7296. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7297. @22[╫╓╖√┤«║»╩²╦≈╥²]
  7298.  
  7299. mlctopos()
  7300. ╙∩╖¿:     mlctopos (<cString>, <nLinelength>, <nLine>, <nCol>;
  7301.         [<nTabsize>], [<lWrap>])
  7302. ╙├═╛:     ╘┌╕±╩╜╗»╫╓╖√┤«╓╨╖╡╗╪╨╨┴╨╓╡╧α╢╘╫╓┤«═╖╡─
  7303. ╡─╞½╥╞ ╬╗╓├íú
  7304. ▓╬╩²: 
  7305. <cString>         ╥╗╕÷╫╓╖√┤«, ╕├┤«╡─╡┌╥╗╕÷╫╓╖√╬╗╓├╬¬╧α╢╘╬╗╓├0íú
  7306.  
  7307.     [<nLinelength>]    ╕±╩╜╗»┤«╩▒╩╣╙├╡─╨╨┐φíú
  7308.     [<nLine>]         ╨Φ╥¬╚╖╢¿╧α╢╘╬╗╓├╡─┴╨║┼íú
  7309.     [<nCol>]         ╨Φ╥¬╚╖╢¿╧α╢╘╬╗╓├╡─╨╨║┼íú
  7310.     [<nTabsize>]         └⌐╒╣TAB ╝ⁿ╡─┐╒╕±╩²─┐íú
  7311. [<lWrap>]     ┐╪╓╞╘╩╨φ╗≥╜√╓╣┤╩╛φ╣÷╡─┬▀╝¡▒φ┤∩╩╜íú┬▀╝¡▒φ┤∩
  7312. ╩╜╓╡╬¬╒µ, ╘╩╨φ┤╩╛φ╣÷; ╖±╘≥╜√╓╣┤╩╛φ╣÷íú
  7313. ╖╡╗╪╓╡: ╩²╫╓└α╨═ú¼┤╙0┐¬╩╝╝╞╩²╡─╧α╢╘╬╗╓├
  7314. └²╫╙ú║
  7315. str:="Would you know my name, if I saw you in heaven"
  7316. ?mlctopos ( str, 5, 3, 0 )    //╖╡╗╪10
  7317.  
  7318. .2234
  7319. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7320. @22[╫╓╖√┤«║»╩²╦≈╥²]
  7321.  
  7322. mlpos()
  7323. ╙∩╖¿:     mlpos (<cString>, [<nLinelength>], [<nLinenumber>], [<nTabsize>], >],;
  7324.      [<lWrap>])
  7325. ╙├═╛:     ╘┌MEMOREAD() ║»╩²╡─╖╡╗╪┤«╓╨╤░╒╥╕±╩╜╗»╨╨╡─╧α╢╘╬╗╓├íú
  7326. ▓╬╩²: 
  7327. <cString>         ╥╗╕÷╫╓╖√┤«, ╕├┤«╡─╡┌╥╗╕÷╫╓╖√╬╗╓├╬¬╧α╢╘╬╗╓├1, mlpos() ║»
  7328. ╩²╜½╝╞╦π╓╕╢¿╨╨╙δ╕├┤«╡┌╥╗╕÷╫╓╖√╡─╫╓╜┌╛α└δíú
  7329.     [<nLinelength>]    ╕±╩╜╗»┤«╩▒╩╣╙├╡─╨╨┐φíú
  7330.     [<nLinenumber>]     ╨Φ╥¬╚╖╢¿╧α╢╘╬╗╓├╡─╨╨║┼íú
  7331.     [<nTabsize>]         └⌐╒╣TAB ╝ⁿ╡─┐╒╕±╩²─┐íú
  7332. [<lWrap>]     ┐╪╓╞╘╩╨φ╗≥╜√╓╣┤╩╛φ╣÷╡─┬▀╝¡▒φ┤∩╩╜íú┬▀╝¡▒φ┤∩
  7333. ╩╜╓╡╬¬╒µ, ╘╩╨φ┤╩╛φ╣÷; ╖±╘≥╜√╓╣┤╩╛φ╣÷íú
  7334. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  7335. ╦╡├≈:     mlpos() ║»╩²┐╔╜¿┴óMEMOREAD() ║»╩²╡─╖╡╗╪┤«╡─╒¬┬╝, mlpos() ║»╩²╖╡╗╪╥╗╩²╫╓
  7336. ╓╡, ╕├╓╡╡╚╙┌[<nLinelength>] ▓╬╩²╓╕╢¿╨╨╡─╡┌╥╗╕÷╫╓╖√╡╜<cString> ▓╬╩²╓╕╢¿
  7337. ┤«╡─╡┌╥╗╕÷╫╓╖√╓«╝Σ╡─╫╓╜┌╞½╥╞╩²─┐íú
  7338. └²╫╙:     mem_var: =memoread ("as. prg")
  7339.     npos: =mlpos (mem_var, 40, 10)
  7340.     ? substr (mem_var, npos, 10) // ╖╡╗╪makewindow
  7341.     ? npos // ╖╡╗╪290
  7342.     
  7343. ▓╬╝√:     @2226 [memoread](), @2233 [mlcount]()
  7344.  
  7345. .2019
  7346. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7347. @20[╩²╤º║»╩²╦≈╥²]
  7348.  
  7349. mod()
  7350. ╙∩╖¿: mod (<nNum>, <nBase>)
  7351. ╙├═╛: ╟≤<nNum> │²╥╘<nBase> ╡─╙α╩²
  7352. ▓╬╩²:     
  7353.     <nNum>     ▒╗│²╩²
  7354.     <nBase>     │²╩²
  7355. ╖╡╗╪╓╡: ╙α╩²
  7356. └²╫╙:? mod (7, 3)
  7357.  
  7358. .1308
  7359. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7360. @13[╗ß╗░║»╩²╦≈╥²]
  7361.  
  7362. modifydlg()
  7363. ╙∩╖¿:    modifydlg (<nHandle>, <idType>, <cOldtitle>, <nSpecpos>, <nModival1>, <nModival2>)
  7364. ╙├═╛:    ╨▐╕─╢╘╗░┐≥─┌╚▌
  7365. ▓╬╩²:    ▓╗═¼╡─└α╨═╡─╢╘╗░┐≥, ▓╬╩²╡─╙├╖¿╥▓▓╗╥╗╤∙, ╛▀╠σ╚τ
  7366. ╧┬
  7367.     (1) RADIO, LISTBOX, CHECK └α
  7368.         <nHandle>      ╢╘╗░┐≥╛Σ▒·
  7369.         <idType>    ╢╘╗░┐≥└α╨═
  7370.         <cOldtitle>    ╢╘╗░┐≥▒Ω╠Γ
  7371.         <nSpecpos>    ╥¬╨▐╕─╡─╧ε─┐╘┌╢╘╗░╓╨╡─╬╗╓├
  7372.         <nModival1>    ├Φ╩÷╡─├√│╞
  7373.         <nModival2>    . F ╗≥.T.
  7374.     (2) EDIT └α
  7375.         <nHandle>    ╢╘╗░┐≥╛Σ▒·
  7376.         <idType>    ╢╘╗░┐≥└α╨═
  7377.         <cOldtitle>    ╢╘╗░┐≥▒Ω╠Γ
  7378.         <nSpecpos>    ╬¬1
  7379.         <nModival1>     ├Φ╩÷╡─├√│╞
  7380.         <nModival2>     ├Φ╩÷╡──┌╚▌
  7381.      (3) MULEDIT └α
  7382.         <nHandle>    ╢╘╗░┐≥╛Σ▒·
  7383.         <idType>    ╢╘╗░┐≥└α╨═
  7384.         <cOldtitle>    ╢╘╗░┐≥▒Ω╠Γ
  7385.         <nSpecpos>    ╬¬1
  7386.         <nModival1>    ╨┬╫╓╖√┤«
  7387.         <nModival2>    .T. ╗≥.F.
  7388.      (4) BUTTON ║═ACTION └α
  7389.         <nHandle>    ╢╘╗░┐≥╛Σ▒·
  7390.         <idType>    ╢╘╗░┐≥└α╨═
  7391.         <cOldtitle>    ╢╘╗░┐≥▒Ω╠Γ
  7392.         <nSpecpos>    ╬¬1
  7393.         <nModival1>    ╨┬╡─▒Ω╠Γ
  7394.         <nModival2>     ╨┬╡─╣ª─▄║»╩²
  7395.      (5) TEXT └α
  7396.         <nHandle>    ╢╘╗░┐≥╛Σ▒·
  7397.         <idType>    ╢╘╗░┐≥└α╨═
  7398.         <cOldtitle>    ╢╘╗░┐≥▒Ω╠Γ
  7399.         <nSpecpos>    ╬¬1
  7400.         <nModival1>     ╨┬╡─╫╓╖√┤«
  7401.         <nModival2>    ╬¬NIL
  7402. └²╫╙:     
  7403. #include "winbase.inc"
  7404. memvar dlg_succ, check_ret, edit_ret, radio_ret, list_ret, mul_ret
  7405.  
  7406. procedure main()
  7407. local init_pos: =1
  7408. private setdlg_ret, dlg_succ
  7409. private check_ret, edit_ret, radio_ret, list_ret, mul_ret
  7410.  
  7411.     windowstart()
  7412.     msgbox (" ╨▐╕─╢╘╗░┐≥", " ╙ª╙├║»╩²MODIFYDLG() └α", 1)
  7413.     setdlg_ret=muti_demo (init_pos)
  7414.     if. not. dlg_succ
  7415.         msgbox (" ╔Φ╓├╫Θ║╧╢╘╗░┐≥╩º░▄", "", 1)
  7416.     else
  7417.         if    check_ret
  7418.             msgbox (" ╢α╧ε╢╘╗░┐≥╖╡╗╪╓╡:.T. ",;
  7419.                 "CHECK"+str (init_pos, 1) +" ▒╗╤í╓╨", 1)
  7420.         else
  7421.             msgbox (" ╢α╧ε╢╘╗░┐≥╖╡╗╪╓╡:.F. ",;
  7422.                 "CHECK"+str (init_pos, 1) +" ╬┤╤í╓╨", 1)
  7423.         endif
  7424.         msgbox (" ╡Ñ╧ε╢╘╗░┐≥╖╡╗╪╓╡: ", str (radio_ret, 1), 1)
  7425.         msgbox (" ╩²╛▌▒α╝¡╢╘╗░┐≥╖╡╗╪╓╡: ", edit_ret, 1)
  7426.         msgbox (" ╬─▒╛▒α╝¡╢╘╗░┐≥╖╡╗╪╓╡: ", mul_ret, 1)
  7427.         msgbox (" ┴╨▒φ╢╘╗░┐≥╖╡╗╪╓╡: ", list_ret, 1)
  7428.     endif
  7429.     windowexit()
  7430.     return
  7431.  
  7432. function muti_demo (init_pos)
  7433.  
  7434.     dlg_succ=setdlg (19687, "check", " ╢α╧ε┐≥",;
  7435.      { {"CHECK1", 0}, {"CHECK2", 0}, {"CHECK3", 1}}, 1, 3, 20, init_pos)
  7436.     dlg_succ=setdlg (19687, "radio", " ╡Ñ╧ε┐≥",;
  7437.          {"RADIO1", "RADIO2"}, 1, 3, 42, init_pos)
  7438.     dlg_succ=setdlg (19687, "edit", " ▒α╝¡┐≥",;
  7439.          { {"EDIT1", "WINBASE"}, {"EDIT2", 8}}, 1, 10, 10, 26)
  7440.     dlg_succ=setdlg (19687, "listbox", " ┴╨▒φ┐≥",;
  7441.          {"LIST1", "LIST2", "LIST3"}, 18, 26, 22, 42, init_pos)
  7442.     dlg_succ=setdlg (19687, "muledit", " ╬─▒╛▒α╝¡┐≥",;
  7443.         " ╘╞┤≤╚φ╝■╣½╦╛", 18, 45, 22, 70)
  7444.     dlg_succ=setdlg (19687, "botton", "old popup", "oldpop() ", 7, 60)
  7445.     dlg_succ=setdlg(19687, "action", "╓┤╨╨╘¡╣ª─▄", "oldact() ",;
  7446.         3,3,10, 40)
  7447.     dlg_succ=setdlg (19687, "text", "WinBase 2. 0", 10, 50, 1)
  7448.     dlg_succ=setdlg (19687, "botton", " ╨▐╕─", "modidlg() ", 3, 60)
  7449.     if    makedlg (19687, " ╫Θ║╧╢╘╗░┐≥")
  7450.         check_ret=getdlg (19687, "check", " ╢α╧ε┐≥", init_pos)
  7451.         radio_ret=getdlg (19687, "radio", " ╡Ñ╧ε┐≥")
  7452.         edit_ret=getdlg (19687, "edit", " ▒α╝¡┐≥", init_pos)
  7453.         list_ret=getdlg (19687, "listbox", " ┴╨▒φ┐≥")
  7454.         mul_ret=getdlg (19687, "muledit", " ╬─▒╛▒α╝¡┐≥")
  7455.     endif
  7456.     removedlg (19687)
  7457. return nil
  7458.  
  7459. function modidlg()
  7460. static num: =1
  7461. private modiarr: = { {"check", " ╢α╧ε┐≥", 1, "check1",.F.},;
  7462.          {"radio", " ╡Ñ╧ε┐≥", 1, "radio1",.T.},;
  7463.          {"edit", " ▒α╝¡┐≥", 1, "edit1", "winbase"},;
  7464.          {"listbox", " ┴╨▒φ┐≥", 1, "list1",.F.},;
  7465.          {"muledit", " ╬─▒╛▒α╝¡┐≥", 1, "winbas",.T.},;
  7466.          {"botton", "old popup", 1, "NEW popup", "newpop() "},;
  7467.          {"action", " ╘¡╣ª─▄╓┤╨╨", 1, " ╨┬╣ª─▄╓┤╨╨",;
  7468.              "newact() "},;
  7469.          {"text", "WinBase 2. 0", 1, "Up to WinBase 2. 5", nil}}
  7470. private dlg_num
  7471.         
  7472.     if num<9
  7473.         dlg_num=modifydlg (19687, modiarr [num, 1], modiarr [num, 2],;
  7474.         modiarr [num, 3], modiarr [num, 4], modiarr [num, 5])
  7475.         num++
  7476.     endif
  7477. return nil
  7478.  
  7479. function oldpop()
  7480.     msgbox ("old pop up botton", "", 1)
  7481. return nil
  7482.  
  7483. function newpop()
  7484.     msgbox ("new pop up botton", "", 1)
  7485. return nil
  7486.  
  7487. function oldact()
  7488.     msgbox ("old action", "", 1)
  7489. return nil
  7490.  
  7491. function newact()
  7492.     msgbox ("new action", "", 1)
  7493. return nil
  7494.  
  7495. .1924
  7496. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7497. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  7498.  
  7499. month()
  7500. ╙∩╖¿:     month (<dExp>)
  7501. ╙├═╛:     ╢╘╥╗╕÷╚╒╞┌╟≤╓╡▓ó┤╙╓╨│Θ╚í│÷╩²╫╓╨╬╩╜╡─╘┬
  7502. ╨≥║┼íú
  7503. ▓╬╩²:     
  7504.     <dExp>    ║╧╖¿╡─╚╒╞┌
  7505. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  7506. └²╫╙:    ? month (date()) // ╜ß╣√└α╦╞09
  7507.  
  7508. ▓╬╝√:     @1908 [date](), @1912 [day](), @1932 [year](), @1906 [cmonth]()
  7509.  
  7510. .1517
  7511. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7512. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  7513.  
  7514. mouse()
  7515. ╙∩╖¿:     mouse (<idFlag>)
  7516. ╙├═╛:     ╧╘╩╛╗≥╒▀╣╪▒╒╩≤▒Ω, ░┤<flag> ╡─╓╡╔Φ╓├╩≤▒Ω╞≈╫┤╠¼, ▓ó╖╡╗╪
  7517. ╧╚╟░╡─╫┤╠¼íú
  7518. ▓╬╩²:     
  7519.     <idFlag>    ╬¬0╩▒╣╪▒╒╩≤▒Ωú¼╬¬1╩▒╧╘╩╛╩≤▒Ω
  7520. ╖╡╗╪╓╡: ╩²╓╡╨═(0-1),  0- ╣╪▒╒ú¼1- ╧╘╩╛
  7521. └²╫╙:     mouse (0) // ╣╪▒╒╩≤▒Ω
  7522.     mouse (1) // ╧╘╩╛╩≤▒Ω
  7523.     
  7524. ╙├╖¿▓╬╝√: @1512 [m_press](), @1508 [m_hide](), @1515 [m_show]()
  7525.  
  7526. .1518
  7527. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7528. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  7529.  
  7530. mousebox()
  7531. ╙∩╖¿:     mousebox (<nX1>, <nY1>, <nX2>, <nY2>)
  7532. ╙├═╛:     ┼╨╢╧╩≤▒Ω╩╟╖±╘┌╧≤╦╪<nX1, nY1, nX2, nY2> ╖╢╬º─┌
  7533. ▓╬╩²:     
  7534.     <nX1,nY1>     ╦∙╕°╖╢╬º╫≤╔╧╜╟╧≤╦╪╡π╫°▒Ω;
  7535.     <nX2,nY2>     ╦∙╕°╖╢╬º╙╥╧┬╜╟╧≤╦╪╡π╫°▒Ω
  7536. ╖╡╗╪╓╡: ▓╝╢√╨═, │╔╣ª╖╡╗╪╒µ(.T.), ╖±╘≥╖╡╗╪╝┘(.F.)
  7537. └²╫╙:
  7538. #include "winbase.inc"
  7539. procedure main()
  7540. private c, r, color, r1, c1
  7541.     windowstart()
  7542.     testmouse() // ▓╬╝√m_init()
  7543.     flush()
  7544.     makebotton (2, 30, " ╩≤▒Ω╝░╤╒╔½▓Γ╩╘", 4, 1)
  7545.     makebotton (24, 50, " ═╦│÷", 7, 1)
  7546.     color: =0
  7547.     do while inkey()! =27
  7548.         if mousebox (100, 150, 500, 300)
  7549.          // ╚τ╩≤▒Ω╘┌╧≤╦╪(100, 150, 500, 300) ╖╢╬º─┌
  7550.         m_where (ú└ c, ú└ r) // ╗±╡├╩≤▒Ω╡▒╟░╡─╧≤╦╪╡π╫°▒Ω(c, r)
  7551.         c1: =int ( (c-100) /40) *40+100
  7552.         r1: =int ( (r-150) /30) *30+150
  7553.         if (m_press (0) ==1. OR. m_press (1) ==1). and. r1<300;
  7554.             .and. c1<500
  7555.             // ╫≤░┤┼Ñ╗≥╙╥░┤┼Ñ▒╗░┤╧┬
  7556.             box3d (c1, r1, c1+40, r1+30, 1, 7) 
  7557.                 // ╗¡╥╗░╫╔½╡─═╣╨═╖╜┐≥
  7558.             do while m_rele (0) ==1. and. m_rele (1) ==1 
  7559.                     // ╫≤░┤┼Ñ╗≥╙╥░┤┼Ñ▒╗╩═╖┼
  7560.                 color: =mod ( (color+1), 16)
  7561.                 box3d (c1, r1, c1+40, r1+30, 2, color)
  7562.                      // ╗¡╥╗color ╔½╡─░╝╨═╖╜┐≥
  7563.                 exit // ═╦│÷╡▒╟░do ╤¡╗╖
  7564.             enddo
  7565.         endif
  7566.     endif
  7567.     if mousein (24, 50, 25, 54). and. (m_press (0) ==1. OR. m_press (1) ==1)
  7568.         quit 
  7569.     // ╚τ╩≤▒Ω╘┌░┤┼Ñ" ═╦│÷" ╔╧, ╟╥╫≤░┤┼Ñ╗≥╙╥░┤┼Ñ▒╗░┤╧┬
  7570.     endif
  7571.     if mousein (2, 30, 3, 44). and. (m_press (0) ==1. OR. m_press (1) ==1)
  7572.         cls 
  7573.                 /* ╚τ╩≤▒Ω╘┌░┤┼Ñ"" ╩≤▒Ω╝░╤╒╔½▓Γ╩╘" ╔╧, ╟╥╫≤░┤┼Ñ╗≥╙╥░┤
  7574. ┼Ñ▒╗░┤╧┬*/
  7575.         flush()
  7576.         makebotton (2, 30, " ╩≤▒Ω╝░╤╒╔½▓Γ╩╘", 4, 1)
  7577.         makebotton (24, 50, " ═╦│÷", 7, 1)
  7578.     endif
  7579. enddo
  7580. windowexit()
  7581. return
  7582. function flush() // ╗¡═°╕±
  7583. local i
  7584.     for i=0 to 10
  7585.         drawline (100+40*i, 150, 100+40*i, 300, 7)
  7586.     next 
  7587.     for i=0 to 5
  7588.         drawline (100, 150+30*i, 500, 150+30*i, 7)
  7589.     next 
  7590. return nil
  7591.  
  7592. ▓╬╝√: @1002 [makebotton](), @1512 [m_press](), @1513 [m_rele](), @1520 [mousein](),  @1607 [drawline](), @1602 [box3d]
  7593.  
  7594. .1519
  7595. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7596. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  7597.  
  7598. mousecol()
  7599. ╙∩╖¿: mousecol()
  7600. ╙├═╛: ╖╡╗╪╩≤▒Ω╬╗╓├╡─┴╨╫°▒Ω
  7601. ▓╬╩²: ╬▐
  7602. ╖╡╗╪╓╡: ╩²╓╡╨═(0-79)
  7603. ╙├╖¿▓╬╝√: @1523 [mouserow](), @1512 [m_press](), @1519 [mousecol](), @1516 [m_where]()
  7604.  
  7605. .1520
  7606. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7607. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  7608.  
  7609. mousein()
  7610. ╙∩╖¿:     mousein (<nRow1>, <nCol1>, <nRow2>, <nCol2>)
  7611. ╙├═╛:     ┼╨╢╧╩≤▒Ω╖±╘┌╫°▒Ω<nRow1, nCol1, nRow2, nCol2> ╖╢╬º─┌
  7612. ▓╬╩²:     
  7613.     <nRow1, nCol1>    ╦∙╕°╖╢╬º╫≤╔╧╜╟╨╨┴╨╫°▒Ω
  7614.     <nRow2, nCol2>    ╦∙╕°╖╢╬º╙╥╧┬╜╟╨╨┴╨╫°▒Ω
  7615. ╖╡╗╪╓╡: ▓╝╢√╨═, │╔╣ª╖╡╗╪╒µ(.T.), ╖±╘≥╖╡╗╪╝┘(.F.)
  7616. └²╫╙:     
  7617.     if mousein (5, 5, 20, 70)
  7618.         ? " ╩≤▒Ω╘┌(5, 5, 20, 70) ╖╢╬º─┌"
  7619.     else
  7620.         ? " ╩≤▒Ω▓╗╘┌(5, 5, 20, 70) ╖╢╬º─┌"
  7621.     endif
  7622.     
  7623. ╙├╖¿▓╬╝√: @1512 [m_press](),  @1509 [m_inbox](), @1518 [mousebox]()
  7624.  
  7625. .1521
  7626. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7627. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  7628.  
  7629. mousekey()
  7630. ╙∩╖¿:    mousekey()
  7631. ╙├═╛:     ┐╔═¼╩▒▓Γ╩╘╝ⁿ┼╠░┤╝ⁿ║═╩≤▒Ω░┤┼Ñ
  7632. ▓╬╩²:     ╬▐
  7633. ╦╡├≈:     ▒╛║»╩²╥└└╡╙┌╚½╛╓▒Σ┴┐mousekey ╡─╔Φ╓├, ╚⌠╚½╛╓▒Σ┴┐mousekey ╬¬┐╒, ╘≥
  7634. ▒ú│╓╘¡╣ª─▄ú¼╖±╘≥╓┤╨╨╚½╛╓▒Σ┴┐mousekey ╦∙╓╕╢¿╡─║»╩²╡─╣ª
  7635. ─▄;
  7636. ╖╡╗╪╓╡: ╒√╩², ╚τ╚½╛╓▒Σ┴┐mousekey ╬¬┐╒, ╘≥╘¡║»╩²╖╡╗╪╓╡╜½╫÷╬¬
  7637. ╖╡╗╪╓╡ú¼╖╡╗╪╓╡▓╬╝√winbase.incíú╚τ╚½╛╓▒Σ┴┐mousekey ▓╗╬¬┐╒▓ó╟╥
  7638. ╦∙╓╕╢¿╡─║»╩²╖╡╗╪0, ╘≥╘¡║»╩²╖╡╗╪╓╡╜½╫÷╬¬▒╛║»
  7639. ╩²╡─╖╡╗╪╓╡ú¼╖±╘≥╡─╥╘╓╕╢¿╡─║»╩²╡─╖╡╗╪╓╡╬¬╫╝
  7640.  
  7641.  
  7642. └²╫╙:     mousekey: = "newmouse()"
  7643.     msgbox (" winbase", " ", l)
  7644.  
  7645.     function newmouse( )
  7646.         ú└1, 1 say str(mouserow( ), 2) + " " +2
  7647.             str (mousecol(),2)
  7648.     return 0
  7649.  
  7650. ╙├╖¿▓╬╝√: @1516 [m_where](),  @1504 [inkey]()
  7651.  
  7652. .1522
  7653. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7654. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  7655.  
  7656. mouseread()
  7657. ╙∩╖¿: mouseread (<Getlist>, <nRow1>, <nCol1>, <nRow2>, <nCol2>)
  7658. ╙├═╛: └α╦╞╙┌READ, ▓ó┐╔╩╣╙├╩≤▒Ωú¼╩╣╙├═Ω║≤╥¬╜½Getlist ╩²╫Θ╟σ┐╒íú
  7659. ▓╬╩²:     
  7660.     <Getlist>         get ╩²╫Θ
  7661.     <nRow1, nCol1>     ╩≤▒Ω╫≈╙├╙≥╡─╫≤╔╧╜╟╨╨┴╨╫°▒Ω
  7662.     <nRow2, nCol2>     ╩≤▒Ω╫≈╙├╙≥╡─╙╥╧┬╜╟╨╨┴╨╫°▒Ω
  7663. ╖╡╗╪╓╡: ╬▐
  7664. └²╫╙:
  7665. private var, getlist: = { }
  7666.     var: =100
  7667.     ú└ 10, 10 say "tt" get var    
  7668.         //┤╦╩▒GET╩²╫Θú¿╝┤GETLIST╥╤▒╗╕│╓╡ú⌐
  7669.     mouseread (getlist, 5, 5, 12, 30)
  7670.     getlist: = { }
  7671.  
  7672. .1523
  7673. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7674. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  7675.  
  7676. mouserow()
  7677. ╙∩╖¿: mouserow()
  7678. ╙├═╛: ╖╡╗╪╩≤▒Ω╬╗╓├╡─╫°▒Ω╨╨
  7679. ▓╬╩²: ╬▐
  7680. ╖╡╗╪╓╡: ╩²╓╡╨═(0-26)
  7681. └²╫╙: 
  7682. do while.T.
  7683.     ú└ 24, 10 say " ╩≤▒Ω╬╗╓├: "+str (mouserow()) +": "+str (mousecol())
  7684.         // ╩Σ│÷╡▒╟░╩≤▒Ω╬╗╓├
  7685. enddo
  7686.     
  7687. ╙├╖¿▓╬╝√: @1512 [m_press](),  mouserow(), @1516 [m_where]()
  7688.  
  7689. .2235
  7690. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7691. @22[╫╓╖√┤«║»╩²╦≈╥²]
  7692.  
  7693. mpostolc()
  7694. ╙∩╖¿:     mpostolc (<cString>, <nLinelength>, <nPos>, [<nTabsize>], [<lWrap>])
  7695. ╙├═╛:     ╕∙╛▌╧α╢╘╬╗╓├╘┌╕±╩╜╗»╫╓╖√┤«╓╨╖╡╗╪╨╨┴╨╓╡íú
  7696. ▓╬╩²: 
  7697. <cString>         ╥╗╕÷╫╓╖√┤«, ╕├┤«╡─╡┌╥╗╕÷╫╓╖√╬╗╓├╬¬╧α╢╘╬╗╓├0íú
  7698.  
  7699.     [<nLinelength>]    ╕±╩╜╗»┤«╩▒╩╣╙├╡─╨╨┐φíú
  7700.     [<nLine>]         ╨Φ╥¬╚╖╢¿╧α╢╘╬╗╓├╡─┴╨║┼íú
  7701.     [<nCol>]         ╨Φ╥¬╚╖╢¿╧α╢╘╬╗╓├╡─╨╨║┼íú
  7702.     [<nTabsize>]         └⌐╒╣TAB ╝ⁿ╡─┐╒╕±╩²─┐íú
  7703. [<lWrap>]     ┐╪╓╞╘╩╨φ╗≥╜√╓╣┤╩╛φ╣÷╡─┬▀╝¡▒φ┤∩╩╜íú┬▀╝¡▒φ┤∩
  7704. ╩╜╓╡╬¬╒µ, ╘╩╨φ┤╩╛φ╣÷; ╖±╘≥╜√╓╣┤╩╛φ╣÷íú
  7705. ╖╡╗╪╓╡: ╩²╫Θú¼╕±╩╜╬¬{ ╨╨, ┴╨}
  7706. └²╫╙ú║
  7707. str:="Would you know my name, if I saw you in heaven"
  7708. ?mpostolc ( str, 5, 10 )    //╖╡╗╪{ 3, 0 }
  7709.     
  7710.  
  7711. .1309
  7712. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7713. @13[╗ß╗░║»╩²╦≈╥²]
  7714.  
  7715. msgbox()    
  7716. ╙∩╖¿: msgbox (<cMsg1>, <cMsg2>, <nType> [, <cBotton1>, <cBotton2>, <cBotton3>])
  7717. ╙├═╛: ╘┌▓╗═¼╨╨╧╘╩╛╨┼╧ó
  7718. ▓╬╩²:     <cMsg1> ,<cMsg2>    ╧╘╩╛╨┼╧ó╫╓╖√┤«
  7719. <nType>        ╬¬1 ╩▒╖╡╗╪╓╡╓╗╙╨1, ╬¬2 ╩▒┐╔╖╡╗╪1 ╗≥0, ╬¬3 ╩▒┐╔╖╡╗╪1 ╗≥2 ╗≥
  7720. <cBotton1>,<cBotton2>, <cBotton3> ┐╔╙├└┤╠µ╗╗╘¡└┤╡─▒Ω╫╝░┤┼Ñ╡─╫╓╖√┤«
  7721. ╖╡╗╪╓╡: ╩²╫╓0-2
  7722. └²╫╙:    
  7723. #include "winbase.inc"
  7724. procedure example1()
  7725. local temp, mykey: =' ░┤╬╗'
  7726.     windowstart()
  7727.     mykey: =inputbox (" ╩Σ╚δ─π╡─├▄┬δ: ", " ╫ε╢α5 ╕÷╫╓─╕! ", 2, mykey)
  7728.     // ╩Σ╚δ▓╗╧╘╩╛, ╜╙╩╒├▄┬δ
  7729.     if mykey<>"key" // ├▄┬δ▓╗╒²╚╖
  7730.         temp: =msgbox (" ├▄┬δ┤φ╬≤! ", " ░┤-> ╝ⁿ╗≥<- ╤í╘±", 3
  7731.                 ) // ╤í╘±│÷┐┌
  7732.         if temp=2 // ╚τ╣√░┤╧┬▒Ω╫╝░┤┼Ñ" ╖┼╞·", ╘≥═╦│÷
  7733.             quit
  7734.         endif
  7735.     else // ├▄┬δ╒²╚╖
  7736.         temp: =msgbox (" ╤í╘±╣ª─▄", " ░┤-> ╝ⁿ╗≥<- ╤í╘±", 2,;
  7737.                  " ╣ª─▄1", " ╣ª─▄2")
  7738.         // ╠µ╗╗╘¡└┤╡─▒Ω╫╝░┤┼Ñ╬¬" ╣ª─▄1", " ╣ª─▄2"
  7739.         if temp=0 // ╤í╘±╣ª─▄1 ╓┤╨╨╧α╙ª╡─╚╬╬±
  7740.             do fun1()
  7741.         elseif temp=1// ╤í╘±╣ª─▄2 ▓ó╓┤╨╨╧α╙ª╡─╚╬╬±
  7742.             do fun2()
  7743.         endif
  7744.     endif
  7745.     windowexit()
  7746. return
  7747.         
  7748. ▓╬╝√: @1306 [inputbox]()
  7749.  
  7750. .1310
  7751. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7752. @13[╗ß╗░║»╩²╦≈╥²]
  7753.  
  7754. msgshow()
  7755. ╙∩╖¿: msgshow (<cTitle>, <aMsgarr>, <aBottonarr>, <nInitpos>)
  7756. ╙├═╛: ╡»│÷╢α╨╨╨┼╧ó╝░╢α╕÷░┤┼Ñ╡─╨┼╧ó╢╘╗░┐≥
  7757. ▓╬╩²:    
  7758.     <cTitle>    ╢╘╗░┐≥▒Ω╠Γ
  7759.     <aMsgarr>     ╨┼╧ó╩²╫Θ, ╕±╩╜╬¬{<msg1>,..., <msgn>}.
  7760.     <aBottonarr>     ░┤┼Ñ▒Ω╠Γ╩²╫Θ, ╕±╩╜╬¬{<bott1>,..., <bottn>}
  7761.     <nInitpos>     ╤í╓╨░┤┼Ñ╡─│⌡╩╝╗»╬╗╓├
  7762. ╖╡╗╪╓╡: ░┤ESC ╖╡╗╪0, ╖±╘≥╖╡╗╪╦∙░┤╡─░┤┼Ñ╡─╨≥║┼
  7763. └²╫╙: msgshow ("winbase", {"winbase", "up to winbase 2.5 now"},;
  7764.              {"winbase 1. 0", "winbase 2. 0", "winbase 2. 5"}, 3)
  7765.  
  7766. .1524
  7767. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7768. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  7769.  
  7770. mskeyb()
  7771. ╙∩╖¿: mskeyb (<ncKey>)
  7772. ╙├═╛:    ╜½ncKey ╓╡╦═╚δmousekey ╩╣╙├╡─╗║│σ╟°, ╕├╓╡┐╔╙╔mousekey ║»╩²╚í╡├, └α╦╞╙┌
  7773. keyboard ├ⁿ┴εíú
  7774. ▓╬╩²: 
  7775. <ncKey>    ╦═╚δmousekey ╗║│σ╟°╡─╝ⁿ╓╡ú¼╚τ╣√<ncKey> ╩╟╩²╓╡ú¼<ncKey>╡─╚í╓╡╬¬WINBASE╠ß╣⌐╡─▒Ω╫╝
  7776. ╝ⁿ╓╡ú¼╦ⁿ├╟╢¿╥σ╘┌═╖╬─╝■WINBASE.INCíú╚τ╣√<ncKey>╩╟╫╓╖√┤«ú¼╘≥░┤┤«╓╨╫╓
  7777. ╖√│÷╧╓╡─╧╚║≤▒╗╦═╚δmousekey ╗║│σ╟°íú
  7778. ╖╡╗╪╓╡: ╬▐
  7779.  
  7780. .1212
  7781. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7782. @12[▒¿▒φ╔Φ╝╞║»╩²╦≈╥²]
  7783.  
  7784. nage
  7785. ╙∩╖¿:    nage( <nYear>, <nMonth>, <nDay>)
  7786. ╙├═╛:    ╘┌▒¿▒φ╔Φ╝╞╓╨╜½╩²╓╡╫¬╗╗╬¬─Ω┴Σ
  7787. ▓╬╩²:
  7788.     <nYear>    ╩²╓╡─Ω
  7789.     <nMonth>    ╩²╓╡╘┬
  7790.     <nDay>    ╩²╓╡╚╒
  7791.  
  7792. ╖╡╗╪╓╡:─Ω┴Σ╓╡
  7793. └²╫╙:
  7794. NAGE( 63ú¼12ú¼29)    //╖╡╗╪31
  7795.  
  7796. .2463
  7797. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7798. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  7799.  
  7800. ndxcount()
  7801. ╙∩╖¿: ndxcount()
  7802. ╙├═╛: ╝╞╦π╙δ╡▒╟░╩²╛▌┐Γ╧α╣╪╡─╗ε╢»╦≈╥²╬─╝■╡─╕÷
  7803. ╩²
  7804. ▓╬╩²: ╬▐
  7805. ╖╡╗╪╓╡: ╗ε╢»╦≈╥²╬─╝■╡─╕÷╩²
  7806. └²╫╙: use dat index ntx1, ntx2, ntx3
  7807.     ? ndxcount()
  7808.  
  7809. .2464
  7810. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7811. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  7812.  
  7813. ndxkey()
  7814. ╙∩╖¿: ndxkey (<clndexName>, < lNTX>)
  7815. ╙├═╛: ╢┴╚í╦≈╥²╬─╝■╡─╣╪╝ⁿ╫╓▒φ┤∩╩╜
  7816. ▓╬╩²: 
  7817.     <clndexName>         ╥¬╢┴╚í╡─╦≈╥²╬─╝■├√
  7818.     <lNTX>        lNTX=.T. ╩▒╬¬Winbase ╦≈╥², ╖±╘≥╬¬dBASE ╦≈╥²
  7819. ╖╡╗╪╓╡: ╣╪╝ⁿ╫╓▒φ┤∩╩╜╫╓╖√┤«
  7820. └²╫╙:
  7821. ? NDXKEY ("ARCUST1. NTX",.T.)
  7822.  
  7823. .1525
  7824. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7825. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  7826.  
  7827. newmskeyb()
  7828. ╙∩╖¿: newmskeyb()
  7829. ╙├═╛: ╟σ│²mousekey ╩╣╙├╡─╗║│σ╟°
  7830. ▓╬╩²: ╬▐
  7831. ╖╡╗╪╓╡: ╬▐
  7832.  
  7833. .2465
  7834. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7835. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  7836.  
  7837. netappend()
  7838. ╙∩╖¿: netappend()
  7839. ╙├═╛: ╘÷╝╙╨┬╝╟┬╝, ╙├╙┌╘┌═°┬τ╔╧░┤╣▓╧φ╖╜╩╜┤≥┐¬╡─╩²
  7840. ╛▌┐Γ
  7841. ▓╬╩²: ╬▐
  7842. ╖╡╗╪╓╡: │╔╣ª╖╡╗╪.T. ú¼╖±╘≥╖╡╗╪.F.
  7843. ╫ó╥Γ: ╘┌Winbase ╓╨, ╚⌠╙├╥╗░π╡─USE ┤≥┐¬╩²╛▌┐Γ, ╘≥╩╟░┤╣▓╧φ╖╜╩╜╡─, ╘┌╜°
  7844. ╨╨╙╨╣╪╡─▓┘╫≈╩▒, ▒≡ ═ⁿ┴╦╝╙╦°ú╗╝╙┴╦╦°╥╘║≤ú¼▓╗╥¬═ⁿ┴╦╙├
  7845. ├ⁿ┴εUNLOCK ╜Γ╦°; 
  7846.  
  7847. ▓╬╝√: @2406 [dbappend](), @3101[append blank], @2449 [flock](), @2477 [rlock](), @3148[unlock]
  7848.  
  7849. .2466
  7850. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7851. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  7852.  
  7853. netdelete()
  7854. ╙∩╖¿: netdelete()
  7855. ╙├═╛: ╘┌═°┬τ╔╧╕°╡▒╟░╣ñ╫≈╟°╓╨┤≥┐¬╡─╩²╛▌┐Γ╡─╡▒
  7856. ╟░╝╟┬╝┤≥╔╧╔╛│²▒Ω╝╟íú
  7857. ▓╬╩²: ╬▐
  7858. ╖╡╗╪╓╡: │╔╣ª╖╡╗╪.T. ú¼╖±╘≥╖╡╗╪.F.
  7859.     
  7860. ▓╬╝√: @3114[delete], @3136[set deleted]
  7861.  
  7862. .2467
  7863. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7864. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  7865.  
  7866. neterr()
  7867. ╙∩╖¿: neterr()
  7868. ╙├═╛: ╚╖╢¿═°┬τ╔╧╡─USE ├ⁿ┴ε╗≥APPEND ├ⁿ┴ε╩╟╖±╓┤╨╨╩º░▄íú
  7869. ▓╬╩²: ╬▐
  7870. ╖╡╗╪╓╡: ┬▀╝¡└α╨═
  7871. ╦╡├≈: ╚τ╣√╙├╗º╞≤═╝┤≥┐¬╥╗╕÷╞Σ╦ⁿ╙├╗º╥╤░┤EXCLUSIVE ╖╜╩╜┤≥
  7872. ┐¬╡─╬─ ╝■, neterr()║»╩²╖╡╗╪.T.íú╚τ╣√╥╗╕÷╙├╗º╙δ┴φ╥╗╕÷╙├╗º╘┌═¼
  7873. ╥╗╩▒┐╠╩╣╙├APPEND BLANK ├ⁿ┴ε, neterr() ║»╩²╖╡╗╪.T.íú    ╩╣╙├USE ├ⁿ┴ε┤≥┐¬╥╗╕÷╩²╛▌┐Γ
  7874. ╩▒, ╚τ╣√╬─╝■▓╗─▄╗±╚í, neterr() ║»╩²╜½╖╡╗╪.T.íú
  7875. └²╫╙: if neterr() =.T.
  7876.         ? " ▓┘╫≈╩º░▄! "
  7877.     endif
  7878.     
  7879. ▓╬╝√:     @2460 [lockfile](), @2461 [lockrec](), @2477 [rlock]() |lock(), @2472 [netuse]()
  7880.  
  7881. .2468
  7882. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7883. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  7884.  
  7885. netfldput()
  7886. ╙∩╖¿:     netfieldput (<nField>, <Exp>)
  7887. ╙├═╛:     ╘┌═°┬τ╔╧╢╘╡▒╟░╤í╘±╡─╩²╛▌┐Γ╓╨╓╕╢¿╡─╫╓╢╬
  7888. ╜°╨╨╕│╓╡▓┘╫≈íú
  7889. ▓╬╩²:     
  7890.     <nField>     ╩²╛▌┐Γ╓╨╫╓╢╬╡─╬╗╓├╨≥║┼
  7891.     <Exp>         ╕│╕°╓╕╢¿╫╓╢╬╡─╨┬╓╡
  7892. ╖╡╗╪╓╡: │╔╣ª╖╡╗╪.T. ú¼╖±╘≥╖╡╗╪.F.
  7893. └²╫╙:
  7894. netfldput(3, date( ) )
  7895. if netappend()
  7896.     netreplfld ( "code", "007")
  7897. endif
  7898. ▓╬╝√:     @2447 [fieldput]()        
  7899.  
  7900. .2469
  7901. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7902. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  7903.  
  7904. netname()
  7905. ╙∩╖¿:     netname()
  7906. ╙├═╛:     ╖╡╗╪═°┬τ╣ñ╫≈╒╛IDíú
  7907. ▓╬╩²:     ╬▐
  7908. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  7909. ╦╡├≈:     ╚τ╣√╙ª╙├│╠╨≥▓╗╩╟╘┌IBM PC ═°┬τ╔╧╘╦╨╨, ╗≥╒▀╣ñ╫≈╒╛╡─
  7910. ID ├╗╙╨▒╗╔Φ╓├, ╘≥netname() ║»╩²╖╡╗╪╡─╜ß╣√╜½╩╟╥╗┐╒┤«íúnetname() ║»╩²╖╡╗╪
  7911. ╡─╜ß╣√╫ε│ñ▓╗│¼╣²15 ╕÷╫╓╖√íú
  7912. └²╫╙:  ú└12, 20 say " ═°┬τ╣ñ╫≈╒╛ID ╩╟"+netname()
  7913.  
  7914. .2470
  7915. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7916. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  7917.  
  7918. netrecall()
  7919. ╙∩╖¿: netrecall()
  7920. ╙├═╛: ╘┌═°┬τ╔╧╗╓╕┤▒╗┤≥╔╧╔╛│²▒Ω╝╟╡─╝╟┬╝ 
  7921. ▓╬╩²: ╬▐
  7922. ╖╡╗╪╓╡: │╔╣ª╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.
  7923.  
  7924. .2471
  7925. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7926. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  7927.  
  7928. netreplfld()
  7929. ╙∩╖¿: netreplfld (<fld_name>, <xFldval>)
  7930. ╙├═╛: ╘┌═°┬τ╔╧╜½╫╓╢╬<fld_name> ╕│╙Φ<xFldval> ╓╡
  7931. ▓╬╩²: 
  7932.     <fld_name>     ╫╓╢╬├√
  7933.     <xFldval>    ╙δ╫╓╢╬├√└α╨═╧α═¼╡─▒Σ┴┐╗≥▒φ┤∩╩╜
  7934. ╖╡╗╪╓╡: │╔╣ª╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.
  7935. └²╫╙:
  7936. netfldput(3, date)
  7937. if netappend()
  7938.     netreplfld ( "code", "007")
  7939. endif
  7940.     
  7941. .2472
  7942. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7943. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  7944.  
  7945. netuse()
  7946. ╙∩╖¿:     netuse (<dbfname>, <dbfalias>, <mode>)
  7947. ╙├═╛:     ╘┌═°┬τ╔╧┤≥┐¬╩²╛▌┐Γ
  7948. ▓╬╩²:     
  7949.     <dbfname>     ╩²╛▌┐Γ╬─╝■├√
  7950.     <dbfalias>     ╩²╛▌┐Γ▒≡├√
  7951. <mode>     ╚⌠╕├╧ε╬¬┐╒, ╘≥╩²╛▌┐Γ░┤╣▓╧φ╖╜╩╜┤≥┐¬, ╖±╘≥░┤╢└╒╝╖╜
  7952. ╩╜┤≥┐¬íú
  7953. ╖╡╗╪╓╡: ┬▀╝¡└α╨═, │╔╣ª╖╡╗╪.T.
  7954. └²╫╙:     netuse ("my. dbf", A, 1)    //░┤╢└╒╝╖╜╩╜┤≥┐¬╩²╛▌┐Γ
  7955.  
  7956. ▓╬╝√:     @2438 [dbusearea](), @3150[use]
  7957.  
  7958. .1526
  7959. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7960. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  7961.  
  7962. nextkey()
  7963. ╙∩╖¿:     nextkey()
  7964. ╙├═╛:     ╢┴╚í╝ⁿ┼╠╗║│σ╟°╓╨╡╚┤²┤ª└φ╡─╡┌╥╗╕÷╩Σ╚δ╝ⁿ
  7965. ╓╡ú¼╡½ ▓╗░╤╦ⁿ┤╙╝ⁿ┼╠╗║│σ╟°╓╨╔╛│²íú
  7966. ▓╬╩²:     ╬▐
  7967. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  7968. ╦╡├≈:     ╙δINKEY() ║»╩²▓╗═¼, nextkey() ║»╩²┐╔╖╓╬÷╧┬╥╗╕÷╥¬┤ª└φ╩Σ╚δ╝ⁿ▓ó
  7969. ╟╥╙╨╠⌡╝■╡╪╜½╗║│σ╟°┤½╡▌╕°╩╡╝╩╩╣╙├╕├╗║│σ╟°
  7970. ╡─┴φ═Γ╥╗╕÷╣²│╠íú
  7971. └²╫╙:
  7972. /* ╚τ╡┌╥╗╕÷╩Σ╚δ╝ⁿ▓╗╩╟ESC, ╘≥╓┤╨╨╣²│╠something, ╖±╘≥╟σ│²╝ⁿ┼╠
  7973. ╗║│σ╟°▓ó═╦│÷*/
  7974.  if nextkey() =K_ESC
  7975.     clear typeahead // ╟σ│²╝ⁿ┼╠╗║│σ╟°
  7976.     clear
  7977.     return
  7978. else
  7979.     do something
  7980. endif
  7981.     
  7982. ▓╬╝√: @1504 [inkey](), @3401[clear typeahead], @2205 [chr](), @1710 [delay]()
  7983.  
  7984. .1731
  7985. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7986. @17[╧╡═│║»╩²╦≈╥²]
  7987.  
  7988. nop()
  7989. ╙∩╖¿: nop()
  7990. ╙├═╛: ╓┤╨╨╥╗┤╬┐╒▓┘╫≈╡─║»╩²
  7991. ▓╬╩²: ╬▐
  7992. ╖╡╗╪╓╡: ╬▐
  7993.  
  7994. .1925
  7995. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  7996. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  7997.  
  7998. ntod()
  7999. ╙∩╖¿: ntod (<nYear>, <nMonth>, <nDay>)
  8000. ╙├═╛: ╗±╡├╙╔╙δ<nYear>, <nMonth>, <nDay> ╡─╚╒╞┌╓╡
  8001. ▓╬╩²:     
  8002.     <nYear>     ╩²╓╡, ─Ω
  8003.     <nMonth>     ╩²╓╡, ╘┬
  8004.     <nDay>    ╩²╓╡, ╚╒
  8005. ╖╡╗╪╓╡: ╚╒╞┌╓╡
  8006. └²╫╙:? ntod (63, 12, 29 )    //╖╡╗╪63─Ω12╘┬29╚╒
  8007.  
  8008. .1527
  8009. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8010. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  8011.  
  8012. numlock()
  8013. ╙∩╖¿: numlock()
  8014. ╙├═╛: ┤≥┐¬Num Lock ╝ⁿ
  8015. ▓╬╩²: ╬▐
  8016. ╖╡╗╪╓╡: ╬▐
  8017.  
  8018. .1528
  8019. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8020. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  8021.  
  8022. numloff()
  8023. ╙∩╖¿: numloff()
  8024. ╙├═╛: ╣╪▒╒Num Lock ╝ⁿ
  8025. ▓╬╩²: ╬▐
  8026. ╖╡╗╪╓╡: ╬▐
  8027.  
  8028. .2106
  8029. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8030. @21[╫¬╗╗║»╩²╦≈╥²]
  8031.  
  8032. numtostr()
  8033. ╙∩╖¿: numtostr (<nNum>)
  8034. ╙├═╛: ╜½╩²╓╡(┐╔║¼╨í╩²╬╗) ╫¬╗╗╬¬╫╓╖√┤«
  8035. ▓╬╩²: 
  8036.     <nNum>    ┤²╫¬╗╗╩²╓╡
  8037. ╖╡╗╪╓╡: ╫¬╗╗│÷╡─╫╓╖√┤«
  8038. └²╫╙: numtostr (12. 5)    //╖╡╗╪"12.5"
  8039.  
  8040. .2236
  8041. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8042. @22[╫╓╖√┤«║»╩²╦≈╥²]
  8043.  
  8044. occurs()
  8045. ╙∩╖¿: occurs (<cSstr>, <cTstr>)
  8046. ╙├═╛: ╚í╫╓╖√┤«cSstr ╘┌cTstr ╓╨│÷╧╓╡─╕÷╩²
  8047. ▓╬╩²:     
  8048.     <cSstr>     ╘┤┤«
  8049.     <cTstr>     ─┐▒Ω┤«
  8050. ╖╡╗╪╓╡: ╫╓╖√┤«cSstr ╘┌cTstr ╓╨│÷╧╓╡─╕÷╩²
  8051. └²╫╙: occurs ("123", "a123d123")    //╖╡╗╪2
  8052.  
  8053. .1732
  8054. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8055. @17[╧╡═│║»╩²╦≈╥²]
  8056.  
  8057. os()
  8058. ╙∩╖¿: os()
  8059. ╙├═╛: ╖╡╗╪▓┘╫≈╧╡═│╡─├√│╞║═░µ▒╛║┼íú
  8060. ▓╬╩²: ╬▐
  8061. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  8062. └²╫╙:? os() // ╖╡╗╪└α╦╞DOS 6. 00
  8063.  
  8064. ▓╬╝√:     @1725 [iscolor](), @1764 [version]()    
  8065.  
  8066. .1213
  8067. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8068. @12[▒¿▒φ╔Φ╝╞║»╩²╦≈╥²]
  8069.  
  8070. out
  8071. ╙∩╖¿: out ( <Field>, <nLen> ,<nDec> )
  8072. ╙├═╛:╩Σ│÷╫╓╢╬─┌╚▌, ╙├╙┌▒¿▒φ╔Φ╝╞
  8073. ▓╬╩²:
  8074.     <Field>    ╫╓╢╬├√
  8075. <nLen>    ╩Σ│÷│ñ╢╚, ╚⌠╩í┬╘ú¼╘≥░┤╡▒╟░╧ε╡─│ñ╢╚╝╞╦π
  8076.     <nDec>    ╩Σ│÷╨í╩²╬╗
  8077. ╖╡╗╪╓╡:╬▐
  8078. └²╫╙:OUT ( NAME, 8 )
  8079.  
  8080. .1733
  8081. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8082. @17[╧╡═│║»╩²╦≈╥²]
  8083.  
  8084. outerr()
  8085. ╙∩╖¿:     outerr (<CexpList>)
  8086. ╙├═╛:     ╜½╩Σ│÷╢¿╧≥╡╜DOS ╡─▒Ω╫╝┤φ╬≤╩Σ│÷(stderr) ╔╧, ╢°▓╗╩╟╢¿╧≥╡╜
  8087. DOS ╡─▒Ω╫╝╩Σ│÷(stdout) ╔╧íú╞Σ╜ß╣√╩╟╜½╙ª╙├│╠╨≥╡─╩Σ│÷╢¿╧≥
  8088. ╡╜╞┴─╗╢°▓╗╣▄╞Σ╦ⁿ╡─╓╪╢¿╧≥íú
  8089. ▓╬╩²:     
  8090.     <CexpList>     ╙├╫≈╩Σ│÷╡─╙╔╢║║┼╫≈╬¬╢¿╜τ╖√╡─▒φ┤∩╩╜▒φíú
  8091. ╖╡╗╪╓╡: NIL
  8092. ╦╡├≈:     outerr() ▓╗╖■┤╙DOS ╓╪╢¿╧≥    
  8093. └²╫╙:
  8094. /* ╘╦╨╨╧┬╢╬┤·┬δ, ╘≥"Winbase" ╜½╘┌┤≥╙í╗·╔╧╩Σ│÷, ╢°" ╓╨╣·" ╚╘╘┌╞┴─╗
  8095. ╔╧╩Σ│÷íú*/
  8096.      set device to printer
  8097.     outstd ("Winbase")
  8098.     outerr (" ╓╨╣·")
  8099.  
  8100. ▓╬╝√:     outstd(), @1753 [setpos]()    
  8101.  
  8102. .1734
  8103. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8104. @17[╧╡═│║»╩²╦≈╥²]
  8105.  
  8106. outstd()
  8107. ╙∩╖¿:     outstd (<cExpList>)
  8108. ╙├═╛:     ╜½┐╔▒╗DOS ╓╪╢¿╧≥╡─╩Σ│÷╢¿╧≥╡╜DOS ╡─▒Ω╫╝╩Σ│÷╔Φ▒╕
  8109. ╔╧íú
  8110. ▓╬╩²:     
  8111.     <cExpList>     ╙├╫≈╩Σ│÷╡─╙╔╢║║┼╫≈╬¬╢¿╜τ╖√╡─▒φ┤∩╩╜▒φíú
  8112. ╖╡╗╪╓╡: NIL
  8113. ╦╡├≈:     outstd() ╖■┤╙DOS ╓╪╢¿╧≥
  8114. └²╫╙:
  8115. /* ╘╦╨╨╧┬╢╬┤·┬δ, ╘≥"Winbase" ╜½╘┌┤≥╙í╗·╔╧╩Σ│÷, ╢°" ╓╨╣·" ╚╘╘┌╞┴─╗
  8116. ╔╧╩Σ│÷íú*/
  8117.      set device to printer
  8118.     outstd ("Winbase")
  8119.     outerr (" ╓╨╣·")
  8120.  
  8121. ▓╬╝√:     @1733 [outerr](), @1753 [setpos]()
  8122.  
  8123. .2239
  8124. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8125. @22[╫╓╖√┤«║»╩²╦≈╥²]
  8126.  
  8127. pad |x|()
  8128. ╙∩╖¿:     pad |x| (<cExp>, <nLength>, <cPadchar>)
  8129. ╙├═╛:     ░╤╫╓╖√┤«╫¬╗╗╬¬╢╘╞δ─ú╩╜íú
  8130. ▓╬╩²:     |x|         c, l, ╗≥r, ╦ⁿ├╟╚╖╢¿╢╘╞δ─ú╩╜íú
  8131.             padc() ╛╙╓╨╫╓╖√┤«íú
  8132.             padl() ╫≤╢╘╞δ╫╓╖√┤«íú
  8133.             padr() ╙╥╢╘╞δ╫╓╖√┤«íú
  8134. <cExp>         ╫╓╖√└α╨═, ╩²╫╓└α╨═, ╚╒╞┌└α╨═╡─▒φ┤∩╩╜, ╕├▒φ┤∩╩╜╜½╫¬╗╗
  8135. │╔╥╗╕÷╫╓╖√┤«íú
  8136.     <nLength>     ╜ß╣√│ñ╢╚íú
  8137.     <cPadchar>     ╠ε│Σ╫╓╖√ú¼╚▒╩í╬¬┐╒╕±íú
  8138. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  8139. └²╫╙:    
  8140. ? padc ("Winbase ╧╡═│", 20, "#") // ╧╘╩╛╬¬####Winbase ╧╡═│####
  8141. ? padl ("Winbase ╧╡═│", 20, "#") // ╧╘╩╛╬¬Winbase ╧╡═│########    
  8142. ? padc ("Winbase ╧╡═│", 20, "#") // ╧╘╩╛╬¬########Winbase ╧╡═│
  8143.  
  8144. .1214
  8145. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8146. @12[▒¿▒φ╔Φ╝╞║»╩²╦≈╥²]
  8147.  
  8148. page
  8149. ╙∩╖¿:page()
  8150. ╙├═╛:╖╡╗╪┤≥╙í╡─╡▒╟░╥│║┼ú¼╙├╙┌▒¿▒φ╔Φ╝╞
  8151. ▓╬╩²:╬▐
  8152. ╖╡╗╪╓╡:╥│║┼ú¼╩²╓╡┤«
  8153. └²╫╙:
  8154. " ╡┌"+PAGE( ) +" ╥│"
  8155.  
  8156. .1215
  8157. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8158. @12[▒¿▒φ╔Φ╝╞║»╩²╦≈╥²]
  8159.  
  8160. pages
  8161. ╙∩╖¿:pages()
  8162. ╙├═╛:╖╡╗╪▒¿▒φ╡─╫▄╥│╩²ú¼╙├╙┌▒¿▒φ╔Φ╝╞
  8163. ▓╬╩²:╬▐
  8164. ╖╡╗╪╓╡:╫▄╥│╩²ú¼╩²╓╡┤«
  8165. └²╫╙: " ╣▓"+PAGES  ú¿ú⌐+" ╥│"
  8166.  
  8167. .2237
  8168. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8169. @22[╫╓╖√┤«║»╩²╦≈╥²]
  8170.  
  8171. parse()
  8172. ╙∩╖¿: parse (ú└<cString>)
  8173. ╙├═╛: ┤╙╫╓╖√┤«╓╨│Θ╚í╙╔┐╒╕±╖╓╕⌠╡─╫╙┤«, ▓ó┤╙╫╓╖√┤«
  8174. ╓╨╔╛│²│Θ╚í│÷╡─╫╙┤«íú
  8175. ▓╬╩²: 
  8176. <cString>    ╙╔┐╒╕±╖╓╕⌠╡─╫╙┤«╡─╫╓╖√┤«, ╦ⁿ╙ª░┤╡╪╓╖┤½╡▌íú
  8177. ╖╡╗╪╓╡: │Θ╚í╡─╫╙┤«
  8178. └²╫╙:    str: ="123 456 abc"
  8179.     for i=1 t0 2
  8180.         ? parse (ú└str)
  8181.         ? str
  8182.     next
  8183.  
  8184. .2363
  8185. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8186. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  8187.  
  8188. pathparse()
  8189. ╙∩╖¿: pathparse (<cFileSpec>, ú└ <cDrv>, ú└ <cPath>, ú└ <cBase>, ú└ <cExt>)
  8190. ╙├═╛: ░╤╬─╝■├√╖╓╜Γ╬¬┼╠║┼íó┬╖╛╢íó╗∙▒╛╬─╝■├√╝░└⌐╒╣
  8191. ├√íú
  8192. ▓╬╩²:    
  8193.     <cFileSpec>     ┤°┬╖╛╢├√╡─╬─╝■├√
  8194.     <cDrv>     ╟²╢»╞≈║┼
  8195.     <cPath>     ┬╖╛╢├√
  8196.     <cBase>     ╗∙▒╛╬─╝■├√
  8197.     <cExt>     └⌐╒╣╬─╝■├√
  8198. ╖╡╗╪╓╡: 
  8199.     <cDrv>     ╖╡╗╪╟²╢»╞≈║┼
  8200.     <cPath>     ╖╡╗╪┬╖╛╢├√
  8201.     <cBase>     ╖╡╗╪╗∙▒╛╬─╝■├√
  8202.     <cExt>     ╖╡╗╪└⌐╒╣╬─╝■├√
  8203. └²╫╙:    pathparse ("C:\DOS\COMMAND.COM", ú└drv, ú└path, ú└base, ú└ext )
  8204.     //╕├║»╩²╖╡╗╪╚τ╧┬╓╡
  8205.     drv="C", path="C:\DOS", base="COMMAND", ext="COM"
  8206.  
  8207. .1735
  8208. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8209. @17[╧╡═│║»╩²╦≈╥²]
  8210.  
  8211. pause()
  8212. ╙∩╖¿: pause (< nPnauseTime>)
  8213. ╙├═╛: ╬▐╠⌡╝■╡╪╘▌═ú╓╕╢¿╩▒╝Σ
  8214. ▓╬╩²: 
  8215.     <nPauseTime>        ╘▌═ú╡─├δ╩²
  8216. ╖╡╗╪╓╡: ╬▐
  8217. └²╫╙: pause (5.5)
  8218.  
  8219. .1736
  8220. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8221. @17[╧╡═│║»╩²╦≈╥²]
  8222.  
  8223. pcol()
  8224. ╙∩╖¿:     pcol()
  8225. ╙├═╛:     ╕·╫┘┤≥╙í═╖╡─╦«╞╜╥╞╢»íú
  8226. ▓╬╩²:     ╬▐
  8227. ╖╡╗╪╓╡: ╩²╫╓└α╨═, pcol() ║»╩²╖╡╗╪╫ε║≤┤≥╙í╫╓╖√╡─┴╨║┼
  8228. ╦╡├≈:     ╓┤╨╨EJECT ├ⁿ┴ε╗≥SETPRC() ║»╩²╜½╩╣╦ⁿ├╟╗╓╕┤│⌡╩╝╫┤╠¼╓╡(0     ╓╡)íú
  8229. └²╫╙:
  8230. // ╧┬╢╬┤·┬δ╜½┤≥╙í│÷winBaseGOOD
  8231.  set device to printer
  8232. ú└ 10, 5 say "winBase"
  8233. ú└ 10, pcol() say "GOOD"
  8234.  
  8235. ▓╬╝√:     @1738 [prow](), @1706 [col](), @1741 [row]()
  8236.  
  8237. .2505
  8238. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8239. @25[├ⁿ┴ε╩²╦≈╥²]
  8240.  
  8241. pcount()
  8242. ╙∩╖¿: pcount()
  8243. ╙├═╛: ╚╖╢¿┤½╡▌╕°╡▒╟░╣²│╠╗≥╙├╗º╫╘╢¿╥σ║»╩²╡─▓╬
  8244. ╩²╩²─┐íú
  8245. ▓╬╩²: ╬▐
  8246. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  8247. ╦╡├≈:╚τ╣√├╗╙╨▓╬╩²▒╗┤½╡▌, ╘≥pcount() ║»╩²╖╡╗╪0íú
  8248. └²╫╙:
  8249. // ╘┌╧┬├µ╡─╣²│╠╓╨, ╚τ╣√sign ▓╬╩²├╗╙╨▒╗┤½╡▌, ╘≥╥■║¼╕├▓╬╩²
  8250. Ϊ20
  8251.  procedure ass (sign)
  8252. if pcount() ==0
  8253.     sign: =20
  8254. endif
  8255.  
  8256. .1637
  8257. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8258. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  8259.  
  8260. pcx()
  8261. ╙∩╖¿: pcx (<cFilename>, <nX1>, <nY1>, <nX2>, <nY2>)
  8262. ╙├═╛: ╧╘╩╛16 ╔½pcx ═╝╧±, ▓ó░┤╡▒╟░pcx ╬─╝■╡─╡≈╔½░σ╔Φ╓├╡≈╔½░σ
  8263. ▓╬╩²:    
  8264.     <cFilename>     ╬─╝■├√
  8265.     <nX1,nY1>    ╧╘╩╛pcx ═╝╧±╡─╫≤╔╧╜╟╧≤╦╪╫°▒Ω
  8266.     <nX2,nY2>    ╧╘╩╛pcx ═╝╧±╡─╙╥╧┬╜╟╧≤╦╪╫°▒Ω
  8267. ╖╡╗╪╓╡: ╬▐
  8268. └²╫╙: pcx ("file. pcx", 10, 10, 100, 100)
  8269.  
  8270. .1640
  8271. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8272. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  8273.  
  8274. pcxtype()
  8275. ╙∩╖¿: pcxtype (<cFilename>)
  8276. ╙├═╛: ╗±╡├pcx ╬─╝■└α╨═
  8277. ▓╬╩²: 
  8278.     <cFilename>    PCX ╬─╝■├√
  8279. ╖╡╗╪╓╡: ╖╡╗╪pcx ╬─╝■└α╨═, ╛▀╠σ║¼╥σ╚τ╧┬
  8280.     0:     ╖╟pcx ╬─╝■
  8281.     1:     16 ╔½pcx ╬─╝■
  8282.     8:     256 ╔½pcx ╬─╝■
  8283. └²╫╙:? pcxtype ("c: \winbase\bin\wbs. ovl")
  8284.  
  8285. .1638
  8286. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8287. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  8288.  
  8289. pcx16()
  8290. ╙∩╖¿:pcx16 (<cFilename>, <nX1>, <nY1>, <nX2>, <nY2>)
  8291. ╙├═╛: ░┤╡▒╟░╡≈╔½░σ╧╘╩╛pcx ═╝╧≤
  8292. ▓╬╩²:    
  8293.     <cFilename>     PCX ╬─╝■├√
  8294.     <nX1,nY1>     ╧╘╩╛pcx ═╝╧±╡─╫≤╔╧╜╟╧≤╦╪╫°▒Ω
  8295.     <nX2,nY2>     ╧╘╩╛pcx ═╝╧±╡─╙╥╧┬╜╟╧≤╦╪╫°▒Ω
  8296. ╖╡╗╪╓╡: ╬▐
  8297. └²╫╙: pcx ("file. pcx", 10, 10, 100, 100)
  8298.  
  8299. .1639
  8300. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8301. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  8302.  
  8303. pcx256()
  8304. ╙∩╖¿: pcx256 (<cFilename>, <nMode>)
  8305. ╙├═╛: ╧╘╩╛256 ╔½pcx ═╝╧≤
  8306. ▓╬╩²:    
  8307.     <cFilename>     pcx╬─╝■├√
  8308. <nMode>     256 ╔½╧╘╩╛─ú╩╜(╚▒╩í╡─╖╓▒µ┬╩╬¬320 í┴200 í┴256)
  8309. ╖╡╗╪╓╡: ╬▐
  8310. └²╫╙:
  8311.  
  8312. .1410
  8313. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8314. @14[▓╦╡Ñ║»╩²╦≈╥²]
  8315.  
  8316. poplist( )
  8317. ╙∩╖¿: poplist(<acMenuitem>,<nRow1>,<nCol1>,<nRow2>,<nCol2>,;
  8318.     <nListfunc>,[<nListpos>,<nListrow>, <nLinec>, <nListfc>, ;
  8319.     <nListbc>,<nBarfc>,<nBarbc>,<xDrawbar>,<xSaveflag>])
  8320. ╙├═╛:┤┤╜¿╡»│÷╩╜▓╦╡Ñ
  8321. ▓╬╩²:
  8322. <acMenuitem>    acMenuitem╬¬╫╓╖√┤«╩▒╡▒╬─╝■├√╢╘┤²ú¿┐╔║¼═¿┼Σ╖√ú⌐ú¼╬¬╩²╫Θ╩▒
  8323. ╡▒╥╗░π▓╦╡Ñ╧ε┤ª└φ
  8324. <nRow1,nCol1>        ▓╦╡Ñ╡»│÷╬╗╓├╡─╫≤╔╧╜╟╨╨┴╨╫°▒Ω
  8325. <nRow2,nCol2>        ▓╦╡Ñ╡»│÷╬╗╓├╡─╙╥╧┬╜╟╨╨┴╨╫°▒Ω
  8326.     <nListfunc>        ╗╪╡≈║»╩²├√
  8327.     <nListpos >        ╜°╚δ╡─▒φ╬╗╓├
  8328.     <nListrow >        ╜°╚δ╡─╧╘╩╛╨╨╬╗╓├
  8329.     <nLinec >        ╗¡╧▀╤╒╔½
  8330.     <nListfc>        ╟░╛░╔½
  8331.     <nListbc>        ▒│╛░╔½
  8332.     <nBarfc>        ┴┴╠⌡╟░╛░╔½
  8333.     <nBarbc>        ┴┴╠⌡▒│╛░╔½
  8334.     <xDrawbar>        ╬¬┐╒╩▒╩╣╙├╣÷╢»╕╦ú¼╖±╘≥▓╗╩╣╙├    
  8335.     <xSaveflag>        ╬¬┐╒╩▒▒ú┤µ╞┴─╗ú¼╖±╘≥▓╗▒ú┤µ    
  8336.  
  8337. ╖╡╗╪╓╡: ╚τ╣√╙├ESC ═╦│÷ú¼╖╡╗╪0ú¼╖±╘≥╖╡╗╪╦∙╤í▓╦╡Ñ╧ε╨≥║┼
  8338. ╦╡├≈:╗╪╡≈║»╩²╡─╢¿╥σ╚τ╧┬ú║
  8339.     <║»╩²├√> ( <Key>, <Files>, <Pos> )ú¼╞Σ╓╨<Key>╬¬╡▒╟░╡─░┤╝ⁿ╗≥╩≤▒Ω╓╡ú¼<Files>╬¬╡▒╟░╩²╫Θú¼
  8340. <Pos>╬¬▓╦╡Ñ╩²╫Θ╡─▓╦╡Ñ╦∙╘┌╨≥║┼íú╕├║»╩²▒╪╨δ╖╡╗╪╩²
  8341. ╓╡ú¼╚⌠╖╡╗╪╓╡▓╗╬¬┴π╟╥▓╗╡╚╙┌<Key>ú¼╘≥╫≈╬¬╨┬╡─<Key>╓╡╙╔poplist ║»
  8342. ╩²┤ª└φíú
  8343. └²╫╙:    ╥╘╧┬╜¿┴ó╥╗╕÷▓Θ┐┤╬─╝■┤≤╨í╡─╡»│÷╩╜▓╦╡Ñú¼╡▒░┤
  8344. F1 ╩▒╡»│÷╨┼╧ó┤░┐┌▓ó╧╘╩╛╡▒╟░╬─╝■┤≤╨í
  8345.  
  8346. PROCEDURE VIEWFILES( )
  8347.     poplist ( "*.*", 8, 20, 18, 40, "showsize" )
  8348. RETUNR
  8349.  
  8350. Function showsize ( key, filelist, pos )
  8351. local filename, size
  8352.     IF key = k_F1
  8353.          filename = filelist [pos]
  8354.         size = filesize (filename)
  8355.         msgbox ( "╬─╝■" + filename + "│ñ╢╚╬¬: ", NIRIM(size, 1)
  8356.         return (0)
  8357.     endif
  8358. RETUNR(key)
  8359. ▓╬╝√:@1412 [popup]()
  8360.  
  8361. .1409
  8362. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8363. @14[▓╦╡Ñ║»╩²╦≈╥²]
  8364.  
  8365. popgetc()
  8366. ╙∩╖¿: popgetc (ú└<nFc>, ú└<nBc>, ú└<nBarfc>, ú└<nBarbc>,;
  8367.          ú└<nGrayfc>, ú└<nGraybc>)
  8368. ╙├═╛: ╗±╚í╡»│÷╩╜▓╦╡Ñ╤╒╔½ú¿╒δ╢╘popup()║»╩²ú⌐íú
  8369. ▓╬╩²:     
  8370.     <nFc, nBc>         ┤░┐┌╡─╟░╛░╔½íó▒│╛░╔½
  8371.     <nBarfc, nBarbc>     ┴┴╠⌡╡─╟░╛░╔½íó▒│╛░╔½
  8372.     <nGrayfc, nGraybc>     ╗╥╔½╧╘╩╛╡─╟░╛░╔½íó▒│╛░╔½
  8373. ┤½▓╬╩▒╘┌╕≈▓╬╩²╟░╝╙"ú└" ║┼▒φ╩╛┤½╚δ╡╪╓╖
  8374. ╖╡╗╪╓╡: ┤µ╙┌<nFc>, <nBc>, <nBarfc>, <nBarbc>, <nGrayfc>, <nGraybc> ╓╨
  8375. └²╫╙▓╬╝√popup()
  8376.  
  8377. .1411
  8378. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8379. @14[▓╦╡Ñ║»╩²╦≈╥²]
  8380.  
  8381. popsetc()
  8382. ╙∩╖¿: popsetc (<nFc>, <nBc>, <nBarfc>, <nBarbc>, <nGrayfc>, <nGraybc>)
  8383. ╙├═╛: ╔Φ╓├╡»│÷╩╜▓╦╡Ñ╡─╤╒╔½ú¿╒δ╢╘popup()║»╩²ú⌐íú
  8384. ▓╬╩²:    
  8385.     <nFc, nBc>         ┤░┐┌╡─╟░╛░╔½, ▒│╛░╔½
  8386.     <nBarfc, nBarbc>     ┴┴╠⌡╡─╟░╛░╔½, ▒│╛░╔½
  8387.     <nGrayfc, nGraybc>     ╗╥╔½╧╘╩╛╡─╟░╛░╔½íó▒│╛░╔½
  8388. ╖╡╗╪╓╡: ╬▐
  8389. └²╫╙: ▓╬╝√ @1412 [popup]()
  8390.  
  8391. .1412
  8392. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8393. @14[▓╦╡Ñ║»╩²╦≈╥²]
  8394.  
  8395. popup()
  8396. ╙∩╖¿: popup (<nRow>, <nCol>, <aPoparr> [<idType>, <nRow2>, <nCol2>])
  8397. ╙├═╛: ╡»│÷▓╦╡Ñ┤░┐┌íú
  8398. ▓╬╩²:     
  8399.     <nRow1, nCol1>     ┤░┐┌╫≤╔╧╜╟╡─╨╨┴╨╫°▒Ω
  8400. <aPoparr>         ┤µ╖┼┤░┐┌▓╦╡Ñ╤í╢Ñ, ╚⌠╩╟╗╥╔½, ╙ª╘┌╤í╧ε╟░╝╙~
  8401. <idType>         ┤░┐┌└α╨═, ╡Ñ╢└╩╣╙├popup ╩▒type ╙ª╬¬┐╒╗≥0, ╬¬0 ╩▒╡»│÷░╫╔½┤°╥⌡
  8402. ╙░╡─┤░┐┌íú
  8403. <nRow2, nCol2>     ┤░┐┌╙╥╧┬╜╟╡─╨╨┴╨╫°▒Ω, ╚⌠╓╕╢¿╕├▓╬╩², ╘≥▓·╔·┤°╣÷╢»
  8404. ╕╦╡─┤░┐┌íú
  8405. ╖╡╗╪╓╡: ░┤ESC ╖╡╗╪0, ╖±╘≥╖╡╗╪╦∙╤í╧ε─┐╡─╨≥║┼
  8406. └²╫╙:
  8407. #include "winbase.inc"
  8408.  
  8409. PROCEDURE MAIN (arv1, arv2)
  8410. private fc: =1, bc: =14
  8411.     windowstart()    //WinBase │⌡╩╝╗»
  8412.     popup (5, 5, {"item 1", "item 2", "~item 3"},, 10, 12)
  8413.     ? popsetc (fc, bc)
  8414.     popup (5, 5, {"item 1", "item 2", "~item 3"},, 10, 12)
  8415.     ? popgetc (ú└fc, ú└bc)
  8416.     ? fc
  8417.     ? bc
  8418.     inkey (0)
  8419.     windowexit()    //Winbase ═╦│÷
  8420. RETURN
  8421. ▓╬╝√:@1410 [poplist]()
  8422.  
  8423. .1737
  8424. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8425. @17[╧╡═│║»╩²╦≈╥²]
  8426.  
  8427. printcode()
  8428. ╙∩╖¿: printcode (<nCtrlcode>)
  8429. ╙├═╛: ╦═┐╪╓╞┬δ╡╜┤≥╙í╗·╡½▓ó▓╗╕─▒Σ┤≥╙í╬╗╓├
  8430. ▓╬╩²: 
  8431.     <nCtrlcode>    ┐╪╓╞┬δ
  8432. ╖╡╗╪╓╡: ╬▐
  8433. └²╫╙:printcode ( 27)
  8434.  
  8435. .2506
  8436. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8437. @25[├ⁿ┴ε╩²╦≈╥²]
  8438.  
  8439. procline()
  8440. ╙∩╖¿:     procline (<nActivation>)
  8441. ╙├═╛:     ╚╖╢¿╡▒╟░╓┤╨╨╣²│╠╗≥╗ε╢»╒╗╓╨╣²│╠╡─╨╨║┼íú
  8442. ▓╬╩²:     
  8443. <nActivation>     ╓╕╧≥╥╗╗ε╢»╒╗, ╬¬0 ╩▒▒φ╩╛╗ε╢»╒╗╓╨╡▒╟░╗ε╢»╣²│╠(╫ε
  8444. ─┌▓π╣²│╠) ╗ε╢»╒╗╩╟╥╗╕÷╣²│╠╡─╡≈╙├╣╪╧╡╒╗, ╒╗╓╨┐┐╜ⁿ
  8445. ╒╗╡╫╡─╣²│╠╡≈╙├┴╦╒╗╓╨┐┐╜ⁿ╒╗╢Ñ╡─╧α┴┌╣²│╠, ╚▒╩í
  8446. ▓╬╩²╓╡╬¬0íú
  8447. ╖╡╗╪╓╡: ╩²╫╓└α╨═ú¼╨╨║┼    
  8448. ╦╡├≈:     procline() ║»╩²╖╡╗╪╡▒╟░╡─╨╨║┼, ╕├╨╨║┼▒φ╩╛╧α╢╘╙┌. PRG ╬─╝■╞≡╩╝
  8449. ╡π╡─╬╗╓├íú╚τ╣√┤ª╙┌╗ε╢»╫┤╠¼╡─╩╟┤·┬δ┐Θ, ╘≥╖╡╗╪╡─╨╨
  8450. ║┼╜½╩╟╫ε│⌡╜¿┴ó┤·┬δ┐Θ╡─╙∩╛Σ╡─╨╨║┼íú
  8451. └²╫╙: do newproce
  8452.     ? procline() // ╖╡╗╪1
  8453.     
  8454. ▓╬╝√: @2507 [procname]()
  8455.  
  8456. .2507
  8457. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8458. @25[├ⁿ┴ε╩²╦≈╥²]
  8459.  
  8460. procname()
  8461. ╙∩╖¿: procname (<nActivation>)
  8462. ╙├═╛: ╚╖╢¿╡▒╟░╓┤╨╨╣²│╠╗≥╗ε╢»╒╗╓╨╣²│╠╡─╣²│╠├√íú
  8463. ▓╬╩²:     
  8464. <nActivation>     ╓╕╧≥╥╗╗ε╢»╒╗, ╬¬0 ╩▒▒φ╩╛╗ε╢»╒╗╓╨╡▒╟░╗ε╢»╣²│╠(╫ε
  8465. ─┌▓π╣²│╠) ╗ε╢»╒╗╩╟╥╗╕÷╣²│╠╡─╡≈╙├╣╪╧╡╒╗, ╒╗╓╨┐┐╜ⁿ
  8466. ╒╗╡╫╡─╣²│╠╫┼╓╪╡≈╙├┴╦╒╗╓╨┐┐╜ⁿ╒╗╢Ñ╡─╧α┴┌╣²
  8467. │╠, ╚▒╩í▓╬╩²╓╡╬¬0íú
  8468. ╖╡╗╪╓╡: ╫╓╖√└α╨═, ╣²│╠├√
  8469. ╦╡├≈:     procname (1) ╖╡╗╪╡≈╙├╡▒╟░─ú┐Θ╡─╣²│╠├√íú╚τ╣√┤ª╙┌╗ε╢»╫┤╠¼
  8470. ╡─╩╟┤·┬δ┐Θ, ╘≥╖╡╗╪╡─╣²│╠├√╜½╩╟╫ε│⌡╜¿┴ó┤·┬δ┐Θ
  8471. ╡─╣²│╠íú
  8472. └²╫╙:     if. not. found()
  8473.         clear
  8474.         ú└ 10, 10 say " ┤φ╬≤! ─π╡≈╙├╡─╡Ñ╘¬╢╘╣²│╠"+
  8475.             ;procname() +" ╬▐╨º! "
  8476.         wait space (10) +" ░┤╚╬╥Γ╝ⁿ╖╡╗╪╟░▓╦╡Ñ"
  8477.         cls
  8478.         return
  8479.     endif
  8480.     
  8481. ▓╬╝√: proceline()
  8482.  
  8483. .2238
  8484. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8485. @22[╫╓╖√┤«║»╩²╦≈╥²]
  8486.  
  8487. proper()
  8488. ╙∩╖¿: proper (<cStr>)
  8489. ╙├═╛: ╜½╫╓╖√╓╨╡─├┐╥╗╕÷╡Ñ┤╩╡─═╖╥╗╕÷╫╓╖√╫¬╗╗╬¬
  8490. ┤≤╨┤
  8491. ▓╬╩²: 
  8492.     <cStr>        ┤²╫¬╗╗╫╓╖√┤«
  8493. ╖╡╗╪╓╡: ╫¬╗╗│÷╡─╫╓╖√┤«
  8494. └²╫╙:proper ("no news is good news")    
  8495.         //╖╡╗╪ú║No News Is Good News
  8496.  
  8497. .1738
  8498. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8499. @17[╧╡═│║»╩²╦≈╥²]
  8500.  
  8501. prow()
  8502. ╙∩╖¿: prow()
  8503. ╙├═╛: ╕·╫┘┤≥╙í═╖╡─╩·╓▒╥╞╢»íú
  8504. ▓╬╩²: ╬▐
  8505. ╖╡╗╪╓╡: ╩²╫╓└α╨═, pcol() ║»╩²╖╡╗╪╫ε║≤┤≥╙í╫╓╖√╡─╨╨║┼
  8506. ╦╡├≈: ╓┤╨╨EJECT ├ⁿ┴ε╗≥SETPRC() ║»╩²╜½╩╣╦ⁿ├╟╗╓╕┤│÷│⌡╩╝╫┤╠¼╓╡
  8507. (0 ╓╡)íú
  8508. └²╫╙:// ╧┬╢╬┤·┬δ╜½┤≥╙í│÷winBaseGOOD
  8509.   set device to printer
  8510. ú└10, 5 say "winBase"
  8511. ú└ prow(), pcol() say "GOOD"
  8512.  
  8513. ▓╬╝√: @1736 [pcol](), @1706 [col](), @1741 [row]()
  8514.  
  8515. .1641
  8516. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8517. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  8518.  
  8519. putform()
  8520. ╙∩╖¿: putform (<nRow>, <nCol>, <cFilename>)
  8521. ╙├═╛: ╡≈╚δ▓ó╧╘╩╛BSV ═╝╧±
  8522. ▓╬╩²:    
  8523.     <cFilename>        BSV ═╝╧±╬─╝■├√
  8524.     <nRow>, col>        ═╝╧±┐¬╩╝╧╘╩╛╡─╧≤╦╪╨╨┴╨
  8525. ╖╡╗╪╓╡: ╬▐
  8526.  
  8527. .1739
  8528. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8529. @17[╧╡═│║»╩²╦≈╥²]
  8530.  
  8531. putstr()
  8532. ╙∩╖¿: putstr (<nRow>, <nCol>, <cString>, <nColor>)
  8533. ╙├═╛: ╘┌╓╕╢¿╬╗╓├╥╘╓╕╢¿▒│╛░╔½╩Σ│÷╫╓╖√┤«
  8534. ▓╬╩²: 
  8535.     <nRow, nCol>        ╩Σ│÷╡─╨╨┴╨╫°▒Ω
  8536.     <nColor>         ▒│╛░╔½
  8537.     <cString>         ╩Σ│÷╡─╫╓╖√┤«
  8538. ╖╡╗╪╓╡: NIL
  8539. └²╫╙:// ╘┌╞┴─╗1-16 ╨╨╩Σ│÷▓╗═¼▒│╛░╔½╡─╫╓╖√┤«"WINBASE ═╝╬─┤░┐┌
  8540. "
  8541.  for i=0 to 15
  8542.     putstr (i+1, 10, "WINBASE ═╝╬─┤░┐┌", i)
  8543. next i
  8544.     
  8545. ▓╬╝√: @1012 [windowsay](), @3005[ú└... say... get]
  8546.  
  8547. .2508
  8548. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8549. @25[├ⁿ┴ε╩²╦≈╥²]
  8550.  
  8551. qout|qqout()
  8552. ╙∩╖¿: qout|qqout (<ExpList>)
  8553. ╙├═╛: ╧╘╩╛╗≥┤≥╙í▒φ┤∩╩╜íú
  8554. ▓╬╩²: 
  8555. <ExpList>    ╙├╙┌╧╘╩╛╗≥┤≥╙í╡─▒φ┤∩╩╜▒φ, ▒φ┤∩╩╜╝Σ╙├╢║║┼╖╓╕⌠
  8556. ┐¬íú▒φ┤∩╩╜┐╔╥╘╩╟╚╬║╬└α╨═íú
  8557. ╖╡╗╪╓╡: NIL    
  8558. ╦╡├≈:     qout() ║»╩²╘┌╩Σ│÷╓«╟░, ╫╘╢»╩Σ│÷╥╗╕÷╗╪│╡║═╗╗╨╨╖√, qqout() ║»╩²
  8559. ╘≥▓╗íú
  8560. ▓╬╝√ú║?|??├ⁿ┴ε
  8561. └²╫╙:     qout (" ║»╩²", 120) // ╖╡╗╪║»╩²120
  8562.  
  8563. ▓╬╝√:    ? /??
  8564.  
  8565. .1216
  8566. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8567. @12[▒¿▒φ╔Φ╝╞║»╩²╦≈╥²]
  8568.  
  8569. r
  8570. ╙∩╖¿:     r ( <nRow>)
  8571. ╙├═╛:    ╘┌▒¿▒φ╔Φ╝╞╓╨╚í╡▒╟░┴╨─│╨╨╡─╓╡
  8572. ▓╬╩²:
  8573.     <nRow>    ╡▒╟░┴╨╨╨╓╡
  8574. ╖╡╗╪╓╡: ╩²╓╡
  8575. └²╫╙:║ R ( 6 )
  8576.  
  8577. .2240
  8578. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8579. @22[╫╓╖√┤«║»╩²╦≈╥²]
  8580.  
  8581. rat()
  8582. ╙∩╖¿:     rat (<cSearch>, <cTarget>)
  8583. ╙├═╛:     ╘┌╥╗╕÷╫╓╖√┤«(╘┤┤«) ╓╨╦╤╦≈┴φ╥╗╕÷╫╓╖√┤«╡─╫ε║≤
  8584. ╥╗┤╬│÷╧╓, ▓ó╖╡╗╪╫╙┤«╡─╞≡╩╝╬╗╓├íú
  8585. ▓╬╩²:     
  8586.     <cSearch>    ╦╤╦≈╡─╫╙┤«
  8587.     <cTarget>    ▒╗╦╤╦≈╡─╫╓╖√┤«
  8588. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  8589. └²╫╙:    
  8590. ? rat ("at", "I am at home or at school") // ╖╡╗╪17
  8591. ? at ("at", "I am at home or at school") // ╖╡╗╪6
  8592.  
  8593. ▓╬╝√:     @2203 [at](), @2249 [substr]()    
  8594.  
  8595. .2509
  8596. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8597. @25[├ⁿ┴ε╩²╦≈╥²]
  8598.  
  8599. readexit()
  8600. ╙∩╖¿:     readexit (<lExp>)
  8601. ╙├═╛:     ╘╩╨φ╗≥╜√╓╣╙├╣Γ▒Ω╔╧╥╞╝ⁿ╗≥╣Γ▒Ω╧┬╥╞╝ⁿ└┤╓╒
  8602. ╓╣╥╗╕÷╢┴▓┘╫≈íú
  8603. ▓╬╩²:     
  8604. <lExp>     ╔Φ╓├╠⌡╝■╡─┬▀╝¡▒φ┤∩╩╜, ╚τ╞Σ╓╡╬¬╒µ, ╘╩╨φ╙├╣Γ▒Ω╔╧╥╞
  8605. ╝ⁿ╗≥╣Γ▒Ω╧┬╥╞╝ⁿ└┤╓╒╓╣╥╗╕÷╢┴▓┘╫≈, ╖±╘≥╜√╓╣íú╚▒╩í
  8606. ╬¬╜√╓╣íú
  8607. ╖╡╗╪╓╡: ┬▀╝¡└α╨═
  8608. ╦╡├≈:     ▓╗┤°▓╬╩²╡─readexit() ║»╩²╘┌╘╩╨φ║═╜√╓╣╫┤╠¼╓«╝Σ╜°╨╨
  8609. ╫┤╠¼╟╨╗╗íúreadexit() ║»╩²▓ó▓╗╙░╧∞▓┘╫≈╒▀╩╣╙├╣Γ▒Ω╔╧╥╞╝ⁿ╗≥
  8610. ╣Γ▒Ω╧┬╥╞╝ⁿ╘┌GET ▒Σ┴┐╝Σ╥╞╢», ╦ⁿ╜÷┐╪╓╞╡▒│╠╨≥╬╗╙┌╫ε
  8611. ║≤╥╗╕÷GET ╩▒, ░┤╧┬╣Γ▒Ω╧┬╥╞╝ⁿ╜½╓┤╨╨╡─╢»╫≈╗≥╒▀╡▒│╠
  8612. ╨≥╬╗╙┌╡┌╥╗╕÷GET ╩▒, ░┤╧┬╣Γ▒Ω╔╧╥╞╝ⁿ╜½╓┤╨╨╡─╢»╫≈íú
  8613. └²╫╙:     readexit (.T.) // ╘╩╨φ╙├╣Γ▒Ω╔╧╥╞╝ⁿ╗≥╣Γ▒Ω╧┬╥╞╝ⁿ└┤╓╒╓╣╥╗╕÷
  8614. ╢┴▓┘╫≈
  8615.     conf: =" "
  8616.     ú└ 10, 20 say " ╥¬╨▐╕─┬≡? " get conf
  8617.     read
  8618.     if upper (conf) ="Y"
  8619.         clear
  8620.         loop
  8621.     endif
  8622.     readexit (.F.) // ╜√╓╣╙├╣Γ▒Ω╔╧╥╞╝ⁿ╗≥╣Γ▒Ω╧┬╥╞╝ⁿ└┤╓╒╓╣╥╗╕÷╢┴
  8623. ▓┘╫≈
  8624.     
  8625. ▓╬╝√: @3005[ú└... say... get], @2510 [readinsert](), @1746 [set]()
  8626.  
  8627. .1529
  8628. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8629. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  8630.  
  8631. readkey()
  8632. ╙∩╖¿:     readkey()
  8633. ╙├═╛:     ╚╖╢¿╓╒╓╣╫ε║≤READ ├ⁿ┴ε╡─╗≈╝ⁿíúLASTKEY() ║»╩²╙δreadkey() ║»╩²╖╡╗╪╧α
  8634. ═¼╡─╓╡íú
  8635. ▓╬╩²:     ╬▐
  8636. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  8637. ╦╡├≈:     ╚τ╘┌READ ╓╨├╗╙╨GET ▒Σ┴┐▒╗╕ⁿ╨┬, ╘≥readkey() ║»╩²╖╡╗╪╧┬▒φ╓╨╡─┤·
  8638. ┬δíú
  8639.  
  8640.     ╝ⁿ        ┤·┬δ
  8641.     Up Arrow     5
  8642.     Down Arrow     2
  8643.     PGUP         6
  8644.     PGDN         7
  8645.     CTRL-PGUP     31
  8646.     CTRL-PGDN     30
  8647.     ENTER     15
  8648.     ESC         12
  8649.     ╚τ╣√UPDATED() ║»╩²╖╡╗╪╓╡╬¬.T., ╘≥readkey() ║»╩²╜½╖╡╗╪┤·┬δ╓╡256íú
  8650. └²╫╙: 
  8651. ú└ 12, 20 say " ╨╒├√" get name
  8652. read
  8653. ? readkey() 
  8654. /* ╖╡╗╪15, ▒φ╩╛read ▒╗ENTER ╗≥▒╗╙├╗º╘┌╫ε║≤╥╗╕÷GET ▒Σ┴┐╠ε│Σ╡─╫ε
  8655. ║≤╥╗╕÷┐╒╕±╦∙╒²│ú╜ß╩°*/
  8656.  
  8657. ▓╬╝√:     @1507 [lastkey](), @1763 [updated]()
  8658.  
  8659. .2510
  8660. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8661. @25[├ⁿ┴ε╩²╦≈╥²]
  8662.  
  8663. readinsert()
  8664. ╙∩╖¿:     readinsert ( [<lExp>]
  8665. ╙├═╛:     ╘┌╥╗╕÷╢┴▓┘╫≈╞┌╝Σ╘╩╨φ╗≥╜√╓╣▓σ╚δ─ú╩╜íú
  8666. ▓╬╩²: 
  8667. <lExp>     ╔Φ╓├╠⌡╝■╡─┬▀╝¡▒φ┤∩╩╜, ╚τ╞Σ╓╡╬¬╒µ, ╘╩╨φ╘┌┤«╓╨▓σ╚δ
  8668. ╫╓╖√; ╖±╘≥╜°╚δ╕▓╕╟─ú╩╜íú╚▒╩í╬¬╕▓╕╟─ú╩╜íú▓╗┤°▓╬╩²╡─
  8669. readinsert() ║»╩²╘┌▓σ╚δ║═╕▓╕╟╫┤╠¼╓«╝Σ╜°╨╨╫┤╠¼╟╨╗╗íú
  8670. ╖╡╗╪╓╡: ┬▀╝¡└α╨═
  8671. └²╫╙: readinsert (.T.) // ╔Φ╓├▓σ╚δ─ú╩╜
  8672.     conf: ="abdghusdloskdlskkkejixnm"
  8673.     ú└ 10, 20 say " ╥¬╨▐╕─┬≡? " get conf
  8674.     read
  8675.     readinsert (.F.) // ╣╪▒╒▓σ╚δ─ú╩╜
  8676.     
  8677. ▓╬╝√: @3005[ú└... say... get], @3012[menu to], @3405[set key]
  8678.  
  8679. .2511
  8680. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8681. @25[├ⁿ┴ε╩²╦≈╥²]
  8682.  
  8683. readmodal()
  8684. ╙∩╖¿:     readmodal (<GetList>)
  8685. ╙├═╛:     ╢╘╡▒╟░┐╔╝√╡─GetList ╩²╫Θ╓┤╨╨╥╗╕÷╚½╞┴─╗▒α╝¡íú
  8686. ▓╬╩²:     
  8687.     <GetList>    ╡▒╟░┐╔╝√╡─Get ▒φ
  8688. ╖╡╗╪╓╡: NIL
  8689. └²╫╙:     ú└ 10, 10 say "type: " get var // ╜¿┴ó╥╗╕÷Getlist ╩²╫Θ
  8690.     readmodal (getlist) // ╜°╨╨▒α╝¡
  8691.     getlist: = {} // ╟σ│²getlist
  8692.     ú└ 10, 10 say "type: " get var
  8693.     read
  8694.     
  8695. ▓╬╝√: @3005[ú└... say... get]
  8696.  
  8697. .2512
  8698. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8699. @25[├ⁿ┴ε╩²╦≈╥²]
  8700.  
  8701. readvar()
  8702. ╙∩╖¿: readvar()
  8703. ╙├═╛: ╚╖╢¿GET ╗≥MENU ├ⁿ┴ε╥└╛▌╡─╡▒╟░▒Σ┴┐├√íú
  8704. ▓╬╩²: ╬▐
  8705. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  8706. ╦╡├≈: ╚τ╣√├╗╙╨╣╥╞≡╡─GET ╗≥MENU, ╗≥╒▀├╗╙╨╙╔ACCEPT, INPUT, WAIT, DBEDIT(), ACHOICE() ╥²╞≡╡─WAIT ╫┤╠¼, ╘≥readvar() ║»
  8707. ╩²╖╡╗╪╥╗┐╒┤«íúreadvar() ║»╩²▓╗─▄╢┴╚íLOCAL └α╨═║═STATIC └α╨═╡─▒Σ┴┐├√
  8708. │╞íú
  8709. └²╫╙:     setkey ( k_F4 ,{ | | testget() } )
  8710.     procedure testget()
  8711.         // ╜÷╡▒GET ╓╨╢┴╚í╡─▒Σ┴┐├√╬¬"city" ╗≥"addr" ╩▒,
  8712.     do case // ▓┼╢┴╚í╩²╛▌íú
  8713.     case readvar() =""
  8714.         return
  8715.     case readvar() ="city"
  8716.         ....
  8717.     case readvar() ="addr"
  8718.         ....
  8719.     otherwise
  8720.         return
  8721.     endcase
  8722.     
  8723. ▓╬╝√: @3005[ú└... say... get], @3012[menu to], @3405[set key]
  8724.  
  8725. .2473
  8726. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8727. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  8728.  
  8729. recno()
  8730. ╙∩╖¿: recno()
  8731. ╙├═╛: ╚╖╢¿╝╟┬╝╓╕╒δ╦∙╓╕╧≥╝╟┬╝╡─╬∩└φ╝╟┬╝║┼íú
  8732. ▓╬╩²: ╬▐
  8733. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  8734. └²╫╙:     use my // ╩²╛▌┐Γ╓╨╓┴╔┘╥¬╙╨2 ╕÷╝╟┬╝
  8735.     ? recno() // ╖╡╗╪1
  8736.     skip
  8737.     ? recno() // ╖╡╗╪2
  8738.         
  8739. ▓╬╝√: @2403 [bof](), @2441 [eof](), @1507 [lastkey]()
  8740.  
  8741. .2474
  8742. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8743. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  8744.  
  8745. recsize()
  8746. ╙∩╖¿: recsize()
  8747. ╙├═╛: ╚╖╢¿╩²╛▌┐Γ╓╨├┐╕÷╝╟┬╝╦∙╒╝╛▌┤┼┼╠┐╒╝Σ╡─╫╓
  8748. ╜┌│ñ╢╚íú
  8749. ▓╬╩²: ╬▐
  8750. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  8751. └²╫╙:
  8752. // ╧┬└²╝∞▓ΘA ┼╠╡─╩ú╙α┐╒╝Σ┴┐, ╚τ╨í╙┌─┐▒Ω╬─╝■│ñ╢╚, ╘≥▓╗
  8753. ┐╜▒┤
  8754.  if diskspace (1) < (recsize() *lastrec() +header() +1)
  8755.     cls
  8756.     ú└ 10, 10 "A ┼╠╡─╫╘╙╔┐╒╝Σ▓╗╣╗, ▓╗─▄┐╜▒┤"
  8757. else
  8758.     copy file klgz. dbf to A:
  8759. endif
  8760.  
  8761. ▓╬╝√: @2318 [diskspace](), @2452 [header]()    
  8762.  
  8763. .1818
  8764. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8765. @18[╩²╫Θ║»╩²╦≈╥²]
  8766.  
  8767. rectoa()
  8768. ╙∩╖¿: rectoa()
  8769. ╙├═╛: ╜½╡▒╟░╝╟┬╝╩²╛▌┤µ╓ⁿ╙┌╩²╫Θ╓╨
  8770. ▓╬╩²: ╬▐
  8771. ╖╡╗╪╓╡: ╖╡╗╪╙╔╡▒╟░╝╟┬╝╩²╛▌╫Θ│╔╡─╩²╫Θ
  8772. └²╫╙: 
  8773. arr: = { }
  8774. use datafile
  8775. rectoa (arr)
  8776. ? arr [1]
  8777. ▓╬╝√:@1817 [atorec]()
  8778.  
  8779. .1004
  8780. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8781. @10[┤░┐┌║»╩²╦≈╥²]
  8782.  
  8783. redrawwin()
  8784. ╙∩╖¿: redrawwin()
  8785. ╙├═╛: ╓╪╗¡╦∙╙╨┤░┐┌,╡½╗¡═Ω║≤╥¬╗╓╕┤╡▒╟░┤░┐┌
  8786. ▓╬╩²: ╬▐
  8787. ╖╡╗╪╓╡: NIL
  8788. └²╫╙: ▓╬╝√window()
  8789.  
  8790. .1311
  8791. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8792. @13[╗ß╗░║»╩²╦≈╥²]
  8793.  
  8794. removedlg()
  8795. ╙∩╖¿:    removedlg (<nHandle>)
  8796. ╙├═╛:    │╖╧√╒√╕÷╢╘╗░┐≥
  8797. ▓╬╩²:    
  8798.     <nHandle>    ╢╘╗░┐≥╛Σ▒·
  8799. ╖╡╗╪╓╡:╬▐
  8800. └²╫╙▓╬╝√: @1312 [setdlg] └α
  8801.  
  8802. .1005
  8803. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8804. @10[┤░┐┌║»╩²╦≈╥²]
  8805. removewindow()
  8806. ╙∩╖¿: removewindow()
  8807. ╙├═╛: ╣╪▒╒╡▒╟░┤░┐┌
  8808. ▓╬╩²: ╬▐
  8809. ╖╡╗╪╓╡: NIL
  8810.  
  8811. └²╫╙▓╬╝√: @1006 [shiftwindow](), @1001 [gotowindow]()
  8812.  
  8813. .2241
  8814. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8815. @22[╫╓╖√┤«║»╩²╦≈╥²]
  8816.  
  8817. replicate()
  8818. ╙∩╖¿: replicate (<cExp>, <nExp>)
  8819. ╙├═╛: ░▓▓σ╥╗╕÷╫╓╖√┤«▓ó╜½╦ⁿ╓╪╕┤╓╕╢¿┤╬╩²íú
  8820. ▓╬╩²:     
  8821.     <cExp>    ░▓▓σ╡─╫╓╖√┤«
  8822.     <nExp>    ╓╪╕┤┤╬╩²
  8823. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  8824. └²╫╙:     temp: =replicate ("as", 3)
  8825.     ? temp // ╖╡╗╪asasas
  8826.     
  8827. ▓╬╝√: @2248 [stuff]()
  8828.  
  8829. .2475
  8830. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8831. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  8832.  
  8833. replfld()
  8834. ╙∩╖¿: replfld (<fld_name>, <xFldval>)
  8835. ╙├═╛: ╜½╫╓╢╬<fld_name> ╕│╙Φ<xFldval> ╓╡íú╫ó╥Γ╙├╙┌═°┬τ╡─╩╟netreplfld
  8836. ▓╬╩²: 
  8837.     <fld_name>     ╫╓╢╬├√
  8838.     <xFldval>    ╙δ╫╓╢╬├√└α╨═╧α═¼╡─▒Σ┴┐
  8839. ╖╡╗╪╓╡: │╔╣ª╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.
  8840. └²╫╙: use datafile
  8841.     replfld (fld1, "100")
  8842.  
  8843. .2476
  8844. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8845. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  8846.  
  8847. replvars()
  8848. ╙∩╖¿: replvars()
  8849. ╙├═╛: ╙├└┤╫╘╣½╣▓╫╓╢╬▒Σ┴┐╡─╓╡┤·╠µ╡▒╟░╩²╛▌┐Γ╓╨
  8850. ╡─╫╓╢╬
  8851. ▓╬╩²: ╬▐
  8852. ╖╡╗╪╓╡: nil
  8853. └²╫╙: ▓╬╝√initvars()
  8854.  
  8855. .1740
  8856. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8857. @17[╧╡═│║»╩²╦≈╥²]
  8858.  
  8859. restscreen()
  8860. ╙∩╖¿: restscreen (<nTop>, <nLeft>, <nBot>, <nRight>, <cExp>)
  8861. ╙├═╛: ╗╓╕┤╥╘╟░╙├SAVESCREEN() ║»╩²┤µ╓ⁿ╡─╞┴─╗╟°╙≥íú
  8862. ▓╬╩²: 
  8863.     <nTop, nLeft>    ╞┴─╗╟°╙≥╡─╫≤╔╧╜╟╨╨┴╨╫°▒Ω
  8864.     <nBot,nRight>     ╞┴─╗╟°╙≥╡─╙╥╧┬╜╟╨╨┴╨╫°▒Ωíú
  8865. <cExp>    ╥╗─┌┤µ▒Σ┴┐, ╕├─┌┤µ▒Σ┴┐░ⁿ║¼SAVESCREEN() ║»╩²╡─╩Σ│÷íú
  8866. ╖╡╗╪╓╡: NIL
  8867. ╦╡├≈:     ╗╓╕┤╩▒╡─╛╪╨╬╟°╙≥╞≡╡π╫°▒Ω▓╗╥╗╢¿╙δ╘¡└┤┤µ
  8868. ╓ⁿ╩▒╛╪╨╬╟°╙≥╡─╞≡╡π╫°▒Ω═¼, ╡½╦ⁿ├╟╡─┤≤╨í║═▒╚└²
  8869. ╙ª╕├╛½╚╖╞Ñ┼Σíú
  8870. └²╫╙: 
  8871. // ╧┬╢╬│╠╨≥▒ú┤µ╥╗┤ª╞┴─╗╟°╙≥, ╘┌┴φ╥╗┤ª╧╘╩╛╕├╞┴─╗
  8872. ╟°╙≥
  8873.     my: =savescreen (10, 10, 20, 40)
  8874.     restscreen (5, 20, 15, 50, my)
  8875.     
  8876. ▓╬╝√: @1743 [savescreen](), @1749 [setcolor](), @1634 [loadform](), @1632 [getrname]()        
  8877.  
  8878. .2242
  8879. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8880. @22[╫╓╖√┤«║»╩²╦≈╥²]
  8881.  
  8882. right()
  8883. ╙∩╖¿: right (<cExp>, <nExp>)
  8884. ╙├═╛: ┤╙╫╓╖√┤«(╘┤┤«) ╡─╬▓▓┐┐¬╩╝╠ß╚í╓╕╢¿│ñ╢╚╡─╫╙┤«íú
  8885. ▓╬╩²:     
  8886.     <cExp>    ╘┤┤«
  8887.     <nExp>    ╠ß╚í╡─╫╙┤«│ñ╢╚
  8888. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  8889. └²╫╙:? right ("123456789", 5) // ╖╡╗╪56789
  8890.  
  8891. ▓╬╝√: @2214 [left](), @2249 [substr]()
  8892.  
  8893. .2477
  8894. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8895. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  8896.  
  8897. rlock() |lock()
  8898. ╙∩╖¿: rlock() |lock()
  8899. ╙├═╛: ╙├╘┌═°┬τ╗╖╛│╓╨╦°╢¿╥╗╠╪╩Γ╝╟┬╝íú
  8900. ▓╬╩²: ╬▐
  8901. ╖╡╗╪╓╡: ┬▀╝¡└α╨═
  8902. ╦╡├≈:     rlock() |lock() ║»╩²╓╗╦°╢¿╡▒╟░╝╟┬╝íú╘╩╨φ═°┬τ╔╧╡─╞Σ╦ⁿ╙├╗º
  8903. ╦°╢¿╞Σ╦ⁿ╝╟┬╝íú├┐╕÷╓┤╨╨╦°╢¿▓┘╫≈╡─╙├╗º╓╗─▄╢╘
  8904. ▒╗╦√╦°╢¿╡─╝╟┬╝╜°╨╨╨┤▓┘╫≈íú╥╗╕÷▒╗╦°╢¿╡─╝╟┬╝
  8905. ╥╗╓▒▒ú│╓╦°╢¿╫┤╠¼╓▒╡╜╙├╗º╣╪▒╒╩²╛▌┐Γ, ╗≥╒▀╙╓╦°
  8906. ╢¿┴φ═Γ╥╗╕÷╝╟┬╝, ╗≥╒▀╩╣╙├UNLOCK ├ⁿ┴ε╩═╖┼╒Γ╕÷▒╗╦°╢¿╡─
  8907. ╝╟┬╝íú
  8908. └²╫╙:     dbgoto (12)
  8909.     lock() // ╦°╢¿╝╟┬╝12
  8910.         
  8911. ▓╬╝√: @2460 [lockfile](), @2461 [lockrec]()
  8912.  
  8913. .2020
  8914. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8915. @20[╩²╤º║»╩²╦≈╥²]
  8916.  
  8917. round()
  8918. ╙∩╖¿: round (<nInt>, <nDec>)
  8919. ╙├═╛: ░┤╓╕╢¿╡─╨í╩²╬╗╩², ╢╘╩²╤º▒φ┤∩╩╜╡─╜ß╣√╦─╔ß╬σ
  8920. ╚δíú
  8921. ▓╬╩²:     
  8922.     <nInt>         ╥¬╦─╔ß╬σ╚δ╩²╤º▒φ┤∩╩╜
  8923.     <nDec>    ╨í╩²╬╗╩²
  8924. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  8925. └²╫╙:? round (3. 14259, 4) // ╖╡╗╪3. 1426
  8926. ▓╬╝√: @2013 [int]()
  8927.  
  8928. .1741
  8929. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8930. @17[╧╡═│║»╩²╦≈╥²]
  8931.  
  8932. row()
  8933. ╙∩╖¿: row()
  8934. ╙├═╛: ╖╡╗╪╞┴─╗╣Γ▒Ω╡─╡▒╟░╬╗╓├╡─╨╨╫°▒Ω╓╡íú
  8935. ▓╬╩²: ╬▐
  8936. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  8937. ╦╡├≈:     ╘┌╞┴─╗╔╧╡─╚╬║╬╩Σ│÷, COL() ║═ROW() ║»╩²╢╝╗ß╫╘╢»╕ⁿ╨┬╥╘╖┤
  8938. ╙│╡▒╟░╣Γ▒Ω╬╗╓├íú╓┤╨╨CLEAR, CLEAR ALL, CLS ╜½░╤COL(), ROW() ╓╪╔Φ╬¬0íú
  8939. └²╫╙: // ╧┬╢╬┤·┬δ╜½┤≥╙í│÷winBaseGOOD
  8940. ú└ 10, 5 say "winBase"
  8941. ú└ row(), col() say "GOOD"
  8942.  
  8943. ▓╬╝√: @1736 [pcol](), @1706 [col](), @1738 [prow]()
  8944.  
  8945. .1217
  8946. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8947. @12[▒¿▒φ╔Φ╝╞║»╩²╦≈╥²]
  8948.  
  8949. rtack
  8950. ╙∩╖¿:    rtack ( <nRec>, <cDbfname>, <ncField>, <nLen> )
  8951. ╙├═╛:    ╘┌▒¿▒φ╔Φ╝╞╓╨╚í│÷╡▒╟░╝╟┬╝╡─╫╓╢╬╡─╓╕╢¿─┌
  8952. ╚▌
  8953. ▓╬╩²:
  8954.     <nRec>    ╝╟┬╝║┼
  8955.     <cDbfname>    ╩²╛▌┐Γ├√
  8956.     <ncField>    ╫╓╢╬╨≥║┼╗≥╫╓╢╬├√
  8957.     <nLen>    │ñ╢╚
  8958. ╖╡╗╪╓╡:
  8959. └²╫╙:RTACK (100,  "COUNTRY. DBF" ,2 )
  8960. ▓╬╝√:@1205 [ctack](), @1211 [itack](), @1222 [tack]()
  8961.  
  8962. .2021
  8963. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8964. @20[╩²╤º║»╩²╦≈╥²]
  8965.  
  8966. rtod()
  8967. ╙∩╖¿: rtod (<Rodians>)
  8968. ╙├═╛: ╜½╗í╢╚╫¬╗╗╬¬╜╟╢╚
  8969. ▓╬╩²: 
  8970.     <Rodians>    ╗í╢╚
  8971. ╖╡╗╪╓╡: ╜╟╢╚
  8972. └²╫╙: rtod (3. 1415926)    //╖╡╗╪180
  8973.  
  8974. .2243
  8975. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8976. @22[╫╓╖√┤«║»╩²╦≈╥²]
  8977.  
  8978. rtrim()
  8979. ╙∩╖¿: rtrim (<cExp>)
  8980. ╙├═╛: ╔╛╚Ñ╫╓╖√┤«╓╨╡─╚½▓┐╬▓▓┐┐╒╕±íú
  8981. ▓╬╩²: 
  8982.     <cExp>    ╥¬╚Ñ╡⌠╬▓▓┐┐╒╕±╡─╫╓╖√┤«
  8983. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  8984. └²╫╙:
  8985. ? len ("go home? ") // ╖╡╗╪10
  8986. ? len (rtrim ("go home? ")) // ╖╡╗╪8
  8987.  
  8988. ▓╬╝√: @2201 [alltrim](), @2251 [trim]()
  8989.  
  8990. .1742
  8991. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  8992. @17[╧╡═│║»╩²╦≈╥²]
  8993.  
  8994. runmacro()
  8995. ╙∩╖¿: runmacro (<cFunc>)
  8996. ╙├═╛: ╜½<cFunc> ╫╓╖√┤«╡──┌╚▌╫¬╗╗╬¬║»╩²╘╦╨╨
  8997. ▓╬╩²: 
  8998.     <cFunc>    ║»╩²├√
  8999. ╖╡╗╪╓╡: ║»╩²╘╦╨╨╜ß╣√
  9000. └²╫╙:? runmacro ("int (2. 5) ")    //╖╡╗╪2
  9001.  
  9002. .1642
  9003. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9004. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  9005.  
  9006. saveform()
  9007. ╙∩╖¿: saveform (<nRow1>, <nCol1>, <nRow2>, <nCol2>, <cFilename>)
  9008. ╙├═╛: ░╤╓╕╢¿╡─╞┴─╗╟°╙≥┤µ╓ⁿ╡╜╬─╝■╓╨
  9009. ▓╬╩²:     
  9010.     <nRow1, nCol1>     ╓╕╢¿╡─╞┴─╗╟°╙≥╫≤╔╧╜╟╫°▒Ω;
  9011.     <nRow2, nCol2>     ╓╕╢¿╡─╞┴─╗╟°╙≥╙╥╧┬╜╟╫°▒Ω;
  9012.     <cFilename>         ╬─╝■├√, ┐╔┤°┬╖╛╢
  9013. ╖╡╗╪╓╡:╬▐
  9014. └²╫╙: 
  9015. function    save()
  9016.     saveform (9,19,17,51, "bsv1.bsv")
  9017.     loadform ( "bsv1.bsv")
  9018. return nil
  9019.  
  9020. ▓╬╝√: @1634 [loadform](), @1632 [getrname]()
  9021.  
  9022. .1743
  9023. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9024. @17[╧╡═│║»╩²╦≈╥²]
  9025.  
  9026. savescreen()
  9027. ╙∩╖¿: savescreen (<nTop>, <nLeft>, <nBot>, <nRight>)
  9028. ╙├═╛: ╜½╞┴─╗╔╧╡─╥╗╕÷╛╪╨╬╟°╙≥┤µ╚δ─┌┤µ╥╘▒π╘┌║≤
  9029. ├µ╜°╨╨╗╓╕┤íú
  9030. ▓╬╩²:    
  9031.     <nTop,nLeft>        ╛╪╨╬╟°╙≥╡─╫≤╔╧╜╟╡─╨╨┴╨╫°▒Ωíú
  9032.     <nBot,nRight>         ╛╪╨╬╟°╙≥╡─╙╥╧┬╜╟╡─╨╨┴╨╫°▒Ωíú
  9033. ╖╡╗╪╓╡: ╫╓╖√└α╨═,╛Σ▒·
  9034. ╫ó╥Γ: ╡▒╙├╗º╩╣╙├╡─▓╗╩╟IBM-PC ╩╙╞┴╟²╢»│╠╨≥╩▒, ┐╔─▄╗ß▓╗╓º
  9035. │╓savescreen() ║»╩²íú
  9036. └²╫╙:
  9037. // ╧┬╢╬│╠╨≥▒ú┤µ╥╗┤ª╞┴─╗╟°╙≥, ╘┌┴φ╥╗┤ª╧╘╩╛╕├╞┴─╗
  9038. ╟°╙≥
  9039.     my: =savescreen (10, 10, 20, 40)
  9040.     restscreen (5, 20, 15, 50, my)
  9041.     
  9042. ▓╬╝√: @1740 [restscreen](), @1749 [setcolor](), @1642 [saveform](), @1633 [getwname]()
  9043.  
  9044. .1530
  9045. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9046. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  9047.  
  9048. scankey()
  9049. ╙∩╖¿: scankey()
  9050. ╙├═╛: ╚╖╢¿╚╬║╬░┤╝ⁿ╡─ASCII ┬δ╓╡
  9051. ▓╬╩²: ╬▐
  9052. ╖╡╗╪╓╡: ╩²╓╡
  9053. └²╫╙: scsnkey( )
  9054.  
  9055. .1744
  9056. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9057. @17[╧╡═│║»╩²╦≈╥²]
  9058.  
  9059. scroll()
  9060. ╙∩╖¿: scroll (<nTop>, <nLeft>, <nBot>, <nRight>, <nExp>)
  9061. ╙├═╛: ╕∙╛▌╓╕╢¿╨╨╩²╣÷╢»┤░┐┌─┌╡──┌╚▌íú
  9062. ▓╬╩²: 
  9063.     <nTop,nLeft>        ┤░┐┌╡─╫≤╔╧╜╟╡─╨╨┴╨╫°▒Ω
  9064.     <nBot,nRight>         ┤░┐┌╡─╙╥╧┬╜╟╡─╨╨┴╨╫°▒Ω
  9065. <nExp>     ╣÷╢»╡─╨╨╩²íú╡▒<nExp> ╬¬╒², ╧≥╔╧╣÷╢»┤░┐┌; ╡▒<nExp> ╬¬╕║, ╘≥╧≥╧┬╣÷╢»┤░
  9066. ┐┌; ╡▒<nExp> ╬¬0, ╘≥╟σ│²┤░┐┌íú
  9067. ╖╡╗╪╓╡: NIL        
  9068. ╦╡├≈:     ╙├╗º╚τ╣√╧δ╘┌┤░┐┌╓╨╙╔scroll() ║»╩²╔·│╔╡─┐╒╨╨╔╧╠φ
  9069. ╝╙─┌╚▌, ╘≥▒╪╨δ╙├╙∩╛Σ└┤╩Σ│÷╒Γ╨⌐─┌╚▌íú
  9070. └²╫╙: ú└ 11, 21 say" ┤µ┼╠"
  9071.     ú└ 12, 21 say" ╡≈│÷"
  9072.     ú└ 13, 21 say" ═╦│÷"
  9073.     scroll (11, 20, 15,40, 1)
  9074.  
  9075. .1531
  9076. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9077. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  9078.  
  9079. scrollock()
  9080. ╙∩╖¿: scrollock()
  9081. ╙├═╛: ┤≥┐¬Scroll Lock ╝ⁿ
  9082. ▓╬╩²: ╬▐
  9083. ╖╡╗╪╓╡: ╬▐
  9084.  
  9085. .1532
  9086. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9087. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  9088.  
  9089. scrolloff()
  9090. ╙∩╖¿: scrolloff()
  9091. ╙├═╛: ╣╪▒╒Scroll Lock ╝ⁿ
  9092. ▓╬╩²: ╬▐
  9093. ╖╡╗╪╓╡: ╬▐
  9094.  
  9095. .1926
  9096. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9097. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  9098.  
  9099. seconds()
  9100. ╙∩╖¿: seconds()
  9101. ╙├═╛: ╖╡╗╪╫╘╬τ╥╣┐¬╩╝╡╜╧╓╘┌╬¬╓╣╡─╩▒╝Σ╝Σ╕⌠, ╡Ñ╬╗░┤
  9102. ├δ╝╞╦πíú
  9103. ▓╬╩²: ╬▐
  9104. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  9105. └²╫╙:// ╧┬╥╗╢╬┤·┬δ╕°│÷╥╗╓╓▓Γ╩╘╥╗╢╬│╠╨≥╘╦╨╨╩▒╝Σ
  9106. ╡─╖╜╖¿
  9107.      s1: =seconds()
  9108.     for i: =1 to 10000
  9109.     ? i
  9110.     next i
  9111.     s2: =seconds()
  9112.     cls
  9113.     ú└ 10, 20 say " ╙├┴╦"+str (s2-s1) +" ├δ"
  9114.     
  9115. ▓╬╝√: @1929 [time]()
  9116.  
  9117. .1927
  9118. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9119. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  9120.  
  9121. sectoday()
  9122. ╙∩╖¿: sectoday (<seconds>)
  9123. ╙├═╛: ╜½├δ╩²╫¬╗╗╬¬╠∞╩²
  9124. ▓╬╩²: 
  9125.     <seconds>    ├δ╩²
  9126. ╖╡╗╪╓╡: ╠∞╩²
  9127. └²╫╙:? sectoday (4000000 )        //╖╡╗╪46
  9128.  
  9129. .1928
  9130. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9131. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  9132.  
  9133. sectotime()
  9134. ╙∩╖¿: sectotime (<seconds>)
  9135. ╙├═╛: ╜½├δ╩²╫¬╗╗╬¬╩▒╝Σ
  9136. ▓╬╩²: 
  9137.     <seconds>    ├δ╩²
  9138. ╖╡╗╪╓╡: ╩▒╝Σ╫╓╖√┤«
  9139. └²╫╙: sectotime (3600)    //╖╡╗╪01:00:00
  9140.  
  9141. .2478
  9142. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9143. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  9144.  
  9145. select()
  9146. ╙∩╖¿: select ( [<cExp>])
  9147. ╙├═╛: ╚╖╢¿╡▒╟░╣ñ╫≈╟°íú
  9148. ▓╬╩²:
  9149. [<cExp>]    ░ⁿ║¼▒╗╤í╘±╣ñ╫≈╟°▒≡├√╡─▒φ┤∩╩╜íú╚▒╩í╖╡╗╪╡▒╟░
  9150. ╣ñ╫≈╟°╡─╣ñ╫≈╟°╨≥║┼íú
  9151. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  9152. └²╫╙: 
  9153. use file_1
  9154. old_area: =select()
  9155. old_ailas: =alias()
  9156. select 3
  9157. use file_2
  9158. ? old_area // ╖╡╗╪1
  9159. ? old_ailas // ╖╡╗╪file_1
  9160. select (old_area) //select ╘┌╒Γ╢∙╩╟├ⁿ┴ε, └¿║┼╩╟║Ω╡─╥¬╟≤
  9161. ? select() // ╖╡╗╪1
  9162. ? alias() // ╖╡╗╪file_1
  9163. select (old_area) //select ╘┌╒Γ╢∙╩╟├ⁿ┴ε, └¿║┼╩╟║Ω╡─╥¬╟≤
  9164. // ╒Γ╕÷├ⁿ┴ε╘┌╒Γ╢∙╜½▓·╔·╥╗╕÷└α╨═▓╗╞Ñ┼Σ╡─╘╦╨╨
  9165. ▓╬╝√: elect, @2402 [alias](), dbselect()
  9166.  
  9167. .1745
  9168. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9169. @17[╧╡═│║»╩²╦≈╥²]
  9170.  
  9171. sernum()
  9172. ╙∩╖¿: sernum()
  9173. ╙├═╛: ╚í╨≥┴╨║┼
  9174. ▓╬╩²: ╬▐
  9175. ╖╡╗╪╓╡: ╨≥┴╨║┼╫╓╖√┤«
  9176.  
  9177. └²╫╙: ú└ 20, 12 say " ╨≥┴╨║┼╩╟"+sernum( ) 
  9178.  
  9179. .1746
  9180. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9181. @17[╧╡═│║»╩²╦≈╥²]
  9182.  
  9183. set()
  9184. ╙∩╖¿: set (<nSelector>, [<expNewSetting>)
  9185. ╙├═╛: ╚╖╢¿║═╕─▒ΣWINBASE ╡─SET ├ⁿ┴ε╗≥║»╩²╡─╫┤╠¼íú
  9186. ▓╬╩²:     
  9187.     <nSelector>         winbase.inc ═╖╬─╝■╓╨╡─╔∙├≈│ú╩²íú
  9188. <expNewSetting>]    ╥╗╕÷▒φ┤∩╩╜╗≥╬─╫╓┤«(╙├└¿║┼└¿╞≡), ╙├└┤╠ß╣⌐╨┬╡─╔Φ
  9189. ╓├íú
  9190. ╖╡╗╪╓╡: ╖╡╗╪░ⁿ║¼╡▒╟░╔Φ╓├╡─▒φ┤∩╩╜
  9191. ╦╡├≈:     SET() ║»╩²╙╨┴╜╕÷╗∙▒╛╙├═╛: ▓Γ╩╘SET ├ⁿ┴ε╡─╔Φ╓├╙δ╩╡╝╩╖╧
  9192. │²─│╕÷SET ├ⁿ┴ε╡─╔Φ╓├╥╗░π, SET ├ⁿ┴ε╫¬╗»╬¬winbase.inc ═╖╬─╝■╓╨╡─╔∙├≈
  9193. │ú╩²╓╗╨Φ╘┌SET ├ⁿ┴ε╓╨╝╙┴╜╧┬╗«╧▀, ╚τ├ⁿ┴εSET EXACT ╫¬╗»╬¬╧α╙ª
  9194. │ú╩²_SET_EXECTíúwinbase.cin ═╖╬─╝■╓╨╗╣░ⁿ└¿╥╗│ú╩²_SET_COUNT ╙├└┤╔∙├≈╡▒╟░╡─SET ╔Φ
  9195. ╓├╩²─┐íú
  9196. └²╫╙: // ╩²╫ΘMY_Array ╓╨╜½░ⁿ└¿╡▒╟░╦∙╙╨╡─SET ╔Φ╓├
  9197. i: =1
  9198. do while i<_SET_COUNT
  9199.     MY_Array [i]: =set (i)
  9200.     i++
  9201. enddo
  9202.     
  9203. .2364
  9204. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9205. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  9206.  
  9207. setattr()
  9208. ╙∩╖¿: setattr (<cFilename>, <idFileattr>)
  9209. ╙├═╛: ╔Φ╓├╬─╝■╩⌠╨╘
  9210. ▓╬╩²:    
  9211.     <cFilename>     ╬─╝■├√
  9212. <idFileattr>    ╬─╝■╩⌠╨╘, ┐╔╥╘╩╟╥╘╧┬│ú┴┐, ▓ó┐╔╩╣╙├BINOR() ║»╩²╜½╒Γ╨⌐╩⌠╨╘
  9213. ╫Θ║╧╞≡└┤íú
  9214. _A_ARCH    ┤µ╡╡╬─╝■
  9215. _A_HIDDEN    ╥■║¼╬─╝■
  9216. _A_NORMAL    ╒²│ú
  9217. _A_RONLY    ╓╗╢┴╬─╝■
  9218. _A_SUBDIR    ─┐┬╝╩⌠╨╘
  9219. _A_SYSTEM    ╧╡═│╬─╝■
  9220. _A_VOLID    ╛φ▒Ω
  9221.  
  9222. ╖╡╗╪╓╡: ╬▐
  9223. └²╫╙: setattr ("user. dbf", binor (32, 1))
  9224. ▓╬╝√:@2355 [getattr]()
  9225.  
  9226. .1747
  9227. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9228. @17[╧╡═│║»╩²╦≈╥²]
  9229.  
  9230. setblink()
  9231. ╙∩╖¿: setblink (<lExp>)
  9232. ╙├═╛:     ┐¬╣╪SETCOLOR() ║»╩²▒φ┤∩╩╜╓╨╦∙╙├╡─╨╟║┼(*), ╕├╨╟║┼▒φ╩╛╘┌
  9233. ╔┴╦╕╩⌠╨╘╙δ▒│╛░┴┴╢╚╩⌠╨╘╓«╝Σ╡─╥╗╓╓╤í╘±ú¿╙├╙┌╬─▒╛
  9234. ─ú╩╜ú⌐íú
  9235. ▓╬╩²:     
  9236. <lExp>     ╥╗┬▀╝¡╓╡, ╚í.T. (╚▒╩í╓╡), ╘≥SETCOLOR() ║»╩²╓╨╨╟║┼▒φ╩╛╔┴╦╕; ╚í.F., SETCOLOR() ║»╩²╓╨╨╟║┼▒φ
  9237. ╩╛▒│╛░┴┴╢╚íú
  9238. ╖╡╗╪╓╡: ┬▀╝¡└α╨═, SETCOLOR() ║»╩²╖╡╗╪╓╡╬¬╕├║»╩²╓┤╨╨╩▒╖ó╔·╫≈
  9239. ╙├╡─╔Φ╓├╓╡íú
  9240. ╦╡├≈: ┴╜╩⌠╨╘▓╗─▄═¼╩▒│÷╙┌╗ε╢»╫┤╠¼íú
  9241. └²╫╙:     // ╧┬╢╬┤·┬δ╜½╘┌┴┴╗╞▒│╛░╔½╔╧▓·╔·║┌╤╒╔½
  9242. setblink (.T.)
  9243. setcolor ("N/GR*")
  9244. clear
  9245. ? "BAD"
  9246.     
  9247. ▓╬╝√: @1749 [setcolor]()
  9248.  
  9249. .1533
  9250. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9251. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  9252.  
  9253. sethotkey()
  9254. ╙∩╖¿:sethotkey (<idKey>, <cFunc>)
  9255. ╙├═╛:     ╔Φ╓├╚╚╝ⁿ╣ª─▄, ╕├╣ª─▄╙├╙┌mousekey ┐╪╓╞╡─╤¡╗╖, ╚⌠Func ╖╡╗╪╖╟┐╒
  9256. ╩²╓╡, ╘≥╫≈╬¬mousekey ╡─╖╡╗╪╓╡, ╖±╘≥mousekey ╖╡╗╪key ╓╡íú
  9257. ▓╬╩²:     
  9258.     <idKey>    ╬¬╚╚╝ⁿ(winbase.inc ╓╨╡─╦∙╙╨╝ⁿ)
  9259. <cFunc>    ╬¬╙δ╚╚╝ⁿ╢╘╙ª╡─╣ª─▄║»╩²├√, ╚⌠╬¬┐╒, ╘≥╔╛│²╕├╚╚╝ⁿíú
  9260. ╖╡╗╪╓╡: ╬▐
  9261. └²╫╙: #include "winbase.inc"
  9262.  
  9263. PROCEDURE MAIN (arv1, arv2)
  9264.  
  9265.     windowstart()    
  9266.     mousekey: ="nmouse() "
  9267.     sethotkey (K_ALT_1, "wmsg() ")
  9268.     msgbox ("press ALT_1 see what happen", "", 1)
  9269.     mouse (1)
  9270.     ? inkey (0)
  9271.     ? inkey (0)
  9272.     windowexit()    //Winbase ═╦│÷
  9273. RETURN
  9274.  
  9275. function wmsg()
  9276.     msgbox ("press K_ALT_1", "", 1)
  9277. return nil
  9278.  
  9279. function nmouse()
  9280.     ú└1, 1 say str (mouserow()) +str (mousecol())
  9281. return 0
  9282.  
  9283. .1748
  9284. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9285. @17[╧╡═│║»╩²╦≈╥²]
  9286.  
  9287. setcancel()
  9288. ╙∩╖¿: setcancel (<lExp>]
  9289. ╙├═╛: ╘╩╨φ╗≥╜√╓╣╩╣╙├ALT-C ╫≈╬¬╙ª╙├│╠╨≥╡─═╦│÷╝ⁿíú
  9290. ▓╬╩²: 
  9291. <lExp>    ┬▀╝¡╓╡, ╚í.T. ╘≥╘╩╨φ╩╣╙├ALT-C └┤╜ß╩°╙ª╙├│╠╨≥; ╖±╘≥, ╜√╓╣╩╣╙├ALT-C ╫≈╬¬
  9292. ╙ª╙├│╠╨≥╡─═╦│÷╝ⁿú¿╙├windowstart( ) │⌡╩╝╗»║≤╚▒╩í╫┤╠¼ú⌐íú
  9293. ╖╡╗╪╓╡: ┬▀╝¡└α╨═íú
  9294. ╦╡├≈: ▓╗┤°▓╬╩²╡─setcancel() ║»╩²╘┌╘╩╨φ║═╜√╓╣╫┤╠¼╓«╝Σ╜°╨╨
  9295. ╫┤╠¼╟╨╗╗íú
  9296. └²╫╙: setcancel (.F.) //ALT-C ▓╗─▄═╦│÷│╠╨≥
  9297. ▓╬╝√: quit, set()
  9298.  
  9299. .1749
  9300. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9301. @17[╧╡═│║»╩²╦≈╥²]
  9302.  
  9303. setcolor()
  9304. ╙∩╖¿: setcolor (<cExp>)
  9305. ╙├═╛:     ┤µ╓ⁿ╡▒╟░╢¿╥σ╡─╤╒╔½╔Φ╓├, ╗≥╒▀╬¬╧┬╥╗╕÷╞┴─╗╩Σ
  9306. │÷╢¿╥σ╤╒╔½╔Φ╓├íú
  9307. ▓╬╩²: 
  9308. <cExp>    ╢¿╥σ╤╒╔½╔Φ╓├╡─╫╓╖√┤«íú╕├╫╓╖√┤«╡─╕±╩╜╬¬ú║<standard>,[<enhanced>][,<border>],[<background>] [,<unselect>] ╞Σ╓╨<standard>╩╟╓≈╟░
  9309. ╛░╔½║═▒│╛░╔½╡─╤╒╔½╢╘ú╗[<enhanced>] ╩╟... get ╓╨get╫╙╛Σ╓╕╢¿╡─╤╒╔½╢╘ú╗<border>╩╟╞┴
  9310. ─╗▒▀┐≥╤╒╔½ú╗╢╘╙┌<background>┤≤╢α╩²╧╘╞≈▓╗╓º│╓╕├▓╬╩²ú╗<unselect>╩╟│²get ═Γ╡─
  9311. ╞Σ╦ⁿ▓┐╖╓╓╕╢¿╡─╤╒╔½ú╗<cExp> ╕≈╤╒╔½╢╘╟░╥╗▓┐╖╓╬¬╟░╛░╔½
  9312. ú¼║≤╥╗▓┐╖╓╬¬▒│╛░╔½ú¼╦ⁿ├╟╙├í░/í▒╖╓┐¬íú
  9313. ╖╡╗╪╓╡: ╫╓╖√└α╨═, ╡▒╟░╢¿╥σ╡─╤╒╔½╔Φ╓├íú
  9314. ╦╡├≈: ╧┬├µ╩╟╤╒╔½┤·┬δíú
  9315.     ╤╒╔½╗≥╩⌠╨╘║┼    ╖√║┼    ⌐º╤╒╔½╗≥╩⌠╨╘║┼    ╖√║┼
  9316.     ║┌    0         N    ⌐º╗╥            N+
  9317.     └╢    1         B    ⌐º╗╞            GR+
  9318.     ┬╠    2         G    ⌐º┐╒░╫        X
  9319.     ╟α    3         BG    ⌐º╧┬╗«╧▀         U
  9320.     ║∞    4         R    ⌐º╖┤╩╙        I
  9321.     ╫╧║∞    5        RB    ⌐º╔┴╦╕        *
  9322.     ╫╪    6         GR    ⌐º╕▀┴┴╢╚        +
  9323.     ░╫    7         W    ⌐º
  9324.  
  9325. └²╫╙: oldcolor: =setcolor ("w+/b, r/w, /n, n, r/w") // ┤µ╓ⁿ╛╔╔Φ╓├║═╢¿╥σ╨┬╔Φ╓├
  9326.     ? oldcolor // ╖╡╗╪"w+/b, r/w, /n, n, r/w"
  9327.  
  9328. ▓╬╝√: @3017[set color], @1746 [set()]
  9329.  
  9330. .1750
  9331. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9332. @17[╧╡═│║»╩²╦≈╥²]
  9333.  
  9334. setcursor()
  9335. ╙∩╖¿: setcursor (<nCursorShape>)
  9336. ╙├═╛: ╕─▒Σ╣Γ▒Ω╡─╨╬╫┤íú
  9337. ▓╬╩²: 
  9338.     <nCursorShape>    ╓╕╢¿╣Γ▒Ω╨╬╫┤╡─╩²╫╓▓╬╩²íú
  9339. ╖╡╗╪╓╡: ╩²╫╓└α╨═, ╡▒╟░╢¿╥σ╡─╣Γ▒Ω╨╬╫┤╡─╩²╫╓▓╬╩²
  9340. ╦╡├≈: setcursor() ║»╩²╙╨5 ╕÷║╧╖¿▓╬╩²:
  9341.     ╣Γ▒Ω└α╨═            winbase.inc ╓╨╡─╢¿╥σ
  9342.     ╣╪▒╒╣Γ▒Ω            SC_NONE
  9343.     ╒²│ú(╧┬╗«╧▀) ╣Γ▒Ω        SC_NORMAL
  9344.     ╨í╖╜┐Θ(╧┬░δ┐Θ) ╣Γ▒Ω    SC_INSERT
  9345.     ┤≤╖╜┐Θ╣Γ▒Ω            SC_SPECIAL1
  9346.     ╨í╖╜┐Θ(╔╧░δ┐Θ) ╣Γ▒Ω    SC_SPECIAL2
  9347. └²╫╙: old_cur: =setcursor (3) 
  9348.         // ╕─▒Σ╣Γ▒Ω▓ó╬¬╫ε║≤╡─╗╓╕┤▒ú┤µ╡▒╟░╓╡
  9349.  
  9350. ▓╬╝√: set()
  9351.  
  9352.  
  9353. .1312
  9354. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9355. @13[╗ß╗░║»╩²╦≈╥²]
  9356.  
  9357. setdlg()
  9358. setdlg    ╙├╙┌╔Φ╓├╥╗╕÷╢╘╗░┐≥, ╡½▓╗╝ñ╗ε╦ⁿ, ╒δ╢╘▓╗═¼└α╨═╡─╢╘
  9359. ╗░┐≥, ╙├╖¿╥α▓╗═¼, ╛▀╠σ╚τ╧┬:
  9360. 1. CHECK └α(╢α╧ε╤í╘±╢╘╗░┐≥)
  9361. ╙∩╖¿:    setdlg (<nHandle>, "CHECK", <cTitle>, <aEditarr>,<nNum_col>,;
  9362.          <nRow>, <nCol>, <nInitpos>)
  9363. ▓╬╩²:    <nHandle>    ╢╘╗░┐≥╛Σ▒·
  9364.     <cTitle>    ╢╘╗░┐≥▒Ω╠Γ
  9365.     <aEditarr>     ▒α╝¡╩²╫Θ, ╕±╩╜╬¬
  9366.              { {< ├Φ╩÷1>, <0 ╗≥1>},... {< ├Φ╩÷n>, <0 ╗≥1>}}
  9367.             ╞Σ╓╨0 ▒φ╩╛▓╗╤í, 1 ▒φ╩╛╤í╓╨
  9368.     <nNumcol>    ╧╘╩╛│÷╡─┴╨╩²
  9369.     <nRow>    ╨╨╫°▒Ω
  9370.     <nCol>        ┴╨╫°▒Ω
  9371.     <nInitpos>    │⌡╩╝╗»╬╗╓├(1=<nInitpos=< ╧ε─┐╩²)
  9372. └²╫╙:     
  9373. #include "winbase.inc"
  9374. memvar dlg_succ
  9375.  
  9376. procedure main()
  9377. local init_pos: =3
  9378. private setdlg_ret, dlg_succ
  9379.  
  9380.     windowstart()
  9381.     msgbox (" ╔Φ╓├╢α╧ε╤í╘±╢╘╗░┐≥", " ╙ª╙├║»╩²SETDLG() └α", 1)
  9382.     setdlg_ret=check_demo (init_pos)
  9383.     if. not. dlg_succ
  9384.         msgbox (" ╔Φ╓├╢α╧ε╤í╘±╢╘╗░┐≥╩º░▄", "", 1)
  9385.     else
  9386.         if setdlg_ret
  9387.          msgbox (" ╢α╧ε╤í╘±╢╘╗░┐≥╖╡╗╪╓╡:.T. ",;
  9388.             "SELECTION"+str (init_pos, 1) +" ▒╗╤í╓╨", 1)
  9389.         else
  9390.             msgbox (" ╢α╧ε╤í╘±╢╘╗░┐≥╖╡╗╪╓╡:.F. ",;
  9391.                 "SELECTION"+str (init_pos, 1) +" ╬┤╤í╓╨", 1)
  9392.         endif
  9393.     endif
  9394.     windowexit()
  9395. return
  9396.  
  9397. function check_demo (init_pos)
  9398. private ret
  9399.  
  9400.     dlg_succ=setdlg (19687, "check", " ╢α╧ε╤í╘±",;
  9401.      { {"SELECTION1", 0}, {"SELECTION2", 0}, {"SELECTION3", 1}}, 2, 5, 21, init_pos)
  9402.     makedlg (19687, " ╢α╧ε╤í╘±╢╘╗░┐≥")
  9403.     ret=getdlg (19687, "check", " ╢α╧ε╤í╘±", init_pos)
  9404.     removedlg (19687)
  9405. return ret
  9406. ╖╡╗╪╓╡: │╔╣ª╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.
  9407.  
  9408. 2. RADIO └α(╡Ñ╧ε╤í╘±╢╘╗░┐≥)
  9409. ╙∩╖¿:    setdlg (<nHandle>, "RADIO", <cTitle>, <aEditarr>,;
  9410.         <nNumcol>, <nRow>, <nCol>, <nInitpos>)
  9411. ▓╬╩²:    <nHandle>        ╢╘╗░┐≥╛Σ▒·
  9412.     <cTitle>        ╢╘╗░┐≥▒Ω╠Γ
  9413.     <aEditarr>         ╩²╫Θ╕±╩╜╬¬{< ├Φ╩÷1>,... < ├Φ╩÷n>}
  9414.     <nNumcol>        ╧╘╩╛│÷╡─┴╨╩²
  9415.     <nRow>        ╨╨╫°▒Ω
  9416.     <nCol>            ┴╨╫°▒Ω
  9417.     <nInitpos>        │⌡╩╝╗»╬╗╓├(1=<nInitpos=< ╧ε─┐╩²)
  9418. └²╫╙:    
  9419. #include "winbase.inc"
  9420. memvar dlg_succ
  9421.  
  9422. procedure main()
  9423. private setdlg_ret, dlg_succ
  9424.  
  9425.     windowstart()
  9426.     msgbox ("╔Φ╓├╡Ñ╧ε╤í╘±╢╘╗░┐≥", " ╙ª╙├║»╩²SETDLG() └α", 1)
  9427.     setdlg_ret=radio_demo (3)
  9428.     if. not. dlg_succ
  9429.         msgbox (" ╔Φ╓├╡Ñ╧ε╤í╘±╢╘╗░┐≥╩º░▄", "", 1)
  9430.     else
  9431.         msgbox (" ╡Ñ╧ε╤í╘±╢╘╗░┐≥╖╡╗╪╓╡: "+str (setdlg_ret, 1),;
  9432.             " ╤í╓╨SELECTION"+str (setdlg_ret, 1), 1)
  9433.     endif
  9434.     windowexit()
  9435. return
  9436.  
  9437. function radio_demo (init_pos)
  9438. private ret
  9439.  
  9440.     dlg_succ=setdlg (19687, "radio", " ╡Ñ╧ε╤í╘±",;
  9441.      {"SELECTION1", "SELECTION2", "SELECTION3"}, 2, 5, 21, init_pos)
  9442.     makedlg (19687, " ╡Ñ╧ε╤í╘±╢╘╗░┐≥")
  9443.     ret=getdlg (19687, "radio", " ╡Ñ╧ε╤í╘±", init_pos)
  9444.     removedlg (19687)
  9445. return ret
  9446.  
  9447. ╖╡╗╪╓╡:│╔╣ª╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.
  9448.  
  9449. 3. EDIT └α(╩²╛▌▒α╝¡╢╘╗░┐≥)
  9450. ╙∩╖¿:    setdlg (<nHandle>, "EDIT", <cTitle>, <aEditarr>,;
  9451.     <nNumcol>, <nWidth>, <nRow>, <nCol>)
  9452. ▓╬╩²:    <nHandle>        ╢╘╗░┐≥╛Σ▒·
  9453.     <cTitle>        ╢╘╗░┐≥▒Ω╠Γ
  9454. <aEditarr>        ╩²╫Θ╕±╩╜╬¬{ (< ├Φ╩÷1>, < │⌡╓╡1>},... < ├Φ╩÷n>, {│⌡╓╡    n>}} │⌡╓╡┐╔╥╘╩╟╩²╓╡, ╫╓
  9455. ╖√┤«, ▒φ┤∩╩╜
  9456.     <nWidth>        ▒α╝¡┐φ╢╚
  9457.     <nRow>        ╨╨╫°▒Ω
  9458.     <nCol>            ┴╨╫°▒Ω
  9459. └²╫╙:     
  9460. #include "winbase.inc"
  9461. memvar dlg_succ
  9462.  
  9463. procedure main()
  9464. private selc: =3
  9465. private setdlg_ret, dlg_succ
  9466.  
  9467.     windowstart()
  9468.     msgbox ("╔Φ╓├╩²╛▌▒α╝¡╢╘╗░┐≥", " ╙ª╙├║»╩²SETDLG() └α", 1)
  9469.     do while.T.
  9470.         selc=inputbox (" ╩Σ╚δ╖╡╗╪╨≥║┼(1, 2, 3) ", "", 1, 1)
  9471.         if selc>=1. and. selc<=3
  9472.             exit
  9473.         endif
  9474.     enddo
  9475.     setdlg_ret=edit_demo (selc)
  9476.     if. not. dlg_succ
  9477.             msgbox (" ╔Φ╓├╩²╛▌▒α╝¡╢╘╗░┐≥╩º░▄", "", 1)
  9478.     else
  9479.     do case
  9480.     case selc==1
  9481.         msgbox ("╩²╛▌▒α╝¡╢╘╗░┐≥╖╡╗╪╫╓╖√┤«: "+setdlg_ret, "", 1)
  9482.     case selc==2
  9483.         msgbox ("╩²╛▌▒α╝¡╢╘╗░┐≥╩²╓╡: "+alltrim (str (setdlg_ret)), "", 1)
  9484.     case selc==3
  9485.         msgbox ("╩²╛▌▒α╝¡╢╘╗░┐≥╚╒╞┌╓╡: "+dtoc (setdlg_ret), "", 1)
  9486.     endcase
  9487.     endif
  9488.     windowexit()
  9489. return
  9490.  
  9491. function edit_demo (selc)
  9492. private ret
  9493.  
  9494.     dlg_succ=setdlg (19687, "edit", " ╩²╛▌▒α╝¡",;
  9495.          { {"string", "WINBASE"}, ;{"number", 0}, ;
  9496.         {"function", date()}}, 1, 10, 8, 30)
  9497.     makedlg (19687, " ╩²╛▌▒α╝¡╢╘╗░┐≥")
  9498.     ret=getdlg (19687, "edit", " ╩²╛▌▒α╝¡", selc)
  9499.     removedlg (19687)
  9500. return ret
  9501.  
  9502. ╖╡╗╪╓╡:│╔╣ª╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.
  9503.  
  9504. 4. BUTTON └α(╣ª─▄░┤┼ñ╢╘╗░┐≥)
  9505. ╙∩╖¿:    setdlg (<nHandle>, "BOTTON", <cTitle>, <cFunc>, <nRow>, <nCol>)
  9506. ▓╬╩²:
  9507.     <nHandle>    ╢╘╗░┐≥╛Σ▒·
  9508.     <cTitle>    ╢╘╗░┐≥▒Ω╠Γ
  9509.     <cFunc>    ╣ª─▄║»╩²├√
  9510.     <nRow>    ╨╨╫°▒Ω
  9511.     <nCol>        ┴╨╫°▒Ω
  9512. └²╫╙:     
  9513. #include "winbase.inc"
  9514. memvar dlg_succ
  9515.  
  9516. procedure main()
  9517. private setdlg_ret, dlg_succ
  9518.  
  9519.     windowstart()
  9520.     msgbox ("╔Φ╓├╣ª─▄░┤┼Ñ╢╘╗░┐≥", " ╙ª╙├║»╩²SETDLG() └α", 1)
  9521.     setdlg_ret=botton_demo()
  9522.     if. not. dlg_succ
  9523.         msgbox (" ╔Φ╓├╣ª─▄░┤┼Ñ╢╘╗░┐≥╩º░▄", "", 1)
  9524.     endif
  9525.     windowexit()
  9526. return
  9527.  
  9528. function botton_demo()
  9529.  
  9530.     eval (cur__off)
  9531.     dlg_succ=setdlg (19687, "botton", " ╣ª─▄░┤┼Ñ","bot_func() ", 5, 5)
  9532.     makedlg (19687, " ╣ª─▄░┤┼Ñ╢╘╗░┐≥")
  9533.     removedlg (19687)
  9534. return nil
  9535.  
  9536. function bot_func()
  9537.     msgbox ("What you see is WinBase, ", "What you want is WinBase", 1)
  9538. return nil
  9539.  
  9540. ╖╡╗╪╓╡:│╔╣ª╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.
  9541.  
  9542. 5. TEXT └α(╫╓╖√┤«╧╘╩╛)
  9543. ╙∩╖¿:    setdlg (<nHandle>, "TEXT", <cTitle>, <nRow>, <nCol>, <nColor>)
  9544. ▓╬╩²:    <nHandle>    ╢╘╗░┐≥╛Σ▒·
  9545.     <cTitle>    ╥¬╧╘╩╛╡─╫╓┤«
  9546.     <nRow>    ╨╨╫°▒Ω
  9547.     <nCol>        ┴╨╫°▒Ω
  9548.     <nColor>    ╫╓┤«╟░╛░╔½
  9549. └²╫╙:     
  9550. #include "winbase.inc"
  9551. memvar dlg_succ
  9552.  
  9553. procedure main()
  9554. local init_pos: =3
  9555. private setdlg_ret, dlg_succ
  9556.  
  9557.     windowstart()
  9558.     msgbox ("╔Φ╓├╫╓┤«╧╘╩╛╢╘╗░┐≥", " ╙ª╙├║»╩²SETDLG() └α", 1)
  9559.     setdlg_ret=text_demo (init_pos)
  9560.     if. not. dlg_succ
  9561.         msgbox (" ╔Φ╓├╫╓┤«╧╘╩╛╢╘╗░┐≥╩º░▄", "", 1)
  9562.     endif
  9563.     windowexit()
  9564. return
  9565.  
  9566. function text_demo (init_pos)
  9567. private ret
  9568.  
  9569.     dlg_succ=setdlg (19687, "check", " ╢α╧ε╤í╘±",;
  9570.      { {"SELECTION1", 0}, {"SELECTION2", 0}, {"SELECTION3", 1}}, ;
  9571.         2, 5, 21, init_pos)
  9572.     dlg_succ=setdlg (19687, "text", "WinBase", 5, 10, 4)
  9573.     makedlg (19687, " ╫╓┤«╧╘╩╛╢╘╗░┐≥")
  9574.     removedlg (19687)
  9575. return ret
  9576.  
  9577. ╖╡╗╪╓╡:│╔╣ª╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.
  9578.  
  9579. 6. LISTBOX └α(┴╨▒φ┐≥)
  9580. ╙∩╖¿:    setdlg(<nHandle>, "LISTBOX", <cTitle>, <aListarr>,;
  9581.     <nRow1>, <nCol1>, <nRow2>,<nCol2>,<nInitpos>)
  9582. ▓╬╩²:    
  9583.     <nHandle>        ╗░┐≥╛Σ▒·
  9584.     <cTitle>        ╧╘╩╛╡─╫╓┤«
  9585.     <aListarr>        ┴╨▒φ╩²╫Θ, ╕±╩╜╬¬{< ╧ε─┐1>,... < ╧ε─┐n>}
  9586.     <nRow1, nCol1>    ┴╨▒φ┐≥╫≤╔╧╜╟╨╨íó┴╨╫°▒Ω
  9587.     <nRow2, nCol2>    ┴╨▒φ┐≥╙╥╧┬╜╟╨╨íó┴╨╫°▒Ω
  9588. └²╫╙:     
  9589. #include "winbase.inc"
  9590. memvar dlg_succ, ret
  9591.  
  9592. procedure main()
  9593. local init_pos: =3
  9594. private setdlg_ret, dlg_succ
  9595.  
  9596.     windowstart()
  9597.     msgbox (" ╔Φ╓├┴╨▒φ╢╘╗░┐≥", " ╙ª╙├║»╩²SETDLG() └α", 1)
  9598.     setdlg_ret=listbox_demo (init_pos)
  9599.     if. not. dlg_succ
  9600.         msgbox (" ╔Φ╓├┴╨▒φ╢╘╗░┐≥╩º░▄", "", 1)
  9601.     else
  9602.         msgbox (" ┴╨▒φ╢╘╗░┐≥╖╡╗╪╓╡: ", str (setdlg_ret), 1)
  9603.     endif
  9604.     windowexit()
  9605. return
  9606.  
  9607. function listbox_demo (init_pos)
  9608. private ret: =0
  9609.  
  9610.     dlg_succ=setdlg (19687, "listbox", " ┴╨▒φ",;
  9611.          {"SELECTION1", "SELECTION2", "SELECTION3"}, ;
  9612.         5, 5, 10, 20, 1)
  9613.     setdlg (19687, "botton", " ═Ω│╔", "OK", 10, 15)
  9614.     makedlg (19687, " ┴╨▒φ╢╘╗░┐≥")
  9615.     ret=getdlg (19687, "listbox", " ┴╨▒φ")
  9616.     removedlg (19687)
  9617. return ret
  9618.  
  9619. ╖╡╗╪╓╡:│╔╣ª╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.
  9620.  
  9621. 7. MULEDIT └α(╬─▒╛▒α╝¡)
  9622. ╙∩╖¿:    setdlg (<nHandle>, "MULEDIT", <cTitle>, <cString>,;
  9623.     <nRow1>, <nCol1>, <nRow2>, <nCol2>)
  9624. ▓╬╩²:    <nHandle>        ╢╘╗░┐≥╛Σ▒·
  9625.     <cTitle>        ╥¬╧╘╩╛╡─╫╓┤«
  9626.     <cString>        ▒α╝¡┐≥╡─│⌡╩╝╫╓┤«
  9627.     <nRow1, nCol1>    ▒α╝¡┐≥╫≤╔╧╜╟╨╨íó┴╨╫°▒Ω
  9628.     <nRow2, nCol2>    ▒α╝¡┐≥╙╥╧┬╜╟╨╨íó┴╨╫°▒Ω
  9629. └²╫╙:     
  9630. #include "winbase.inc"
  9631. memvar dlg_succ
  9632.  
  9633. procedure main()
  9634. local init_pos: =3
  9635. private setdlg_ret, dlg_succ
  9636.  
  9637.     windowstart()
  9638.     msgbox ("╔Φ╓├╬─▒╛▒α╝¡╢╘╗░┐≥", " ╙ª╙├║»╩²SETDLG() └α", 1)
  9639.     setdlg_ret=medit_demo()
  9640.     if. not. dlg_succ
  9641.         msgbox (" ╔Φ╓├╬─▒╛▒α╝¡╢╘╗░┐≥╩º░▄", "", 1)
  9642.     else
  9643.         msgbox (" ╬─▒╛▒α╝¡╢╘╗░┐≥╖╡╗╪╓╡", setdlg_ret, 1)
  9644.     endif
  9645.     windowexit()
  9646. return
  9647.  
  9648. function medit_demo()
  9649. private ret
  9650.  
  9651.     dlg_succ=setdlg (19687, "muledit", "╬─▒╛▒α╝¡", "WinBase", 4, 22, 16, 50)
  9652.     makedlg (19687, " ╬─▒╛▒α╝¡╢╘╗░┐≥")
  9653.     ret=getdlg (19687, "muledit", " ╬─▒╛▒α╝¡")
  9654.     removedlg (19687)
  9655. return ret
  9656.  
  9657. ╖╡╗╪╓╡:│╔╣ª╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.
  9658.  
  9659. 8. ACTION └α(╓┤╨╨╣ª─▄╢╘╗░┐≥)
  9660. ╙∩╖¿:    setdlg (<nHandle>, "ACTION", <cTitle>, <cFunc>,;
  9661.     <nRow1>, <nCol2>, <nRow2>, <nCol2>)
  9662. ▓╬╩²:    
  9663.     <nHandle>    ╢╘╗░┐≥╛Σ▒·
  9664.     <cTitle>        ╣ª─▄├Φ╩÷
  9665.     <cFunc>        ╣ª─▄║»╩²├√│╞
  9666.     <nRow1, nCol1>    ╢╘╗░┐≥╫≤╔╧╜╟╨╨íó┴╨╫°▒Ω
  9667.     <nRow2, nCol2>    ╢╘╗░┐≥╙╥╧┬╜╟╨╨íó┴╨╫°▒Ω
  9668. └²╫╙:     
  9669. #include "winbase.inc"
  9670. memvar dlg_succ
  9671.  
  9672. procedure main()
  9673. local init_pos: =3
  9674. private setdlg_ret, dlg_succ
  9675.  
  9676.     windowstart()
  9677.     msgbox ("╔Φ╓├╓┤╨╨╣ª─▄╢╘╗░┐≥", " ╙ª╙├║»╩²SETDLG() └α", 1)
  9678.     setdlg_ret=action_demo()
  9679.     if. not. dlg_succ
  9680.         msgbox (" ╔Φ╓├╓┤╨╨╣ª─▄╢╘╗░┐≥╩º░▄", "", 1)
  9681.     endif
  9682.     windowexit()
  9683. return
  9684.         
  9685. function action_demo()
  9686. private ret
  9687.     dlg_succ=setdlg (19687, "check", " ╢α╧ε╤í╘±",;
  9688.          { {"SELECTION1", 0}, {"SELECTION2", 0},;
  9689.          {"SELECTION3", 1}}, 2, 5, 21, 1)
  9690.     dlg_succ=setdlg (19687, "text", " ╓┤╨╨╣ª─▄", 10, 10, 4)
  9691.     dlg_succ=setdlg (19687, "action", " ╓┤╨╨╣ª─▄","actionfunc() ", 4, 22, 16, 50)
  9692.     makedlg (19687, " ╓┤╨╨╣ª─▄╢╘╗░┐≥")
  9693.     removedlg (19687)
  9694. return nil
  9695.  
  9696. functio actionfunc()
  9697.     msgbox ("popup a message box", "", 1)
  9698. return nil
  9699.  
  9700. ╖╡╗╪╓╡:│╔╣ª╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.
  9701. ▓╬╝√:@1304 [getdlg]( ), @1307 [makedlg](), @1311 [removedlg]()
  9702.  
  9703. .1751
  9704. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9705. @17[╧╡═│║»╩²╦≈╥²]
  9706.  
  9707. sethelp( )
  9708. ╙∩╖¿: sethelp( <cHelpFunc>)
  9709. ╙├═╛: ╙├╙┌╘┌╡╚┤²╩Σ╚δ╞┌╝Σ░┤F1 ╡≈╙├░∩╓·║»╩²╥╘╠ß╩╛
  9710. ╙╨╣╪╨┼╧ó
  9711. ▓╬╩²: 
  9712.     <cHelpFunc>   ░∩╓·║»╩²├√
  9713.         ░∩╓·║»╩²▒Ω╫╝╚τ╧┬
  9714.         helpfunc( <proname>, <proline>, <varname> )
  9715.         ╞Σ╓╨:
  9716.         <proname>    ╡≈╙├░∩╓·║»╩²╣²│╠├√
  9717.         <proline>    ╡≈╙├░∩╓·║»╩²╦∙╘┌╨╨
  9718.         <varname>    ▒Σ┴┐├√
  9719.         ╫ó╥Γú║╦∙┤½▓╬╩²╓╨╫╓─╕╙├┤≤╨┤
  9720. ╖╡╗╪╓╡: ╬▐
  9721. └²╫╙ú║
  9722. #include "winbase.inc"
  9723. external help        //╓╕├≈▒╪╨δ┴¼╜╙WINBASE ╡──┌╓├░∩╓·─ú┐Θ
  9724.                 
  9725. PROCEDURE MAIN
  9726. private name:="      ",age:=0
  9727.  
  9728.     windowstart()    //Winbase │⌡╩╝╗»
  9729.     sethelp("newhelp()")
  9730.     ú└ 9,10 say "press F1 to get help"
  9731.     ú└ 10,10 say "input name " get name
  9732.     ú└ 11,10 say "input age " get age
  9733.     read
  9734.     windowexit()    //Winbase ═╦│÷
  9735. RETURN
  9736.  
  9737. procedure newhelp(proname,proline,varname)
  9738.     
  9739.     if proname=="NEWHELP"
  9740.         return
  9741.     endif
  9742.     msgbox("current procedure ",proname,1)
  9743.     msgbox("current line",proline,1)
  9744.     do case
  9745.         case varname=="NAME"
  9746.             msgbox("you must input a string as your NAME","",1)
  9747.         case varname=="AGE"
  9748.             msgbox("you must input a number as your AGE","",1)
  9749.     endcase
  9750. return
  9751.  
  9752. .2479
  9753. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9754. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  9755.  
  9756. setindex()
  9757. ╙∩╖¿: setindex (<cIndexfiles>)
  9758. ╙├═╛: ╔Φ╓├╨┬╡─╦≈╥²╗≥┤≥┐¬╥╗╕÷╦≈╥²╬─╝■
  9759. ▓╬╩²: 
  9760.     <cIndexfiles>        ╥╘", " ╖╓╕⌠╡─╦≈╥²╬─╝■┴╨▒φ
  9761. ╖╡╗╪╓╡: ╬▐╖╡╗╪╓╡.
  9762. └²╫╙: use datafile new
  9763.     list
  9764.     setindex ("datantx1", "datantx2", "datantx3")
  9765.     list
  9766.  
  9767. .2365
  9768. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9769. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  9770.  
  9771. setint24()
  9772. ╙∩╖¿: setint24 (<lOnOff>)
  9773. ╙├═╛: ╔Φ╓├╗≥╗╓╕┤╤╧╓╪┤φ╬≤┤ª└φ╓╨╢╧INT24
  9774. ▓╬╩²:     
  9775. <lOnOff>==.T. ╩▒╔Φ╓├╤╧╓╪┤φ╬≤┤ª└φ╓╨╢╧INT24ú¼╩╣╡├│÷╧╓─│╨⌐╤╧╓╪╩▒
  9776. ú¼╚τ┤┼┼╠╬┤╫╝▒╕║├╡╚ú¼▓╗╓┴╙┌╡╝╓┬╧╡═│═╦│÷ú¼▓ó┐╔╙├
  9777. getint24 ▓╢╗±┤φ╬≤íú
  9778.     <lOnOff>==.F. ╩▒╗╓╕┤╤╧╓╪┤φ╬≤┤ª└φ╓╨╢╧INT24
  9779. ╖╡╗╪╓╡: │╔╣ª╖╡╗╪.T., ╩º░▄╖╡╗╪.F.
  9780. ▓╬╝√:@2357 [getint24]()
  9781.  
  9782. .1534
  9783. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9784. @15[╩≤▒Ω╝ⁿ┼╠║»╩²╦≈╥²]
  9785.  
  9786. setkey()
  9787. ╙∩╖¿: setkey (<nInkeyVal>, <bBlock>)
  9788. ╙├═╛:     ╡▒╦∙╔Φ╓├╡─╝ⁿ▒╗╟├╗≈╩▒, SETKEY() ║»╩²╓╕╢¿╜½╥¬╓┤╨╨╡─╥╗
  9789. ╕÷┤·┬δ┐Θíú
  9790. ▓╬╩²:     
  9791. <nInkeyVal>     ┤Ñ╖óSET KEY ╡─╝ⁿ╓╡, ╦ⁿ╩╟INKEY() ║»╩²╡─╖╡╗╪╓╡íú
  9792. <bBlock>     ╡▒╝ⁿ▒╗░┤╧┬╩▒╥¬╓┤╨╨╡─┤·┬δ┐Θ, ╬¬┴╦╚í╧√SETKEY() " ╚╚╝ⁿ", ╜½<block> ▓╬
  9793. ╩²╓╕╢¿╬¬NIL ╝┤┐╔íú
  9794. ╖╡╗╪╓╡: ╖╡╗╪╕│╕°SET KEY ╡─╟░╥╗╕÷╢»╫≈        
  9795. ╦╡├≈:     SETKEY() ║»╩²╖╡╗╪╡▒╟░╫┤╠¼íú
  9796.     ╡▒╙├╗º░┤╧┬╚╚╝ⁿ╩▒, ╙δ╚╚╝ⁿ╣╪┴¬╡─┤·┬δ┐Θ╜½▒╗┤Ñ╖óíú
  9797.     F1 ▒╗WINBASE ╫╘╢»╔Φ╓├╬¬░∩╓·╝ⁿíú
  9798. └²╫╙: // ╧┬╢╬│╠╨≥╘┌╘╦╨╨╩▒(╩Σ╚δ╚╒╞┌╓«╟░) ░┤╧┬F10, ╜½╧╘╩╛╡▒
  9799. ╟░╩▒╝Σ
  9800.     tim: =space (10)
  9801.     blk: = {||my_proc (time())} // ╝ñ╗ε╩▒╓┤╨╨╡─┤·┬δ┐Θ
  9802.     setkey (K_F10, blk) //F10 ╬¬╚╚╝ⁿ
  9803.     
  9804.     ú└ 10, 10 say " ╚╒╞┌" get answer
  9805.     read
  9806.     setkey (K-F10, nil) // ╚í╧√F10 ╚╚╝ⁿ
  9807.     
  9808.     procedure my_proc (tim)
  9809.     ú└ 24, 10 say " ╧╓╘┌╩▒╝Σ: "+time 
  9810.     inkey (0)
  9811.     ú└ 24, 10 clear
  9812.     return
  9813.     
  9814. ▓╬╝√: @3405[set key], @2501 [eval]()
  9815.  
  9816. .1752
  9817. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9818. @17[╧╡═│║»╩²╦≈╥²]
  9819.  
  9820. setmode()
  9821. ╙∩╖¿: setmode (<nRows>, <nCols>)
  9822. ╙├═╛:     ╖├╬╩╖╟╚▒╩í╡─╬─▒╛╧╘╩╛─ú╩╜íú╒Γ╨⌐─ú╩╜─▄╣╗▒╗
  9823. ╧╡═│╓╨╡─╧╘╩╛┐¿╦∙╓º│╓íú╚▒╩í╡─╬─▒╛╧╘╩╛─ú╩╜╬¬25*80íú
  9824. ▓╬╩²:     
  9825.     <nRows>     ╞┴─╗╧╘╩╛╡─╨╨╩²
  9826.     <nCols>     ╞┴─╗╧╘╩╛╡─┴╨╩²
  9827. ╖╡╗╪╓╡: ┬▀╝¡└α╨═
  9828. ╦╡├≈:     ╚τ╣√▓┘╫≈│╔╣ª, MAXROW() ║═MAXCOL() ▒╗╕│╙Φ╨┬╡─╫ε┤≤╨╨┴╨╓╡▓ó╟╥setmode() ║»
  9829. ╩²╖╡╗╪.T.íú╚τ╣√╧╘╩╛┐¿▓╗╓º│╓▓╬╩²╦∙╓╕╢¿╡─└⌐╒╣╬─
  9830. ▒╛─ú╩╜, ╘≥╖╡╗╪.F.íú
  9831. └²╫╙: temp: =setmode (50, 132)
  9832.     if temp=.T.
  9833.         ? " ╖├╬╩│╔╣ª"
  9834.         ? maxrow(), maxcol() // ╜ß╣√╬¬50, 132
  9835.     else
  9836.         ? " ╖├╬╩╩º░▄"
  9837.         ? maxrow(), maxcol() // ╜ß╣√╬¬25, 80
  9838.     endif
  9839.     
  9840. ▓╬╝√: @1729 [maxrow](), @1728 [maxcol]()
  9841.  
  9842. .1753
  9843. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9844. @17[╧╡═│║»╩²╦≈╥²]
  9845.  
  9846. setpos()
  9847. ╙∩╖¿: setpos (<nRows>, <nCols>)
  9848. ╙├═╛: ╜½╣Γ▒Ω╥╞╡╜╓╕╢¿╡─╞┴─╗╬╗╓├╔╧íú
  9849. ▓╬╩²: 
  9850. <nRows>     ╣Γ▒Ω╦∙╥╞╡╜╬╗╓├╡─╨╨╫°▒Ω, ╞Σ╓╡▒╪╨δ╘┌0-MAXROW() ╓«╝Σíú
  9851. <nCols>     ╣Γ▒Ω╦∙╥╞╡╜╬╗╓├╡─┴╨╫°▒Ω, ╞Σ╓╡▒╪╨δ╘┌0-MAXCOL() ╓«╝Σ
  9852. ╖╡╗╪╓╡: NIL
  9853. ╦╡├≈: ╡▒╣Γ▒Ω╥╞╡╜╞┴─╗╔╧┴φ╥╗╬╗╓├╩▒, ROW() ║═COL() ▒╗╫╘╢»╕ⁿ╨┬íú
  9854. └²╫╙: setpos (12, 20)
  9855.     ? row(), col() // ╜ß╣√╬¬12, 20
  9856.     
  9857. ▓╬╝√: @1741 [row](), @1706 [col]()
  9858.  
  9859. .1754
  9860. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9861. @17[╧╡═│║»╩²╦≈╥²]
  9862.  
  9863. setprc()
  9864. ╙∩╖¿: setprc (<nRows>, <nCols>)
  9865. ╙├═╛: ╜½PROW() ║═PCOL() ╔Φ╓├╡╜╓╕╢¿╡─╓╡íú
  9866. ▓╬╩²:     
  9867.     <nRows>     ╓╕╢¿╨╨╓╡╡─▒φ┤∩╩╜
  9868.     <nCols>     ╓╕╢¿┴╨╓╡╡─▒φ┤∩╩╜
  9869. ╖╡╗╪╓╡: NIL
  9870. ╦╡├≈:     ╥≥╬¬WINBASE ▓╗─▄╟°╖╓┤≥╙í╩²╛▌┴≈╓╨╡─┤≥╙í╫╓╖√║═╖╟
  9871. ┤≥╙í╫╓╖√, ╦∙╥╘SETPRC() ┐╔╙├╘┌╧≥┤≥╙í╗·╖ó╦═╔Φ╓├┤«╓«║≤╓╪╨┬
  9872. ╔Φ╓├┤≥╙í═╖╡─╨╨┴╨╬╗╓├íú
  9873. └²╫╙: 
  9874. set print on
  9875. cu_row: =prow()
  9876. cu_col: =pcol()
  9877. ? chr (27) +"LOE" // ╧≥┤≥╙í╗·╖ó╦═╔Φ╓├┤«
  9878. setprc (cu_row, cu_col) // ╓╪╨┬╔Φ╓├┤≥╙í═╖╡─╨╨┴╨╬╗╓├
  9879.     
  9880. ▓╬╝√: @3022[set device], @1738 [prow](), @1736 [pcol]()
  9881.  
  9882. .1755
  9883. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9884. @17[╧╡═│║»╩²╦≈╥²]
  9885.  
  9886. settrace()
  9887. ╙∩╖¿: settrace (<lCall>)
  9888. ╙├═╛: ╘┌┤φ╬≤┤ª└φ╢╘╗░┐≥╓╨╔Φ╓├╡≈╙├╣∞╝ú
  9889. ▓╬╩²: 
  9890.     <lCall>        ╬¬. T. ╩▒╔Φ╓├╡≈╙├╣∞╝úú¼. F. ╩▒╚í╧√
  9891. ╖╡╗╪╓╡: ╧╚╟░╔Φ╓├╡≈╙├╣∞╝ú╡─╫┤╠¼
  9892. └²╫╙:    settrace (. T.)
  9893.     subcall()
  9894.     ...
  9895.     procedure subcall
  9896.         local i: ="11111111acb"
  9897.  
  9898.         ? i*2    //│÷┤φ╩▒┐╔┤╙┤φ╬≤╢╘╗░┐≥╓╨▓Θ┐┤╡≈╙├╣∞╝ú
  9899.     return
  9900.  
  9901. .1006
  9902. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9903. @10[┤░┐┌║»╩²╦≈╥²]
  9904.  
  9905. shiftwindow()
  9906. ╙∩╖¿: shiftwindow (<nHandle>)
  9907. ╙├═╛: ▒ú┤µ╡▒╟░┤░┐┌, ╫¬╡╜<nHandle> ╓╕╢¿╡─┤░┐┌
  9908. ▓╬╩²: 
  9909. <nHandle>    ╓╕╢¿╡─┤░┐┌╛Σ▒·, ╙╔makewindow(), window() ╡╚╗±╡├
  9910. ╖╡╗╪╓╡: NIL
  9911. └²╫╙:
  9912. /* ┤╦└²╧╚╘┌╞┴─╗╔╧╗¡┴╦╥╗╕÷┤≤┤░┐┌, ╚╗║≤╘┘╗¡╥╗╕÷░ⁿ
  9913. ║¼╘┌┤≤┤░┐┌─┌╡─╨í┤░┐┌, ▒ú┤µ╨í┤░┐┌, ╫¬╡╜┤≤┤░┐┌, ╚╗║≤▓╗
  9914. ╘┘▒ú┤µ┤≤┤░┐┌, ╫¬╡╜╨í┤░┐┌íú*/
  9915.  #include "winbase.inc"
  9916. procedure example5()
  9917. local handle1, handle2 // ╢¿╥σ┤░┐┌╛Σ▒·╬¬╛▓╠¼▒Σ┴┐
  9918.     windowstart() // │⌡╩╝╗»Winbase
  9919.     handle1: =makewindow (10, 10, 20, 70, "WINBASE ═╝╬─┤░┐┌", 4, 3, 1)
  9920.     inkey (5) //handle1 ╬¬┤≤┤░┐┌╛Σ▒·, ╤╙╩▒5 ├δ
  9921.     handle2: =makewindow (12, 20, 18, 60, "WINBASE ═╝╬─┤░┐┌", 7, 10, 1)
  9922.     inkey (5) //handle2 ╬¬╨í┤░┐┌╛Σ▒·, ╤╙╩▒5 ├δ
  9923.     shiftwindow (handle1) // ▒ú┤µ╨í┤░┐┌(╡▒╟░┤░┐┌), ╫¬╡╜┤≤┤░┐┌
  9924.     inkey (1) // ╤╙╩▒1 ├δ
  9925.     gotowindow (handle2) 
  9926.         // ▓╗╘┘▒ú┤µ┤≤┤░┐┌(╡▒╟░┤░┐┌), ╫¬╡╜╨í┤░┐┌
  9927.     removewindow() // ╣╪▒╒╕├┤░┐┌
  9928.     windowexit() // ═╦│÷Winbase
  9929. return
  9930.  
  9931. ▓╬╝√: @1001 [gotowindow](), @1003 [makewindow](), @1005[removewindow]()
  9932.  
  9933. .2022
  9934. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9935. @20[╩²╤º║»╩²╦≈╥²]
  9936.  
  9937. sign()
  9938. ╙∩╖¿: sign (<nNum>)
  9939. ╙├═╛: ╟≤<nNum> ╡─╖√║┼
  9940. ▓╬╩²: 
  9941.     <nNum>    ╩²╓╡▒Σ┴┐
  9942. ╖╡╗╪╓╡: nNum ╡─╖√║┼╓╡
  9943.     nNum>0 ╩▒╖╡╗╪1
  9944.     nNum=0 ╩▒╖╡╗╪0
  9945.     nNum<0 ╩▒╖╡╗╪-1
  9946. └²╫╙:? sign (-8)
  9947.  
  9948. .2107
  9949. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9950. @21[╫¬╗╗║»╩²╦≈╥²]
  9951.  
  9952. soundex()
  9953. ╙∩╖¿: soundex (<cExp>)
  9954. ╙├═╛: ╬¬┴╦╦≈╥²║═╡≈╚í╝╟┬╝╜½╥╗╕÷╫╓╖√┤«╫¬╗╗│╔╥╗
  9955. ╕÷╙∩╥⌠┤«íú
  9956. ▓╬╩²: 
  9957.     <cExp>    ╥¬╫¬╗╗╡─╫╓╖√┤«
  9958. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  9959. ╦╡├≈:     ╕├║»╩²╜½╚í╡├╡─╫╓╖√┤«╫¬╗╗╬¬╥╗╕÷╙╔╥╗╕÷╫╓
  9960. ─╕┐¬═╖, ╚²╕÷╩²╫╓╜ß╬▓╡─╫╓╖√┤«íú╛▀╙╨╧α═¼┐¬═╖╫╓─╕╟╥
  9961. ╖ó╥⌠╧α╦╞╡─╡Ñ┤╩╛▀╙╨╧α═¼╡─soundex() ╓╡íú
  9962. └²╫╙: // ╧┬└²╚τ╝ⁿ╚δwitsun, ┐╔─▄╖╡╗╪whitson
  9963.     use my
  9964.     index on soundex (name) to sndexmem
  9965.     accept "last name: " to tryit
  9966.     seek soundex (tryit)
  9967.     ? name
  9968.     
  9969. ▓╬╝√: @3116[find], @2431 [dbsetindex](), @3122[locate], @2427 [dbseek](), @3142[set softseek]
  9970.  
  9971. .2244
  9972. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9973. @22[╫╓╖√┤«║»╩²╦≈╥²]
  9974.  
  9975. space()
  9976. ╙∩╖¿: space (<nExp>)
  9977. ╙├═╛: ╙├╓╕╢¿╩²─┐╡─┐╒╕±╠ε│Σ╥╗╕÷┤«íú
  9978. ▓╬╩²: <nExp> ┐╒╕±╡─╩²─┐
  9979. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  9980. └²╫╙:? "12"+space (3) +"67" // ╧╘╩╛12     67
  9981.  
  9982. ▓╬╝√: @2241 [replicate]()
  9983.  
  9984. .1759
  9985. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  9986. @17[╧╡═│║»╩²╦≈╥²]
  9987.  
  9988. stackisempty()
  9989. ╙∩╖¿: stackisempty (<aStack>)
  9990. ╙├═╛: ┼╨╢╧╒╗╩╟╖±╬¬┐╒
  9991. ▓╬╩²: 
  9992.     <aStack>     ╒╗╩²╫Θ
  9993. ╖╡╗╪╓╡: ╬¬┐╒╖╡╗╪.T., ╖±╘≥╖╡╗╪.T.
  9994. └²╫╙: 
  9995. arr: =stacknew()
  9996. stackpush (arr, 4)
  9997. ? stackisempty()
  9998.  
  9999. .1756
  10000. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10001. @17[╧╡═│║»╩²╦≈╥²]
  10002.  
  10003. stacknew()
  10004. ╙∩╖¿: stacknew()
  10005. ╙├═╛: ╗±╡├╥╗╕÷╨┬╡─╒╗
  10006. ▓╬╩²: ╬▐
  10007. ╖╡╗╪╓╡: ╒╗╩²╫Θ
  10008. └²╫╙: arr: =stacknew()
  10009.  
  10010. .1757
  10011. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10012. @17[╧╡═│║»╩²╦≈╥²]
  10013.  
  10014. stackpop()
  10015. ╙∩╖¿: stackpop (<aStack>)
  10016. ╙├═╛: ┤╙╒╗╓╨╡»│÷╩²╛▌
  10017. ▓╬╩²: 
  10018.     <aStack>    ╒╗╩²╫Θ
  10019. ╖╡╗╪╓╡: ┤╙╒╗╓╨╡»│÷╡─╩²╛▌
  10020. └²╫╙:
  10021. arr: =stacknew()
  10022. stackpush (arr, 4)
  10023. ? stackpop()
  10024.  
  10025. .1758
  10026. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10027. @17[╧╡═│║»╩²╦≈╥²]
  10028.  
  10029. stackpush()
  10030. ╙∩╖¿: stackpush (<aStack>, <xVal>)
  10031. ╙├═╛: ╧≥╒╗╓╨╤╣╚δ╩²╛▌
  10032. ▓╬╩²:
  10033.     <aStack>     ╒╗╩²╫Θ
  10034.     <xVal>     ╩²╛▌
  10035. ╖╡╗╪╓╡: ╬▐
  10036. └²╫╙: 
  10037. arr: =stacknew()
  10038. stackpush (arr, 4)
  10039.  
  10040. .1760
  10041. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10042. @17[╧╡═│║»╩²╦≈╥²]
  10043.  
  10044. stacktop()
  10045. ╙∩╖¿: stacktop (<aStack>)
  10046. ╙├═╛: ╗±╡├(╡½▓╗╡»│÷) ╒╗╢Ñ╘¬╦╪
  10047. ▓╬╩²: 
  10048.     <aStack>    ╒╗╩²╫Θ
  10049. ╖╡╗╪╓╡: ╒╗╢Ñ╘¬╦╪
  10050. └²╫╙: 
  10051. arr: =stacknew()
  10052. stackpush (arr, 4)
  10053. ? stacktop()
  10054.  
  10055. .2245
  10056. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10057. @22[╫╓╖√┤«║»╩²╦≈╥²]
  10058.  
  10059. str()
  10060. ╙∩╖¿: str (<nExp>, <nLength>, <nDec>)
  10061. ╙├═╛: ╜½╥╗╕÷╩²╫╓▒φ┤∩╩╜╫¬╗╗│╔╓╕╢¿│ñ╢╚╡─┤«íú
  10062. ▓╬╩²:     
  10063.     <nExp>     ╥¬╫¬╗╗╡─╩²╫╓▒φ┤∩╩╜
  10064.     <nLength>     ╫¬╗╗║≤╡─┤«│ñ╢╚
  10065.     <nDec>     ╫¬╗╗║≤┤«╓╨╨í╩²╛½╢╚
  10066. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  10067. └²╫╙: temp: =str (3. 1415, 3, 2) // ╖╡╗╪3. 14
  10068.     ? type (temp) // ╖╡╗╪C
  10069.     
  10070. ▓╬╝√: @2249 [substr](), @2108 [val]()
  10071.  
  10072. .2246
  10073. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10074. @22[╫╓╖√┤«║»╩²╦≈╥²]
  10075.  
  10076. strexpand()
  10077. ╙∩╖¿: strexpand (<cString>)
  10078. ╙├═╛: ╜½╫╓╖√<cString> ╡─├┐╥╗╕÷╫╓─╕(╗≥║║╫╓) ║≤▓σ╚δ╥╗╕÷┐╒╕±
  10079. ▓╬╩²: 
  10080.     <cString>    ╥¬└⌐╒╣╡─╫╓╖√┤«
  10081. ╖╡╗╪╓╡: └⌐╒╣║≤╡─╫╓╖√┤«
  10082. └²╫╙:? strexpand ("╫ó╥Γ╩┬╧ε")
  10083.  
  10084. .2247
  10085. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10086. @22[╫╓╖√┤«║»╩²╦≈╥²]
  10087.  
  10088. strtran()
  10089. ╙∩╖¿: strtran (<cString>, <cSearch>, [<cReplace>], [<nStart>], [<nCount>])
  10090. ╙├═╛: ╘┌╥╗╫╓╖√┤«╔╧╓┤╨╨╦╤╦≈╠µ╗╗íú
  10091. ▓╬╩²:     
  10092.     <cString>    ▒╗╦╤╦≈╡─╘┤┤«
  10093.     <cSearch>    ╥¬╦╤╦≈╡─╫╙┤«
  10094.     <cReplace>    ╠µ╗╗<cSearch> ╡─┤«, ╚▒╩í╓╡╬¬┐╒┤«íú
  10095. <nStart>     ╡┌╥╗┤╬╜°╨╨╠µ╗╗╡─╞Ñ┼Σ╬╗╓├, ╚▒╩í▒φ╩╛┤╙╡┌╥╗╕÷╞Ñ
  10096. ┼Σ┤ª╜°╨╨╠µ╗╗íú
  10097. <nCount>     ╜°╨╨╠µ╗╗╡─┤╬╩², ╚▒╩í▒φ╩╛╢╘╘┤┤«╓╨╦∙╙╨╞Ñ┼Σ┤ª╜°
  10098. ╨╨╠µ╗╗íú
  10099. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  10100. └²╫╙: temp: =strtran ("I am liping", "li", "ling")
  10101.     ? temp // ╖╡╗╪I am lingping
  10102.     
  10103. ▓╬╝√: @2203 [at](), @2240 [rat](), stuff()
  10104.  
  10105. .2248
  10106. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10107. @22[╫╓╖√┤«║»╩²╦≈╥²]
  10108.  
  10109. stuff()
  10110. ╙∩╖¿: stuff (<cString>, <nStart>, <nDel>, <cInsert>)
  10111. ╙├═╛: ═¿╣²╔╛│²íó▓σ╚δ╥╘╝░╠µ╗╗└┤╨▐╕─┤«íú
  10112. ▓╬╩²:     
  10113.     <cString>     ╥¬╨▐╕─╡─┤«
  10114.     <nStart>     ┤«╓╨╞≡╩╝╨▐╕─╬╗╓├
  10115.     <nDel>     ╥¬╔╛│²╡─╫╓╖√╕÷╩²
  10116.     <cInsert>     ╠µ╗╗╡─╫╓╖√┤«
  10117. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  10118. └²╫╙:? stuff ("go home? ", 4, 4, "to school") // ╩Σ│÷go t0 school?
  10119.  
  10120. ▓╬╝√: @2247 [strtran](), @2249 [substr]()
  10121.  
  10122. .2249
  10123. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10124. @22[╫╓╖√┤«║»╩²╦≈╥²]
  10125.  
  10126. substr()
  10127. ╙∩╖¿: substr (<cString>, <nStart>, <nCount>)
  10128. ╙├═╛: ┤╙╫╓╖√┤«(╘┤┤«) ╓╨│Θ╚í│÷╫╙┤«íú
  10129. ▓╬╩²:     
  10130.     <cString>     ╘┤┤«
  10131. <nStart>     ╫╙┤«╘┌╘┤┤«╓╨╡─╞≡╩╝╬╗╓├íú╚τ▒φ┤∩╩╜╡─╓╡╬¬╒², ╘≥┤╙
  10132. ╞½└δ╘┤┤«═╖<nStart> ╕÷╫╓╖√┐¬╩╝╠ß╚í╫╙┤«íú╚τ▒φ┤∩╩╜╡─╓╡
  10133. ╬¬╕║, ╘≥┤╙╞½└δ╘┤┤«╬▓<nStart> ╕÷╫╓╖√┐¬╩╝╠ß╚í╫╙┤«íú
  10134.     <nCount>     ╠ß╚í╫╙┤«│ñ╢╚íú
  10135. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  10136. └²╫╙:? substr ("go home? ", 1, 2) // ╩Σ│÷go
  10137.  
  10138. ▓╬╝√: @2203 [at](), @2240 [rat]()
  10139.  
  10140. .1218
  10141. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10142. @12[▒¿▒φ╔Φ╝╞║»╩²╦≈╥²]
  10143.  
  10144. sum_all
  10145. ╙∩╖¿:    sum_all (<cExp> ,<cCond> )
  10146. ╙├═╛:    ╘┌▒¿▒φ╔Φ╝╞╓╨╢╘╓╕╢¿╡─▒φ┤∩╩╜╟≤║═
  10147. ▓╬╩²:
  10148.     <cExp>    ▒φ┤∩╩╜ú¼┐╔╥╘╩╟╩²╫╓▒φ┤∩╩╜
  10149.     <cCond>    ╨Φ╥¬╢╘─╟╨⌐╝╟┬╝╜°╨╨╟≤║═╡─╠⌡╝■
  10150. ╖╡╗╪╓╡:║═ú¼╩²╓╡
  10151. └²╫╙:sum_all( "SALARY+JIANGJIN", "SHENGSHI =='└Ñ├≈' ")
  10152.  
  10153. .1219
  10154. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10155. @12[▒¿▒φ╔Φ╝╞║»╩²╦≈╥²]
  10156.  
  10157. sum_cond
  10158. ╙∩╖¿:    sum_cond ( <ncField>, <cCond> )
  10159. ╙├═╛:    ╘┌▒¿▒φ╔Φ╝╞╓╨╢╘╥╗╓╕╢¿╡─╫╓╢╬╟≤║═
  10160. ▓╬╩²:
  10161.     <ncField>    ╫╓╢╬╨≥║┼╗≥╫╓╢╬├√
  10162.     <cCond>    ╓╕├≈▓╬╙δ╟≤║═╡─╫╓╢╬╡─╠⌡╝■
  10163. ╖╡╗╪╓╡:║═ú¼╩²╓╡
  10164.  
  10165. .1220
  10166. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10167. @12[▒¿▒φ╔Φ╝╞║»╩²╦≈╥²]
  10168.  
  10169. sumc
  10170. ╙∩╖¿:sumc( <nScol>, <nEcol> ,<cCond> )
  10171. ╙├═╛:    ╘┌▒¿▒φ╔Φ╝╞╓╨╡─▒¿▒φ┴╨╟≤║═ú¼╚⌠▓╗╓╕╢¿┐¬╩╝┴╨
  10172. ║═╜ß╩°┴╨ú¼╘≥╩╟╢╘╡▒╟░╨╨╡─╦∙╙╨┴╨╜°╨╨╟≤║═
  10173. ▓╬╩²:
  10174.     <nScol>    ┐¬╩╝┴╨
  10175.     <nEcol>    ╜ß╩°┴╨
  10176. <cCond>    ╓╕├≈──╨⌐╨╨▓╬╙δ╟≤║═╡─╠⌡╝■ú¼<cCond> ╓╨┐╔╥╘╙├$ ▒φ╩╛╡▒╟░
  10177. ╓╡
  10178. ╖╡╗╪╓╡:║═ú¼╩²╓╡
  10179. └²╫╙:SUMC ( 2, 5, "$>100" )
  10180.  
  10181. .1221
  10182. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10183. @12[▒¿▒φ╔Φ╝╞║»╩²╦≈╥²]
  10184.  
  10185. sumr
  10186. ╙∩╖¿:    sumr ( <nSrow>, <nErow> ,<cCond> )
  10187. ╙├═╛:    ╘┌▒¿▒φ╔Φ╝╞╓╨╡─╨╨╟≤║═ú¼╚⌠▓╗╓╕╢¿┐¬╩╝╨╨║═╜ß╩°
  10188. ╨╨ú¼╘≥╩╟╢╘╡▒╟░┴╨╡─╦∙╙╨╨╨╜°╨╨╟≤║═
  10189. ▓╬╩²:
  10190.     <nSrow>    ┐¬╩╝╨╨
  10191.     <nErow>    ╜ß╩°╨╨
  10192.     <cCond>    ╓╕├≈▓╬╙δ╟≤║═╡─╨╨╡─╠⌡╝■
  10193. ╖╡╗╪╓╡:║═ú¼╩²╓╡
  10194. └²╫╙:SUMR()
  10195.  
  10196. .1643
  10197. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10198. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  10199.  
  10200. swapcolor()
  10201. ╙∩╖¿: swapcolor ( [<nRow>], [<nCol>], [<expData>], [<expPicture>]
  10202. ╙├═╛: ╘┌╤╒╔½┤«╓╨╡▀╡╣▒Ω╫╝║═╘÷╟┐╡─╤╒╔½
  10203. ▓╬╩²:    <nRow>, <nCol>    ╧╘╩╛╩²╛▌╡─╨╨║═┴╨╫°∙▒Ω
  10204.     <expData>         ╥¬╧╘╩╛╡─╚╬║╬└α╨═╡─╩²╛▌
  10205.     <expPicture>         ╕±╩╜╗»╩²╛▌╡─▒φ┤∩╩╜
  10206. ╖╡╗╪╓╡: ╫╓╖√┤«
  10207. └²╫╙:
  10208.     str: ="winbase"
  10209.     cstr: ="W+/B, R/W, N, N, R/W"
  10210.     setcolor (cstr)
  10211.     ú└ 10, 10 SAY "OK" GET STR
  10212.     READ
  10213.     setcolor (swapcolor (10, 0, "OK", "XX"))
  10214.     ú└ 12, 10 SAY "OK" GET STR
  10215.     READ
  10216.  
  10217. .1761
  10218. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10219. @17[╧╡═│║»╩²╦≈╥²]
  10220.  
  10221. swprun()
  10222. ╙∩╖¿: swprun (<cCmd>, <nMem>, <cInitpath>, <cSwppath>, <xNo_cls>, <xNo_save>)
  10223. ╙├═╛: ╘╦╨╨═Γ▓┐┐╔╓┤╨╨╬─╝■╗≥DOS ├ⁿ┴ε
  10224. ▓╬╩²:
  10225. <cCmd>     ┐╔╓┤╨╨╬─╝■├√╝░╞Σ├ⁿ┴ε╨╨▓╬╩²╫╓╖√┤«
  10226. <nMem>     ╘╦╨╨╬─╝■╨Φ╥¬╡──┌┤µ┴┐, ╚⌠╝╙0 ▒φ╩╛╛í┐╔─▄╢α╡─┴⌠│÷
  10227. ─┌┤µ
  10228. <cInitpath>     ═Γ▓┐╬─╝■╘╦╨╨╩▒╨Φ╥¬╔Φ╢¿╡─┬╖╛╢, ┐╔╬¬┐╒íú
  10229. <cSwppath>     ╜╗╗╗╬─╝■┤µ╖┼╡─┬╖╛╢
  10230. <xNo_cls>     ╚⌠╕├▓╬╩²╬¬┐╒, ╘╦╨╨╩▒╟σ╞┴(│⌡╩╝╗»╬¬╬─▒╛╖╜╩╜), ╘╦╨╨║≤
  10231. ╗╓╕┤╬¬═╝╨╬╖╜╩╜
  10232. <xNo_save>     ╚⌠╕├▓╬╩²╬¬┐╒, ╘╦╨╨╩▒▒ú┤µ╞┴─╗, ╘╦╨╨║≤╫╘╢»╗╓╕┤╞┴─╗
  10233. ╖╡╗╪╓╡: ╬▐
  10234. └²╫╙: swprun ("dir/w", 0)
  10235.  
  10236. .2023
  10237. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10238. @20[╩²╤º║»╩²╦≈╥²]
  10239.  
  10240. sqrt()
  10241. ╙∩╖¿: sqrt (<nExp>)
  10242. ╙├═╛: ╝╞╦π╩²╤º▒φ┤∩╩╜╡─╞╜╖╜╕∙íú
  10243. ▓╬╩²: 
  10244.     <nExp>    ▒╗╟≤╓╡╡─╩²╤º▒φ┤∩╩╜
  10245. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  10246. └²╫╙:
  10247. ? sqrt (4) // ╖╡╗╪2. 00
  10248. ? sqrt (-9) // ╖╡╗╪0. 00
  10249. ? sqrt (3. 2587) // ╖╡╗╪1. 81
  10250.  
  10251. ▓╬╝√: @3201[set decimals], @3203[set fixed], @2011 [exp](), @2015 [log]()
  10252.  
  10253. .1222
  10254. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10255. @12[▒¿▒φ╔Φ╝╞║»╩²╦≈╥²]
  10256.  
  10257. tack
  10258. ╙∩╖¿:tack ( <cAlias> , <ncField> ,<nLen>)
  10259. ╙├═╛:╘┌▒¿▒φ╔Φ╝╞╓╨╚í╓╕╢¿╩²╛▌┐Γ╡▒╟░╝╟┬╝╓╨─│╫╓
  10260. ╢╬╡──┌╚▌
  10261. ▓╬╩²:
  10262.     <cAlias>    ╩²╛▌┐Γ╙╔▒≡├√
  10263.     <ncField>    ╫╓╢╬├√╗≥╫╓╢╬╨≥║┼
  10264.     <nLen>    ╖╡╗╪╡─╫╓╖√┤«╡─│ñ╢╚
  10265. ╖╡╗╪╓╡:╫╓╖√┤«╨╬╩╜╡─╫╓╢╬╡──┌╚▌
  10266. └²╫╙:TACK( "ALIAS1", 8, 6)
  10267. ▓╬╝√:@1211 [itack](),@1205 [ctack]()
  10268.  
  10269. .2250
  10270. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10271. @22[╫╓╖√┤«║»╩²╦≈╥²]
  10272.  
  10273. takeout()
  10274. ╙∩╖¿: takeout (<cStr>, <nDelim>, <n>)
  10275. ╙├═╛: ╚í│÷╙╔╧▐╢¿╖√╖╓╕⌠╡─╫╓╖√┤«╓╨╡─╡┌n ╕÷▓┐╖╓
  10276. ▓╬╩²:    
  10277.     <cStr>         ╫╓╖√┤«
  10278.     <nDelim>     ╧▐╢¿╖√
  10279.     <n>         ╥¬╚í╡─▓┐╖╓
  10280. ╖╡╗╪╓╡: ╚í│÷╡─╫╓╖√┤«
  10281. └²╫╙:? ("winbase, WinBase, WINBASE", ", ", 2)    //╖╡╗╪WinBase
  10282. ▓╬╝√:@2216 [listtoa]()
  10283.  
  10284. .2366
  10285. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10286. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  10287.  
  10288. tempfile()
  10289. ╙∩╖¿: tempfile ( [<cExtension>], [<cPathName>])
  10290. ╙├═╛: ╘┌╓╕╢¿╡─┤┼┼╠╔╧╜¿┴ó╥╗╕÷╬─╝■├√╬¿╥╗╡─┴┘╩▒
  10291. ╬─╝■
  10292. ▓╬╩²:     
  10293.     [cExtension]        ┴┘╩▒╬─╝■└⌐╒╣├√
  10294.     [<cPathName>]     ┴┘╩▒╬─╝■┬╖╛╢├√
  10295. ╖╡╗╪╓╡: │╔╣ª╖╡╗╪┴┘╩▒╬─╝■├√, ╖±╘≥╖╡╗╪┐╒┤«
  10296. └²╫╙: name: =tempfie ("tmp", "c: \")
  10297.     ! del &name
  10298.  
  10299. .1929
  10300. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10301. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  10302.  
  10303. time()
  10304. ╙∩╖¿: time()
  10305. ╙├═╛: ╚í╧╡═│╩▒╝Σíú
  10306. ▓╬╩²: ╬▐
  10307. ╖╡╗╪╓╡: ╫╓╖√└α╨═, ╩▒╝Σ╫╓╖√┤«ú¼╕±╩╜╬¬hh: mm: ss
  10308. └²╫╙:? time() // ╖╡╗╪└α╦╞11: 20: 48
  10309.  
  10310. ▓╬╝√: @1908 [date](), @1926 [seconds]()
  10311.  
  10312. .1930
  10313. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10314. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  10315.  
  10316. timediff()
  10317. ╙∩╖¿: timediff (<cStime>, <cEtime>)
  10318. ╙├═╛: ╟≤┴╜╕÷╩▒╝Σ╡─▓ε
  10319. ▓╬╩²:    
  10320.     <cStime>     ┐¬╩╝╡─╩▒╝Σ╓╡
  10321.     <cEtime>     ╜ß╩°╡─╩▒╝Σ╓╡
  10322. ╖╡╗╪╓╡: ╩▒╝Σ╫╓╖√┤«
  10323. └²╫╙:? timediff ("9: 00: 00", "11: 00: 00")    //╖╡╗╪ "02:00:00"
  10324.  
  10325. .1931
  10326. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10327. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  10328.  
  10329. timetosec()
  10330. ╙∩╖¿: timetosec (<cTime>)
  10331. ╙├═╛: ╜½╩▒╝Σ╫╓╖√┤«<cTime> ╫¬╗╗╬¬├δ╩²
  10332. ▓╬╩²: 
  10333.     <cTime>     ╩▒╝Σ╫╓╖√┤«
  10334. ╖╡╗╪╓╡: ├δ╩²
  10335. └²╫╙:? timetosec (time())
  10336.  
  10337. .1762
  10338. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10339. @17[╧╡═│║»╩²╦≈╥²]
  10340.  
  10341. tone()
  10342. ╙∩╖¿: tone (<nFreq>, <nDuration>)
  10343. ╙├═╛: ╕─▒Σ╧∞┴σ╡─╞╡┬╩║═│╓╨°╩▒╝Σíú
  10344. ▓╬╩²:     
  10345.     <nFreq>         ╔∙╥⌠╡─╞╡┬╩, ╓╡╚τ╧┬▒φ
  10346.     <nDuration>         ╔∙╥⌠╡─│╓╨°╩▒╝Σ
  10347. ╖╡╗╪╓╡: NIL
  10348. ╥⌠╡≈        ╞╡┬╩        ╥⌠╡≈        ╞╡┬╩
  10349. ==========================================================C         130. 80     MIDDLE C     261. 70
  10350. C#         138. 60     C#         277. 20
  10351. D         146. 80     D         293. 70
  10352. D#         155. 60     D#         311. 10
  10353. E         164. 80     E         329. 60
  10354. F         174. 60     F         349. 20
  10355. F#         185. 00     F#         370. 70
  10356. G         196. 00     G         392. 00
  10357. G#         207. 70     G#         415. 30
  10358. A         220. 00     A         440. 00
  10359. A#         233. 10     A#         466. 20
  10360. B         246. 90     B         493. 90
  10361.                 C         523. 30
  10362. └²╫╙:// ╧┬╢╬│╠╨≥╜½╖ó│÷╥╗╢╬╘├╢·╡─╥⌠└╓
  10363.      tone (294, 5)
  10364.     tone (294, 3)
  10365.     tone (247, 7)
  10366.     tone (330, 3)
  10367.     tone (247, 12)
  10368.     
  10369. ▓╬╝√: @3704[set bell]
  10370.  
  10371. .2251
  10372. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10373. @22[╫╓╖√┤«║»╩²╦≈╥²]
  10374.  
  10375. trim()
  10376. ╙∩╖¿: trim (<cExp>)
  10377. ╙├═╛: ┤╙╫╓╖√┤«╓╨╔╛│²╦∙╙╨╡─╬▓▓┐┐╒╕±íú
  10378. ▓╬╩²: 
  10379.     <cExp>    ╥¬╚Ñ╡⌠╬▓▓┐┐╒╕±╡─╫╓╖√┤«
  10380. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  10381. └²╫╙:? len ("go home?    ") // ╖╡╗╪10
  10382. ? len (rtrim ("go home?     ")) // ╖╡╗╪8
  10383.  
  10384. ▓╬╝√: @2201 [alltrim](), @2243 [rtrim]()
  10385.  
  10386. .2252
  10387. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10388. @22[╫╓╖√┤«║»╩²╦≈╥²]
  10389.  
  10390. type()
  10391. ╙∩╖¿: type (<cExp>)
  10392. ╙├═╛: ╚╖╢¿╦∙╓╕╢¿╫╓╖√▒φ┤∩╩╜─┌╚▌╡─╩²╛▌└α╨═íú
  10393. ▓╬╩²: 
  10394.     <exp>        ╥¬╚╖╢¿─┌╚▌└α╨═╡─╫╓╖√▒φ┤∩╩╜
  10395. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  10396. ╦╡├≈:     ▒φ┤∩╩╜<cExp> ▒╪╨δ╩╟╫╓╖√▒φ┤∩╩╜íú▓╗┐╔╥╘╢╘LOCAL └α╨═║═STATIC └α╨═
  10397. ▒Σ┴┐╟≤╓╡íútype() ║»╩²│²╖╡╗╪type() ║»╩²╦∙╖╡╗╪╡─╡Ñ╕÷╫╓╖√═Γ, ╗╣╙╨
  10398. ┴╜╕÷╖╡╗╪╓╡íú
  10399.     U     ╬▐╢¿╥σ╗≥NIL ╗≥LOCAL, STATIC
  10400.     UE     ╙∩╖¿┤φ
  10401.     UI     ╖╟╚╖╢¿┤φ╬≤
  10402. └²╫╙: 
  10403. temp: = {1, 2, 4}
  10404. ? type ( "temp" ) // ╩Σ│÷A
  10405.  
  10406. ▓╬╝√: @2254 [valtype]() ║»╩²
  10407.  
  10408. .1763
  10409. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10410. @17[╧╡═│║»╩²╦≈╥²]
  10411.  
  10412. updated()
  10413. ╙∩╖¿: updated()
  10414. ╙├═╛: ╚╖╢¿╘┌╢┴▓┘╫≈╞┌╝Σ─│╕÷╙≥╗≥─│╕÷▒Σ┴┐╩╟╖±▒╗
  10415. ╨▐╕─íú
  10416. ▓╬╩²: ╬▐
  10417. ╖╡╗╪╓╡: ┬▀╝¡└α╨═
  10418. ╦╡├≈:     ╘┌READ ├┐┤╬╞⌠╢»╩▒, updated() ║»╩²╢╝▒╗╔Φ╓├╬¬.F.íú╚τ╣√▒Σ┴┐╗≥╫╓╢╬
  10419. ╓╨╡─╚╬║╬╥╗╕÷▒╗╨▐╕─, ╘≥updated() ║»╩²▒╗╓╪╨┬╔Φ╓├╬¬.T.íúupdated() ║»╩²╜÷─▄
  10420. ╛⌡▓∞╡╜═¿╣²╝ⁿ┼╠╦∙╫≈╡─╨▐╕─, ═¿╣²SET KEY ├ⁿ┴ε╗≥VALID ├ⁿ┴ε═Ω│╔
  10421. ╡─╕│╓╡▓┘╫≈▓╗╗ß╥²╞≡updated() ║»╩²╖╡╗╪╓╡╡─▒Σ╗»íú
  10422. └²╫╙:// ╚τname ▒╗╨▐╕─, ╘≥mytime, mydate ╥▓╕ⁿ╨┬
  10423.      ú└ 10, 10 say" ╩Σ╚δ╨╒├√: " get name
  10424.     read
  10425.     if updated() //name ▒╗╨▐╕─
  10426.     replace mytime with time() // ╕ⁿ╨┬mytime
  10427.     replace mydate with date() // ╕ⁿ╨┬mydate
  10428.     endif
  10429.  
  10430. ▓╬╝√: ú└.. say.. get
  10431.  
  10432. .2253
  10433. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10434. @22[╫╓╖√┤«║»╩²╦≈╥²]
  10435.  
  10436. upper()
  10437. ╙∩╖¿: upper (<cExp>)
  10438. ╙├═╛: ░╤╫╓╖√┤«╓╨╡─╫╓─╕╫¬╗╗╬¬┤≤╨┤╫╓─╕íú
  10439. ▓╬╩²: 
  10440.     <cExp>    ╥¬╫¬╗╗╡─╫╓╖√┤«
  10441. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  10442. └²╫╙:? upper ("temp") // ╩Σ│÷TEMP
  10443.  
  10444. .1223
  10445. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10446. @12[▒¿▒φ╔Φ╝╞║»╩²╦≈╥²]
  10447.  
  10448. usec
  10449. ╙∩╖¿:    usec()
  10450. ╙├═╛:     ╘┌▒¿▒φ╔Φ╝╞╓╨╚í╡▒╟░╧ε╡─╓╡íú╕├║»╩²╓≈╥¬╙├╙┌└█
  10451. ╝╙ú¿ ╓╕▒╛╥│└█╝╞╓«└αú⌐íú ╘┌▒¿▒φ├┐╩Σ│÷╥╗╥│ú¼┐╔╜½╡▒
  10452. ╟░╧ε╡─╓╡╙δ║╧╝╞╓«╓╡╜°╨╨╟≤║═ú¼╜ß╣√╚╘╚╗╖┼╘┌╡▒
  10453. ╟░╧εú¼╧┬╥╗╥│╟≤╓╡╚τ╖¿┼┌╓╞ú¼─╟├┤╡▒╟░╧ε╡─╓╡╜½│╔
  10454. ╬¬├┐╥╗┴╨╡─└█╝╞╜ß╣√íú
  10455. ▓╬╩²:╬▐
  10456. ╖╡╗╪╓╡:╩²╓╡
  10457. └²╫╙:USEC( )+SUMC( )    //╟≤└█╝╞
  10458.     
  10459. .2480
  10460. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10461. @24[╩²╛▌┐Γ▓┘╫≈║»╩²╦≈╥²]
  10462.  
  10463. used()
  10464. ╙∩╖¿: used()
  10465. ╙├═╛: ╚╖╢¿╘┌╡▒╟░╣ñ╫≈╟°╓╨╩╟╖±╙╨╩²╛▌┐Γ▒╗┤≥┐¬íú
  10466. ▓╬╩²: ╬▐
  10467. ╖╡╗╪╓╡: ┬▀╝¡└α╨═
  10468. ╦╡├≈: ╚τ╣√╡▒╟░╣ñ╫≈╟°╓╨╙╨╩²╛▌┐Γ▒╗┤≥┐¬╖╡╗╪.T., ╖±╘≥╖╡
  10469. ╗╪.F.íú
  10470. └²╫╙: 
  10471. select (2)
  10472. use my
  10473. ? used() // ╖╡╗╪.T.
  10474.  
  10475. ▓╬╝√: @3150[use], @2467 [neterr]()    
  10476.  
  10477. .1224
  10478. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10479. @12[▒¿▒φ╔Φ╝╞║»╩²╦≈╥²]
  10480.  
  10481. usenum
  10482. ╙∩╖¿:    usenum()
  10483. ╙├═╛:    ╘┌▒¿▒φ╔Φ╝╞╓╨╩╣╙├╨≥║┼ú¼╕├║»╩²├┐╡≈╙├╥╗┤╬
  10484. ú¼╜½▓·╔·╥╗┴¼╨°╡─╨≥║┼ú¼╡┌╥╗┤╬╩╟1ú¼╥╘║≤╓≡┤╬╝╙
  10485. 1íú╦ⁿ┐╔╥╘╙├╘┌╤¡╗╖▒φ╓╨ú¼╙├╥╘╩Σ│÷┤≥╙í╡─╨≥║┼íú
  10486. ▓╬╩²:╬▐
  10487. ╖╡╗╪╓╡:╩²╓╡
  10488.  
  10489. .2108
  10490. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10491. @21[╫¬╗╗║»╩²╦≈╥²]
  10492.  
  10493. val()
  10494. ╙∩╖¿: val (<nExp>)
  10495. ╙├═╛: ╜½╢╘╫╓╖√┤«▒φ┤∩╩╜╟≤╓╡íú
  10496. ▓╬╩²: 
  10497.     <nExp>    ╥¬╫¬╗╗╡─╫╓╖√┤«
  10498. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  10499. └²╫╙: temp: =time()
  10500.     for i=1 to 3
  10501.     res [i]: =val (substr (temp, 3* (i-1) +1, 2)) //res ╡─╜ß╣√└α╦╞{04, 11, 20}
  10502.     next i
  10503.     
  10504. ▓╬╝√: @3201[set decimals], @2245 [str]()        
  10505.  
  10506. .2254
  10507. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10508. @22[╫╓╖√┤«║»╩²╦≈╥²]
  10509.  
  10510. valtype()
  10511. ╙∩╖¿: valtype (<exp>)
  10512. ╙├═╛: ╢╘╥╗╕÷▒φ┤∩╩╜╡─╖╡╗╪╓╡╚╖╢¿╩²╛▌└α╨═íú
  10513. ▓╬╩²: 
  10514.     <exp>        ╥¬╚╖╢¿└α╨═╡─▒φ┤∩╩╜
  10515. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  10516. ╦╡├≈:     ▒φ┤∩╩╜<exp> ┐╔╥╘╩╟╚╬║╬└α╨═íú┐╔╥╘░ⁿ└¿╢╘LOCAL └α╨═║═STATIC └α
  10517. ╨═▒Σ┴┐╡─╥²╙├íú
  10518.     valtype() ║»╩²╖╡╗╪╡Ñ╕÷╫╓╖√╥╘▒φ╩╛▒φ┤∩╩╜╡─└α╨═íú
  10519.     A     ╩²╫Θ└α╨═
  10520.     B     ┤·┬δ┐Θ└α╨═
  10521.     C     ╫╓╖√└α╨═
  10522.     D     ╚╒╞┌└α╨═
  10523.     L     ┬▀╝¡└α╨═
  10524.     M     ▒╕╫ó╫╓╢╬└α╨═
  10525.     N     ╩²╫╓└α╨═
  10526.     U     ╬▐╢¿╥σ╗≥NIL
  10527. └²╫╙: 
  10528. temp: = {1, 2, 4}
  10529. ? valtype (temp)     // ╩Σ│÷A
  10530.  
  10531. ▓╬╝√: @2252 [type( )]
  10532.  
  10533. .1764
  10534. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10535. @17[╧╡═│║»╩²╦≈╥²]
  10536.  
  10537. version()
  10538. ╙∩╖¿: version()
  10539. ╙├═╛: ╚╖╢¿WINBASE ╡─░µ▒╛║┼íú
  10540. ▓╬╩²: ╬▐
  10541. ╖╡╗╪╓╡: ╫╓╖√└α╨═
  10542. ╦╡├≈: version() ║»╩²╓┤╨╨╩▒╜½╖╡╗╪WINBASE ╡─░µ▒╛║┼íú
  10543. └²╫╙: 
  10544. ú└ 12, 10 say "WINBASE ╡─░µ▒╛║┼╬¬: "+version()
  10545.      // ╜ß╣√└α╦╞WinBase ░µ▒╛2. 5, 1994
  10546.     
  10547. ▓╬╝√: @1725 [iscolor](), @1732 [os]()    
  10548.  
  10549. .1644
  10550. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10551. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  10552.  
  10553. vgaclose()
  10554. ╙∩╖¿: vgaclose()
  10555. ╙├═╛: ╣╪▒╒╞┴─╗╧╘╩╛
  10556. ▓╬╩²: ╬▐
  10557. ╖╡╗╪╓╡: ╬▐
  10558. └²╫╙:    vgaclose()
  10559.     ? "winbase"
  10560.     inkey (0)
  10561.     vgaopen()
  10562.  
  10563. .1645
  10564. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10565. @16[═╝╨╬═╝╧≤║»╩²╦≈╥²]
  10566.  
  10567. vgaopen()
  10568. ╙∩╖¿: vgaopen()
  10569. ╙├═╛: ┤≥┐¬╞┴─╗╧╘╩╛
  10570. ▓╬╩²: ╬▐
  10571. ╖╡╗╪╓╡: ╬▐
  10572. └²╫╙▓╬╝√ @1644[vgaclose()]
  10573.  
  10574. .1767
  10575. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10576. @17[╧╡═│║»╩²╦≈╥²]
  10577.  
  10578. wbs_on()
  10579. ╙∩╖¿: wbs_on()
  10580. ╙├═╛:     ╘┌WBSDOS ║║╫╓╧╡═│╧┬, ╘┌═╝╨╬╖╜╩╜╧┬┤≥┐¬╣Γ▒Ω, ╛═┐╔╩╣╙├╒²
  10581. │ú╣Γ▒Ω▓┘╫≈íú
  10582. ▓╬╩²: ╬▐
  10583. ╖╡╗╪╓╡: ╬▐
  10584.  
  10585. .1766
  10586. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10587. @17[╧╡═│║»╩²╦≈╥²]
  10588.  
  10589. wbs_off()
  10590. ╙∩╖¿: wbs_off()
  10591. ╙├═╛: ╘┌WBSDOS ║║╫╓╧╡═│╧┬, ╣╪▒╒╣Γ▒Ω▓ó╩╣╡├╦∙╙╨╒²│ú╣Γ▒Ω▓┘
  10592. ╫≈╩º░▄íú
  10593. ▓╬╩²: ╬▐
  10594. ╖╡╗╪╓╡: ╬▐
  10595.  
  10596. .1007
  10597. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10598. @10[┤░┐┌║»╩²╦≈╥²]
  10599.  
  10600. wbedit()
  10601. ╙∩╖¿: wbedit (<cStr>, <nRow1>, <nCol1>, <nRow2>, <nCol2>, <cTitle>, ;
  10602.         <nFc>, <nBc>, <modi_flag>,<rdonly>, <window>)
  10603. ╙├═╛: ╡»│÷╢╘cStr ╜°╨╨▒α╝¡╨▐╕─╡─┤░┐┌, ╞Σ╓╨
  10604. ▓╬╩²:     <cStr>             ┤²▒α╝¡╫╓┤«
  10605.     <nRow1, nCol1>     ┤░┐┌╫≤╔╧╜╟╫°▒Ω
  10606.     <nRow2, nCol2>     ┤░┐┌╙╥╧┬╜╟╫°▒Ω
  10607.     <cTitle>         ┤░┐┌▒Ω╠Γ
  10608.     <nFc, nBc>        ┤░┐┌╟░╛░╔½, ▒│╛░╔½
  10609.     <modi_flag>         ╚⌠╬¬╒µ▒φ╩╛╢╘str ╥╤╨▐╕─╣²(╚▒╩í╬¬.F.)
  10610.     <rdonly>         ╚⌠╬¬╒µ▒φ╩╛╓╗╢┴(╚▒╩í╬¬╢┴╨┤)
  10611.     <window>         ╚⌠╬¬┐╒╘≥╗¡│÷┤░┐┌(╚▒╩í╬¬╗¡│÷)
  10612. ╖╡╗╪╓╡: ▒α╝¡║≤╡─╫╓┤«
  10613. └²╫╙: wbedit ("winbase", 5, 5, 15, 40, "winbase 2. 5")
  10614.  
  10615. .1765
  10616. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10617. @17[╧╡═│║»╩²╦≈╥²]
  10618.  
  10619. wbhelp()
  10620. ╙∩╖¿: wbhelp (<cHelpfile>, <deyword>, <cTitle>, <nTitlecolor>, <nFc>, <nBc>)
  10621. ╙├═╛: ┤╙░∩╓·╬─╝■╓╨╠ß╚í▓ó╧╘╩╛╨┼╧ó
  10622. ▓╬╩²:     
  10623. <helpfile>     ╩²╛▌┐Γ╬─╝■, ╦ⁿ╙╔┴╜╕÷╫╓╢╬╫Θ│╔wb_help, wb_title
  10624. <layword>     ░∩╓·╬─╝■╡─╣╪╝ⁿ╫╓
  10625. <cTitle>         ░∩╓·┤░┐┌▒Ω╠Γ
  10626. <nTitlecolor>     ░∩╓·┤░┐┌▒Ω╠Γ╤╒╔½
  10627. <nFc>         ░∩╓·╨┼╧ó╧╘╩╛╡─╟░╛░╔½
  10628. <nBc>         ░∩╓·╨┼╧ó╧╘╩╛╡─▒│╛░╔½
  10629. ╖╡╗╪╓╡: ╬▐
  10630. └²╫╙:
  10631.  
  10632. .2367
  10633. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10634. @23[╡═╝╢╬─╝■╝░┤┼┼╠║»╩²╦≈╥²]
  10635.  
  10636. wbsbackup()
  10637. ╙∩╖¿: wbsbackup (<nMode>, <cDiskDriveLetter>, <aFileNames> )
  10638. ╙├═╛: ▒╕╖▌╗≥╗╓╕┤╬─╝■
  10639. ▓╬╩²:
  10640. <nMode>=1         ▒╕╖▌▓┘╫≈
  10641. <nMode>=2         ╗╓╕┤▓┘╫≈
  10642. <cDiskDriveLetter>     ╬¬╟²╢»╞≈▒Ω╩╢╖√
  10643. <aFileNames>     ╬─╝■├√╫Θ╫╓╖√┤«, └α╨═▓╗═¼╡─╬─╝■╙├╖╓║┼╖╓╕⌠
  10644. ╖╡╗╪╓╡: │╔╣ª╖╡╗╪.T., ╖±╘≥╖╡╗╪.F.
  10645. └²╫╙:     wbsbackup (1, "B", "c: \*. com; *. bat")
  10646.     wbsbackup (2, "B", "C: \temp")
  10647.  
  10648. .2513
  10649. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10650. @25[├ⁿ┴ε╩²╦≈╥²]
  10651.  
  10652. while()
  10653. ╙∩╖¿: while (<cExp>, [<cFunc>])
  10654. ╙├═╛: ┬·╫π╠⌡╝■╩▒╓┤╨╨║»╩²
  10655. ▓╬╩²:    
  10656.     <cExp>     ┬▀╝¡▒φ┤∩╩╜╫╓╖√┤«
  10657.     <cFunc>     ║»╩²├√╫╓╖√┤«
  10658. ╖╡╗╪╓╡: ╬▐
  10659. └²╫╙:
  10660. while ( "m_press( 0 )==1 )    //╡▒╩≤▒Ω░┤╧┬╢°├╗╙╨╖┼┐¬╩▒╥╗╓▒╤¡╗╖
  10661.  
  10662. .1101
  10663. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10664. @11[╩²╛▌┐Γ╬¼╗ñ║»╩²╦≈╥²]
  10665.  
  10666. winbrows( )
  10667. ╙∩╖¿:winbrows (<cTitle>, <nRow1>, <nCol1>, <nRow2>, <nCol2>, <nWidth>, ;
  10668.     <nColnum>, <cFlag>,<cDbfname>,<cDbfntx>,<cDbfform>,;
  10669.     <cFormform>,<nWinfc>,<nWinbc>, <nSayfc>,<nSaybc>,<nBarfc>,;
  10670.     <nBarbc>,<nDelfc>,<nDelbc>,[<nInitfunc>,<cAddfunc>,;
  10671.     <cPrtname>, <nPrtflag>, <cBackfunc>, <cHelpfunc>, <cRelfunc>] )
  10672. ╙├═╛ú║╢╘╩²╛▌┐Γ╜°╨╨╬¼╗ñ▓┘╫≈ú¼▓ó┐╔╔Φ╝╞║═┤≥╙í▒¿▒φíú
  10673. ▓╬╩²:
  10674.     <cTitle>         ┤░┐┌▒Ω╠Γ
  10675.     <nRow1,nCol1>    ┤░┐┌╫≤╔╧╜╟╨╨┴╨╫°▒Ω
  10676.     < nRow2, nCol2>    ┤░┐┌╙╥╧┬╜╟╨╨┴╨╫°▒Ω
  10677.     <nWidth>         ┤╣╓▒╧╘╩╛╡─╫╓╢╬┐φ╢╚
  10678.     <nColnum>         ┤╣╓▒╧╘╩╛╡─└╕╩²
  10679.     <cFlag>        ╬¼╗ñ╖╜╩╜
  10680.                     :"H"=> ╦«╞╜╖╜╩╜,
  10681.                     "V"=> ┤╣╓▒╖╜╩╜,
  10682.                     "F"=> ╫¿╕±╖╜╩╜,
  10683.                     "R"=> ║ß▒φ╖╜╩╜
  10684. ╫óú║╘┌"H"íó"V"íó"F"íó"R" ║≤┐╔╥╘╕╜╝╙┴╜╕÷▒Ω╓╛:
  10685. R: ▒φ╩╛╓╗╢┴╡─, └²╚τ: "HR"íó"RR" ╡╚
  10686. D: ▒φ╩╛╫╓╢╬╡─▒α╝¡╘┌╡▒╟░╬╗╓├╜°╨╨, ╬▐╨δ╡»│÷▒α╝¡┤░
  10687. ┐┌íú
  10688.  
  10689.     <cDbfname>         ╩²╛▌┐Γ├√│╞
  10690.      <cDbfntx>         ╩²╛▌┐Γ╦≈╥²├√
  10691.      <cDbfform>         ═¿╙├╕±╩╜╬─╝■
  10692.     <cFormform>         ╫¿╙├╕±╩╜╬─╝■
  10693.     <nWinfc, nWinbc>     ┤░┐┌╡─╟░╛░íó▒│╛░╔½
  10694.     <nSayfc, nSaybc>     ╫╓╢╬╒²│ú╧╘╩╛╡─╟░╛░íó▒│╛░╔½
  10695.     <nBarfc, nBarbc>     ┴┴╠⌡╦∙╘┌╫╓╢╬╡─╟░╛░íó▒│╛░╔½
  10696.     <nDelfc, nDelbc>     ╥╤╔╛│²╫╓╢╬╡─╟░╛░íó▒│╛░╔½
  10697.     <cInitfunc>         ╬¼╗ñ╡─│⌡╩╝╗»║»╩²
  10698.     <cAddfunc>         ╘÷╝╙╨┬╝╟┬╝╩▒┐╔╓┤╨╨╡─║»╩²
  10699.     <cPrtname>         ▒¿▒φ╬─╝■├√
  10700. <nPrtflag>         ┤≥╙í▒Ω╝╟, 0== ╔Φ╝╞┤≥╙í, 1== ╓╗╫╝┤≥╙í
  10701.         2== ▓╗╫╝▓┘╫≈, 3== ╥╗░π▓┘╫≈, 4== ▓╗─▄┤µ┼╠
  10702. <cBackfunc>    ╗╪╡≈║»╩², ╝ⁿ╓╡(╝ⁿ┼╠╡─╗≥╩≤▒Ω╡─) ╫≈╬¬▓╬╩², ┐╔╩╣╙├╥╗╨⌐═¿
  10703. ╙├▒Σ┴┐
  10704.     <cHelpfunc>        ╫╓╢╬╡─░∩╓·║»╩²├√, ╫╓╢╬├√╫≈╬¬▓╬╩²
  10705.     <cRelfunc>        ╣╪┴¬║»╩²
  10706.  
  10707. └²╫╙:
  10708. #include "winbase. inc"
  10709. memvar brow_fom, brow_dbf, cur_filter, tr_no, sh_no, mc, comm, pnm
  10710. memvar mousenm, m_sw, pre_x, pre_y, op, prekey, key
  10711. field bs__field, bs__type, name
  10712.  
  10713. function f_main ()
  10714. private mc: =0, mousenm, m_sw: =0, op: =0
  10715. private tr_no: =" ", sh_no: =" ", pnm, pre_x: =1000, pre_y: =1000, prekey: =""
  10716. private man: = {" ║ß▒φ", " ═¿╙├"}, man1: = {'R', 'H'}
  10717.  
  10718. windowstart ()
  10719. mouse (1)
  10720. eval (cur__off)
  10721. do while op==0
  10722. op: =0
  10723. op: =popup (10, 10, man)
  10724. enddo
  10725. winbrows ("WINBROWS ╩╛╖╢", 5, 2, 20, 78, 10, 1, man1 [op],;
  10726.      "rec. dbf",, "rec. fom", "rec. bsf", 12, 7, 0, 7, 0, 11, 4, 7;
  10727.     ,,,,, "win_back")
  10728. mousekey: =""
  10729. windowexit()
  10730. return 0
  10731.  
  10732. function arch()
  10733. local keepfilt: =cur_filter, i
  10734.  
  10735. i: =prekey
  10736. if. not. empty (i)
  10737. if i==K_ENTER. or. i==K_MS_LEFT
  10738.  
  10739. tr_no: =trim (&brow_dbf->name)
  10740. winbrows (" ╕÷╚╦╟Θ┐÷", 8, 5, 19, 75, 10, 1, "HD", "arch. dbf",, "arch. fom",,;
  10741. 12, 7, 0, 7, 0, 11, 4, 7, "arch_i", "arch_a",,, "arch_b")
  10742. cur_filter: =keepfilt
  10743. endif
  10744. endif
  10745. return nil
  10746.  
  10747. function win_back()
  10748. local i: =mouserow()
  10749.  
  10750. prekey: =key
  10751. if key=K_F1
  10752. msgbox ("press F1", "", 1)
  10753. return key
  10754. endif
  10755. return key
  10756.  
  10757. function arch_i()
  10758. local curarea: =alias()
  10759.  
  10760. select &brow_dbf
  10761. set filter to trim (name) =tr_no
  10762. cur_filter="trim (name) =tr_no"
  10763. go top
  10764. backarea (curarea)
  10765. return (1)
  10766.  
  10767. function arch_a()
  10768. local curarea: =alias()
  10769.  
  10770. select &brow_dbf
  10771. lockrec()
  10772. replace &brow_dbf->name with tr_no
  10773. unlock
  10774. backarea (curarea)
  10775. return (1)
  10776.  
  10777. function arch_b (key)
  10778. local curarea: =alias()
  10779.  
  10780. pnm: ="1"
  10781. select &brow_dbf
  10782. if. not. eof()
  10783.     pnm: ="P"+alltrim (&brow_dbf->name) +". PCX"
  10784. endif
  10785. backarea (curarea)
  10786. return (key)
  10787.  
  10788. procedure backarea (area)
  10789. if !empty (area)
  10790.     select &area
  10791. endif
  10792. return
  10793.  
  10794. function p_show()
  10795.     tone (660, 3)
  10796.     mouse (0)
  10797.     makewindow (6, 45, 24, 79, " ═╝╞¼", 7, 7, 2)
  10798.     if file (pnm)
  10799.         pcx (pnm, 46*8, 7*LINES, 79*8, 25*LINES-8)
  10800.     else
  10801.         msgbox (" ═╝╨╬╬─╝■▓╗┤µ╘┌", "", 1)
  10802.     endif
  10803.     mouse (1)
  10804.     do while mousekey() =0
  10805.     enddo
  10806.     mappal16 ()
  10807.     mouse (0)
  10808.     removewindow ()
  10809.     mouse (1)
  10810. return nil
  10811.  
  10812. function comp (high)
  10813. if val (high) <0. or. val (high) >3
  10814.     msgbox (" ╔φ╕▀▓╗╒²│ú", "", 1)
  10815.     return.F.
  10816. endif
  10817. return.T.
  10818.  
  10819. function c_value (weig)
  10820. local xs, xd: =5. 0, xa: =10. 0, i
  10821.  
  10822. xs: =60. 0/1. 7
  10823. if val (&brow_dbf->height) <>0
  10824.     i: =xs*val (&brow_dbf->height)
  10825.     do case
  10826.     case i+xa<weig
  10827.         msgbox (" ╖╩┼╓", " ╔┘│╘╡π", 1)
  10828.     case i-xd>weig
  10829.         msgbox (" ╞½╩▌", " ╢α│╘╡π", 1)
  10830.     otherwise
  10831.         msgbox (" ▒ú│╓╠σ╨╬", "", 1)
  10832.     endcase
  10833. endif
  10834. return 1
  10835.  
  10836. .1008
  10837. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10838. @10[┤░┐┌║»╩²╦≈╥²]
  10839.  
  10840. winclear()
  10841. ╙∩╖¿: winclear (<nColor>)
  10842. ╙├═╛: ╦ó╨┬┤░┐┌
  10843. ▓╬╩²: 
  10844.     <nColor>    ╬¬╓╕╢¿╤╒╔½(0-15), ┐╔╬¬┐╒
  10845. ╖╡╗╪╓╡: NIL
  10846.  
  10847. .1009
  10848. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10849. @10[┤░┐┌║»╩²╦≈╥²]
  10850.  
  10851. window()
  10852. ╙∩╖¿: window()
  10853. ╙├═╛: ╖╡╗╪╡▒╟░┤░┐┌╛Σ▒·
  10854. ▓╬╩²: ╬▐
  10855. ╖╡╗╪╓╡: ╡▒╟░┤░┐┌╛Σ▒·
  10856.  
  10857. └²╫╙:
  10858. /* ╜½╡▒╟░┤░┐┌╛Σ▒·┤µ╚δ▒Σ┴┐nHandle ╓╨, ▓ó╙├└╢╔½╦ó╨┬┤░┐┌, ╟σ╞┴
  10859. ╓╪╗¡┤░┐┌*/
  10860.  #include "winbase.inc"
  10861. procedure example7()
  10862. local handle // ╢¿╥σ┤░┐┌╛Σ▒·╬¬╛▓╠¼▒Σ┴┐
  10863.     windowstart() // │⌡╩╝╗»Winbase
  10864.     makewindow (10, 10, 20, 70, "WINBASE ═╝╬─┤░┐┌", 4, 3, 1)
  10865.              // ╗¡╥╗┤░┐┌
  10866.     handle: =window() // ╗±╡├╕├┤░┐┌╛Σ▒·
  10867.     winclear (1) // ╙├└╢╔½╦ó╨┬┤░┐┌
  10868.     inkey (1) // ╤╙╩▒1 ├δ
  10869.     cls // ╟σ╞┴
  10870.     gotowindow (handle) // ╫¬╡╜<handle> ╓╕╢¿╡─┤░┐┌
  10871.     redrawwin() // ╓╪╗¡┤░┐┌
  10872.     inkey (1) // ╤╙╩▒1 ├δ
  10873.     removewindow() // ╣╪▒╒╕├┤░┐┌
  10874.     windowexit() // ═╦│÷Winbase
  10875. return
  10876.  
  10877. ▓╬╝√: @1008 [winclear](), @1004 [redrawwin](), @1001 [gotowindow](), @1005 [removewindow]()
  10878.  
  10879. .1010
  10880. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10881. @10[┤░┐┌║»╩²╦≈╥²]
  10882.  
  10883. windowexit()
  10884. ╙∩╖¿: windowexit()
  10885. ╙├═╛: ═╦│÷Winbase ╧╡═│
  10886. ▓╬╩²: ╬▐
  10887. ╖╡╗╪╓╡: NIL
  10888.  
  10889. └²╫╙▓╬╝√: @1013 [windowstart]()
  10890.  
  10891. .1011
  10892. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10893. @10[┤░┐┌║»╩²╦≈╥²]
  10894.  
  10895. windowget()
  10896. ╙∩╖¿: windowget (<nRow>, <nCol>, <cTitle>, <xVar>, <pict>)
  10897. ╙├═╛: ╗∙╙┌┤░┐┌╡─GET ▓┘╫≈
  10898. ▓╬╩²:     <nRow, nCol>         ╧α╢╘╙┌┤░┐┌╡─╨╨┴╨╫°▒Ω
  10899.     <cTitle>         ╩Σ╚δ╠ß╩╛(╫╓╖√┤«)
  10900.     <xVar>         GET ▒Σ┴┐
  10901.     <pict>             picture ─ú╩╜, ▓╬╝√: ú└... say
  10902. ╖╡╗╪╓╡: NIL
  10903.  
  10904. └²╫╙▓╬╝√: @1015 [winscroll]()
  10905.  
  10906.  
  10907. .1012
  10908. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10909. @10[┤░┐┌║»╩²╦≈╥²]
  10910.  
  10911. windowsay()
  10912. ╙∩╖¿: windowsay (<nRow>, <nCol>, <cString>)
  10913. ╙├═╛: ╗∙╙┌┤░┐┌╡─SAY ▓┘╫≈
  10914. ▓╬╩²:     
  10915.     <nRow, nCol>        ╧α╢╘╙┌┤░┐┌╡─╨╨┴╨╫°▒Ω
  10916.     <cString>        ╩Σ│÷╡─╫╓╖√┤«
  10917. ╖╡╗╪╓╡: NIL
  10918.  
  10919. └²╫╙▓╬╝√: @1015 [winscroll]()
  10920.  
  10921. .1013
  10922. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10923. @10[┤░┐┌║»╩²╦≈╥²]
  10924.  
  10925. windowstart()
  10926. ╙∩╖¿: windowstart (<cDbfpath>, <cPrtpath>)
  10927. ╙├═╛: │⌡╩╝╗»Winbase ╧╡═│
  10928. ▓╬╩²:     
  10929.     <cDbfpath>     ╖├╬╩╩²╛▌┐Γ╡─┬╖╛╢
  10930.     <cPrtpath>    ╜¿┴ó▒¿▒φ╬─╝■╡─┬╖╛╢
  10931. ╦╡├≈: ╚⌠┬╖╛╢▓╬╩²╬¬┐╒, ╘≥░┤╗╖╛│▒Σ┴┐BASEPATH ╔Φ╓├.
  10932. ╖╡╗╪╓╡: NIL
  10933.  
  10934. └²╫╙: 
  10935. #include "winbase.inc"
  10936. procedure example1()
  10937. windowstart ("c: \mydbf", "c: \myrep") 
  10938.     // ╩²╛▌┐Γ┬╖╛╢c: \mydbf, ▒¿▒φ╬─╝■┬╖╛╢c: \myrep
  10939.     makewindow (10, 10, 20, 70, " ╗╢╙¡╩╣╙├WINBASE", 1, 3, 1)
  10940.          // ╗¡╥╗┤░┐┌
  10941. ... ...
  10942.  
  10943.  
  10944. .1014
  10945. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10946. @10[┤░┐┌║»╩²╦≈╥²]
  10947.  
  10948. winoutput()
  10949. ╙∩╖¿: winoutput (<cString>)
  10950. ╙├═╛: ╘┌┤░┐┌╓╨╡─╡▒╟░╨╨╩Σ│÷╫╓╖√┤«
  10951. ▓╬╩²: 
  10952.     <cString>    ╩Σ│÷╡─╫╓╖√┤«
  10953. ╖╡╗╪╓╡: NIL
  10954.  
  10955. └²╫╙▓╬╝√: winscroll(), @1012 [windowsay]()
  10956.  
  10957. .1015
  10958. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10959. @10[┤░┐┌║»╩²╦≈╥²]
  10960.  
  10961. winscroll()
  10962. ╙∩╖¿: winscroll (<num>)
  10963. ╙├═╛: ╣÷╢»┤░┐┌╓╨╡──┌╚▌
  10964. ▓╬╩²: 
  10965.     <nNum>     ╣÷╢»╡─╨╨╩², ╒²╩²╔╧╣÷, ╕║╩²╧┬╣÷
  10966. ╖╡╗╪╓╡: NIL
  10967.  
  10968. └²╫╙: #include "winbase.inc"
  10969.     procedure example12()
  10970.     public name: =' '
  10971.     windowstart() // │⌡╩╝╗»Winbase
  10972.     makewindow (10, 10, 20, 70, "WINBASE ═╝╬─┤░┐┌", 4, 3, 1)
  10973.              // ╗¡╥╗┤░┐┌
  10974.     winclear (7) // ╙├░╫╔½╦ó╨┬┤░┐┌
  10975.     windowget (0, 1, " ╩Σ╚δ─π╡─╨╒├√: ", "name", "ú└A") 
  10976.             // ╡├╡╜╜÷╜╙╩╒┤≤╨í╨┤╫╓─╕
  10977.     read
  10978.     winoutput (" ╟δ╡╚┤²... ")
  10979.          // ╘┌┤░┐┌╡─╡▒╟░╨╨, ▒╛└²╬¬1 ╨╨, ╩Σ│÷" ╟δ╡╚┤²... "
  10980.     windowsay (8, 1, " ─π╡─╨╒├√: "+temp)
  10981.          // ╘┌┤░┐┌╡─8 ╨╨╩Σ│÷╜╙╩╒╡─name
  10982.     inkey (30) // ╤╙╩▒30 ├δ
  10983.     winscroll (1) // ┤░┐┌╓╨╡──┌╚▌╔╧╣÷1 ╨╨
  10984.     inkey (30) // ╤╙╩▒30 ├δ
  10985.     winscroll (-3) // ┤░┐┌╓╨╡──┌╚▌╧┬╣÷3 ╨╨
  10986.     inkey (30) // ╤╙╩▒30 ├δ
  10987.     removewindow() // ╣╪▒╒╕├┤░┐┌
  10988.     windowexit() // ═╦│÷Winbase
  10989.     return
  10990.  
  10991. ▓╬╝√: @1011 [windowget](), @1012 [windowsay](), @1014 [winoutput]()
  10992.  
  10993. .1016
  10994. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  10995. @10[┤░┐┌║»╩²╦≈╥²]
  10996.  
  10997. wintitle()
  10998. ╙∩╖¿: wintitle (<cNewtitle>, [<nColor>])
  10999. ╙├═╛: ╕─▒Σ╡▒╟░┤░┐┌╡─▒Ω╠Γ, ╚⌠╓╕╢¿color, ╘≥╥╘color ╫≈╬¬▒│╛░╔½íú
  11000. ▓╬╩²:    
  11001.     <cNewtitle>     ┤░┐┌╨┬▒Ω╠Γ
  11002.     [<nColor>]     ┤░┐┌╨┬▒│╛░╔½
  11003. ╖╡╗╪╓╡: ╬▐
  11004. └²╫╙: makewindow (5, 5, 20, 40, "winbase",,, 4)
  11005.     wintitle ("WINBASE 2.5", 9)    //╜½┤░┐┌▒Ω╠Γ╗╗╬¬WINBASE 2.5
  11006.  
  11007. .1932
  11008. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11009. @19[╚╒╞┌╩▒╝Σ║»╩²╦≈╥²]
  11010.  
  11011. year()
  11012. ╙∩╖¿: year (<dExp>)
  11013. ╙├═╛: ╢╘╥╗╕÷╚╒╞┌╟≤╓╡▓ó┤╙╓╨│Θ╚í│÷4 ╬╗╩²╫╓╨╬╩╜╡─
  11014. ─Ω┤·▓┐╖▌íú
  11015. ▓╬╩²: 
  11016.     <dExp>    ║╧╖¿╡─╚╒╞┌
  11017. ╖╡╗╪╓╡: ╩²╫╓└α╨═
  11018. └²╫╙:? year (date()) // ╜ß╣√└α╦╞1994
  11019.  
  11020. ▓╬╝√: @1908 [date](), @1912 [day](), @1924 [month]()
  11021.  
  11022.  
  11023.  
  11024. ╡┌╦─╒┬    ├ⁿ┴ε▓╬┐╝
  11025.  
  11026. .3001
  11027. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11028. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  11029.  
  11030. ? | ??
  11031. ╙∩╖¿:    ? | ?? <expList>
  11032. ╙├═╛:     ╜½▒φ┤∩╩╜╡─╓╡╩Σ│÷╡╜╞┴─╗╗≥┤≥╙í╗·íú
  11033. ▓╬╩²: 
  11034. <expList>    ╙├╙┌╧╘╩╛╗≥┤≥╙í╡─▒φ┤∩╩╜▒φ, ▒φ┤∩╩╜╝Σ╙├╢║║┼╖╓╕⌠
  11035. ┐¬íú▒φ┤∩╩╜┐╔╥╘╩╟╚╬║╬└α╨═íú
  11036. ╦╡├≈:     ╚τ╣√┤≥╙í╗·▒╗SET PRINTER ON/OFF ├ⁿ┴ε╝ñ╗ε, ╘≥╜ß╣√▒╗╩Σ│÷╡╜╞┴─╗║═
  11037. ┤≥╙í╗·íú? ├ⁿ┴ε╘┌┴╜╕÷? ├ⁿ┴ε╓«╝Σ╫╘╢»╩Σ│÷╥╗╕÷╗╪│╡║═╗╗
  11038. ╨╨╖√,?? ├ⁿ┴ε╘≥▓╗íú
  11039. └²╫╙:? " ╓╨╣·", 3, "asd" // ╧╘╩╛╓╨╣·3 asd
  11040.  
  11041. ▓╬╝√: @2508 [qout]|qqout() ║»╩²    
  11042.  
  11043. .3002
  11044. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11045. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  11046.  
  11047.  
  11048. ú└... box
  11049. ╙∩╖¿: ú└ <nToprow>, <nTopcol>, <nBotrow>, <nBotcol> box <cString>
  11050. ╙├═╛: ╘┌╞┴─╗╔╧╧╘╩╛╥╗╕÷╢¿╓╞╡─╖╜┐≥íú
  11051. ▓╬╩²:     
  11052.     <nToprow,nTopcol>    ╖╜┐≥╫≤╔╧╜╟╡─╨╨┴╨╫°▒Ωíú
  11053.     <nBotrow,nBotcol>    ╖╜┐≥╙╥╧┬╜╟╡─╨╨┴╨╫°▒Ωíú
  11054. <cString>     ╣╣│╔╖╜┐≥╡─░╦╕÷ASCII ┬δ╫╓╖√╫Θ│╔╡─┤«, ╦ⁿ┤╙╫≤╔╧╜╟┐¬╩╝
  11055. ░┤╦│╩▒╒δ╖╜╧≥╣ñ╫≈, ┴φ═Γ╝╙╥╗╕÷╠ε│Σ╖╜┐≥─┌▓┐╡─╫╓╖√, ╚⌠
  11056. ├╗╙╨╠ß╣⌐╠ε│Σ╖╜┐≥╡─╫╓╖√, ╘≥╖╜┐≥▓╗╙├╠ε│Σíú
  11057. ╦╡├≈:     ┐╔╥╘╩╣╙├winbase.inc ═╖╬─╝■╓╨╡─▒Ω╫╝╢¿╥σíú
  11058. B_SINGLE     ╖╜┐≥╡─╢Ñ╧▀, ╡╫╧▀, ┴╜╠⌡▓α╧▀╢╝╩╟╡Ñ╧▀
  11059. B_DOUBLE     ╖╜┐≥╡─╢Ñ╧▀, ╡╫╧▀, ┴╜╠⌡▓α╧▀╢╝╩╟╦½╧▀
  11060. B_SINGLE_DOUBLE     ╖╜┐≥╡─╢Ñ╧▀, ╡╫╧▀╩╟╡Ñ╧▀, ┴╜╠⌡▓α╧▀╢╝╩╟╦½╧▀
  11061. B_DOUBLE_SINGLE     ╖╜┐≥╡─┴╜╠⌡▓α╧▀╢╝╩╟╡Ñ╧▀, ╢Ñ╧▀, ╡╫╧▀╩╟╦½╧▀
  11062. └²╫╙:     temp: =chr (201) +chr (205) +chr (187) +chr (186) +chr (188) +chr (205) +;
  11063.         chr (200) +chr (186)
  11064.     ú└ 10, 20, 20, 40 box temp // ╗¡┴╦╥╗╕÷╦½╧▀╖╜┐≥
  11065.     
  11066. ▓╬╝√: @1606 [drawbox](), @1602 [box3d](), ú└.. to..,  ╓╞┐≥╫╓╖√▒φ
  11067.  
  11068. ╓╞┐≥╫╓╖√▒φ
  11069.  
  11070.             * ╓╞┐≥╫╓╖√╝░╞ΣASCII ┬δ╓╡*
  11071.     
  11072.     ╫╓╖√    ASCII ┬δ╓╡    ╫╓╖√    ASCII ┬δ╓╡    ╫╓╖√    ASCII ┬δ╓╡
  11073.     ⌐░    218         ⌐╗    200
  11074.     ====================================================    ⌐ñ    196         ⌐Ñ    205         ⌐└    195
  11075.     ====================================================    ⌐┤    191         ⌐╖    187         ⌐╟    204
  11076.     ====================================================    ⌐■    179         ⌐º    186         ⌐╚    180
  11077.     ====================================================    ⌐╝    217         ⌐┐    188         ⌐╧    185
  11078.     ====================================================    ⌐╨    194         ⌐╫    203         ⌐α    197
  11079.     ====================================================    ⌐╪    193         ⌐▀    202        ⌐∩    206
  11080.     ====================================================    ⌐▒    213         ⌐▓    214         ⌐╡    184
  11081.     ====================================================    ⌐╢    183         ⌐╣    212         ⌐║    211
  11082.     ====================================================    ⌐╜    190         ⌐╛    189         ⌐┴    198
  11083.     ====================================================    ⌐─    199         ⌐╔    181         ⌐╙    209
  11084.     ====================================================    ⌐╘    210         ⌐█    207         ⌐▄    208
  11085.     ====================================================    ⌐π    216         ⌐µ    215         ⌐╠    182
  11086.     ====================================================
  11087.     ▓╬╝√: [@3006[ú└... to]] ├ⁿ┴ε
  11088.  
  11089. .3003
  11090. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11091. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  11092.  
  11093. ú└... clear
  11094. ╙∩╖¿: ú└ <nToprow>, <nTopcol> [clear [to<nBotrow>, <nBotcol>]]
  11095. ╙├═╛: ╟σ│²╞┴─╗╔╧╡─╥╗┐Θ╛╪╨╬╟°╙≥íú
  11096. ▓╬╩²:    
  11097.     <nToprow,nTopcol>    ╨Φ╟σ│²╡─╛╪╨╬╟°╙≥╫≤╔╧╜╟╡─╨╨┴╨╫°▒Ω
  11098.     <nBotrow,nBotcol>    ╨Φ╟σ│²╡─╛╪╨╬╟°╙≥╙╥╧┬╜╟╡─╨╨┴╨╫°▒Ω
  11099. ╦╡├≈: ú└... clear ╘┌▓╬╩²╓╕╢¿╡─╡▒╟░╞┴─╗╟°╙≥─┌╠ε╚δ┐╒╕±, ╚╗║≤╜½
  11100. ╣Γ▒Ω╓├╙┌╫≤╔╧╜╟íú┤°TO ╫╙╛Σ╡─ú└... clear ╟σ│²╙╔<nToprow>, <nTopcol> ╛÷╢¿╡─╫≤╔╧╜╟║═
  11101. MAXROW(), MAXCOL() ╛÷╢¿╡─╙╥╧┬╜╟╡─╛╪╨╬╟°╙≥íú▓╗┤°clear ╡─ú└... clear ╜÷╜½╣Γ▒Ω╖┼╓├╘┌
  11102. ╥╘<nToprow> ╬¬╨╨╫°▒Ω, <nTopcol> ╬¬┴╨╫°▒Ω╡─╡π╔╧íú
  11103. └²╫╙: temp: =chr (201) +chr (205) +chr (187) +chr (186) +chr (188) +chr (205) +;
  11104.         chr (200) +chr (186)
  11105.     ú└ 10, 20, 20, 40 box temp // ╗¡┴╦╥╗╕÷╦½╧▀╖╜┐≥
  11106.     ú└ 10, 20 clear to 20, 40 // ╦½╧▀╖╜┐≥▒╗╟σ│²
  11107.     
  11108. ▓╬╝√: @1744 [scroll]()    
  11109.  
  11110. .3004
  11111. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11112. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  11113.  
  11114.  
  11115. ú└... prompt...
  11116. ╙∩╖¿: ú└ <nRow>, <nCol> prompt <cMenuItem> [MESSAGE<cString>]
  11117. ╙├═╛: ╘┌╞┴─╗╔╧╧╘╩╛╠ß╩╛íú
  11118. ▓╬╩²:     
  11119.     <nRow,nCol>        ╘┌╞┴─╗╔╧╖┼╓├╠ß╩╛╡─╡─╨╨, ┴╨╫°▒Ω
  11120.     <cMenuItem>         ┤≥╙í╘┌╞┴─╗╔╧╡─╠ß╩╛╒²╬─
  11121. <cString>    ╚╬╤í╫ó╩═┤«, ▓╗╣▄╩╟╖±╙├SET MESSAGE ├ⁿ┴ε╓╕╢¿, ╕├╫ó╩═┤«╢╝▒╗┤≥╙ííú
  11122. ╦╡├≈:     ├┐╕÷▓╦╡Ñ╫ε╢α┐╔╢¿╥σ32 ╕÷▓╦╡Ñ╧εíú╠ß╩╛╘┌▒╗╝ñ╗ε╓«
  11123. ╟░╥╗╓▒▒ú┤µ╘┌─┌┤µ╓╨íú╝ñ╗ε╙╔MENU TO ├ⁿ┴ε╓┤╨╨íú╥╗╛¡MENU TO ├ⁿ┴ε╝ñ
  11124. ╗ε, ╠ß╩╛╘≥╗ß╙├╡▒╟░╝╙┴┴╡─╤╒╔½╘┌╞┴─╗╔╧╧╘╩╛íú
  11125. └²╫╙: // ╔·│╔╥╗┴┴╠⌡▓╦╡Ñ
  11126.     set message to 24, center
  11127.     ú└ 10, 20 prompt " ╘÷╝╙: " message " ╘÷╝╙╥╗╕÷╨┬╝╟┬╝"
  11128.     ú└ 11, 20 prompt " ▒α╝¡: " message " ▒α╝¡╥╗╕÷╝╟┬╝"
  11129.     ú└ 12, 20 prompt " ╔╛│²: " message " ╔╛│²╥╗╕÷╝╟┬╝"
  11130.     menu to temp
  11131.     
  11132. ▓╬╝√: @3012[menu to], @3027[set message], @3030[set wrap], @1401 [achoice]()
  11133.  
  11134. .3005
  11135. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11136. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  11137.  
  11138.  
  11139. ú└... say... get
  11140. ╙∩╖¿:     ú└ <nRow>, <nCol> [say<exp> [picture<cSayPicture>]];
  11141.      [get<idVar>] [picture<cSayPicture>];
  11142.      [when<lCondition>] [range<dnLower>, <dnUpper>] [valid<lCondition>]
  11143. ╙├═╛:     ú└... say ▓┐╖▌╙├└┤╘┌╞┴─╗╗≥┤≥╙í╗·╔╧╢¿╬╗╧╘╩╛╗≥┤≥╙í
  11144. ╩²╛▌║═╧√╧óíú├ⁿ┴ε╡─GET ╫╙╛Σ╙├└┤╜¿┴ó╙├╙┌╩²╛▌╩Σ╚δ╡─
  11145. Getlist ╩²╫Θ, ▓ó═¿╣²READ ├ⁿ┴ε╝ñ╗εíú
  11146. ▓╬╩²:     
  11147. <nRow>, <nCol>     ╖┼╓├ú└... say... get ├ⁿ┴ε╩Σ│÷╜ß╣√╡─╞≡╩╝╨╨, ┴╨╫°▒Ω
  11148. <exp>         ╧╘╩╛╡─╨┼╧ó, picture ╫╙╛Σ╙├└┤╕±╩╜╗»SAY ▒φ┤∩╩╜
  11149. GET         ╓╕╢¿╜½▓┘╫≈╒▀╡─╩Σ╚δ┤µ╚δ╥╗╕÷─┌┤µ▒Σ┴┐, ╩²╫Θ╘¬╦╪
  11150. ╗≥╫╓╢╬╓╨íú╞τ╥σ╡─╥²╙├╜½╫≈╬¬╫╓╢╬╥²╙├╢╘┤²,   ╩Σ╚δ┐╔╙├
  11151. picture ▒φ┤∩╩╜└┤╕±╩╜╗»íú
  11152. when         ╕├╫╙╛Σ╓┤╨╨╥╗╕÷║╧╖¿╨╘╝∞▓Θíú
  11153. <lCondition>         ╬¬╥╗╕÷┬▀╝¡▒φ┤∩╩╜, ╓╡╬¬.T., ╣Γ▒Ω┐╔╥╞╚δ╧ε╟°▓ó╘╩╨φ╢╘<idVar> ╜°
  11154. ╨╨▒α╝¡╨▐╕─, ╖±╘≥, ▓╗╘╩╨φ╣Γ▒Ω┐╔╥╞╚δ╧ε╟°íú
  11155. valid         ╕├╫╙╛Σ╩╣╙├╗º░╤GET ╓╨╡─╓╡╙δ╙├╗º╫╘╢¿╥σ║»╩²╧α▒╚
  11156. ╜╧, ╥╘╚╖╢¿GET ╓╡╡─║╧╖¿╨╘íú│²╖╟valid ╫╙╛Σ╖╡╗╪.T., ╖±╘≥╓╗─▄═¿╣²░┤
  11157. ESC ╝ⁿ╓╒╓╣GETíú
  11158. range         ╕├╫╙╛Σ╙├└┤╜½╩▒╝Σ║═╩²╫╓╓╡╧▐╢¿╘┌╫ε╨í╓╡<dnLower> ║═╫ε
  11159. ┤≤╓╡<dnUpper> ╓«╝Σíú
  11160. ╦╡├≈:     ╧┬▒φ╕°│÷picture ║»╩²╩╣╙├╡─╖√║┼
  11161.  
  11162.       ╖√║┼      ╩²╛▌└α╨═     ╦╡├≈
  11163.       A*        C            GET╓╨╜÷╜╙╩╒╫╓─╕
  11164.       B         N            ╧≥╫≤╡≈╒√╩²╫╓╨═╩Σ╚δ
  11165.       C         N            ╒²╩²║≤╡─┤√╖╜╖√║┼(CR)
  11166.       E         D,N          ╙ó╣·╩▒╝Σ╕±╩╜,┼╖╓▌╩²╫╓╕±╩╜
  11167.       K*        C,D,N,L      ╚τ░┤╧┬╡─╡┌╥╗╕÷╝ⁿ▓╗╩╟╣Γ▒Ω╝ⁿ,╘≥╔╛│²╡▒╟░╓╡
  11168.       R         C            ┐╔▓σ╚δ╡─╖╟─ú░σ╫╓╖√
  11169.       S<n>*     C            ╘╩╨φGET╡─┐φ╢╚╨í╙┌╙≥┐φ,╣÷╢»╥╘╜╙╩╒│ñ╡─╩Σ╚δ
  11170.       X         N            ╕║╩²║≤╡─╜Φ╖╜╖√║┼
  11171.       Z         N            ░╤┴π╝╟╬¬┐╒░╫
  11172.       (         N            ╘▓└¿║┼╓╨┤°╙╨╟░╡╝┐╒╕±╡─╕║╩²
  11173.       )         N            ╘▓└¿║┼╓╨▓╗┤°╟░╡╝┐╒╕±╡─╕║╩²
  11174.       !         C            ╧ú═√╫╓─╕╫¬╗╗╬¬┤≤╨┤╨╬╩╜
  11175.  
  11176.  
  11177. * ▒φ╩╛╜÷╢╘▒α╝¡║╧╖¿íú
  11178.  
  11179. ╚τ╣√╙╨─ú░σ┐╪╓╞╫╓╖√, ╘≥picture ║»╩²╙ª┤°╔╧╟░╡╝╖√║┼ú└ ▓ó╟╥
  11180. ╘┌║»╩²╖√║┼╡─║≤├µ╙ª╜⌠╕·╥╗╕÷┐╒╕±, ┐╔╥╘╓╕╢¿╢α╕÷
  11181. ║»╩²╖√║┼íú
  11182. ╧┬├µ╩╟picture ─ú░σ╖√║┼
  11183.     ╖√║┼            ╫ó╩═
  11184.     A         ╜÷╜╙╩╒┤≤╨┤╗≥╨í╨┤╫╓─╕
  11185.     N         ╜÷╜╙╩╒╫╓─╕╗≥╩²╫╓
  11186.     X         ╜╙╩╒╚╬║╬╫╓╖√
  11187.     Q         ╜÷╜╙╩╒╩²╫╓║═"+", "-"
  11188.     #         ╜÷╜╙╩╒╩²╫╓, ╖√║┼, ┐╒╕±
  11189.     L         ╜÷╜╙╩╒┬▀╝¡╓╡T ╗≥F
  11190.     Y         ╜÷╜╙╩╒┬▀╝¡╓╡Y ╗≥N
  11191.     !         ╜½╫╓─╕╫¬╗╗╬¬┤≤╨┤╨╬╩╜
  11192.     $         ╙├├└╘¬╖√║┼┤·╠µ╟░╡╝╕±(╩²╫╓)
  11193.     .         ╘┌╩²╫╓╨═╓╨╖┼╓├╨í╩²╡π
  11194.     ,         ╘┌╩²╫╓╨═╓╨╖┼╓├╢║║┼
  11195.  
  11196. ╚τ╣√╩╣╙├─ú░σ╖√║┼, ╘≥╦ⁿ├╟╙ª╕·╘┌picture ╫╙╛Σ╡─║»╩²╖√║┼
  11197. ║≤├µ, ▓ó╟╥┴╜╒▀╓«╝Σ╙ª╖┼╚δ╥╗╕÷┐╒╕±╫≈╬¬╖╓╕⌠╖√íú
  11198. └²╫╙:
  11199. /* ╧┬├µ└²╫╙╘┌╡┌╥╗╕÷READ ╓╨╝Σ░┤╧┬F10, ╘≥╙╓┐╔│÷╧╓╡┌╢■╕÷
  11200. READ*/
  11201.     cls
  11202.     v1: =v2: =space (10)
  11203.     ú└ 11, 5 say " ╩Σ╚δ╥╗╕÷╫╓: " get v1
  11204.     ú└ 12, 5 say " ╩Σ╚δ╥╗╕÷╫╓: " get v2
  11205.     set key -9 to next_gets
  11206.     read
  11207.     set key -9 to
  11208.     cls
  11209.     return
  11210.     prcedure next_gets
  11211.     local GetList: = {}
  11212.     temp: =savescreen (10, 5, 13, 70)
  11213.     v3: =space (4)
  11214.     ú└ 11, 15 say " ╩Σ╚δ╥╗╕÷╫╓: " get v3
  11215.     read
  11216.     ú└ 13, 15 say " ─π╩Σ╚δ╡─╩╟: "+v3+" ░┤╚╬╥╗╝ⁿ.. "
  11217.     inkey (0)
  11218.     restscreen (10, 5, 13, 70, temp)
  11219.     return
  11220.     
  11221. ▓╬╝√: clear get, @3022[set device]
  11222.     
  11223. .3006
  11224. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11225. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  11226.  
  11227.  
  11228. ú└... to...
  11229. ╙∩╖¿: ú└ <nToprow>, <nTopcol> to <nBotrow>, <nBotcol> [DOUBLE]
  11230. ╙├═╛: ╙├╙┌╗¡╥╗╕÷╡Ñ╧▀╗≥╦½╧▀╖╜┐≥╗≥╓▒╧▀íú
  11231. ▓╬╩²:     
  11232.     <nToprow,nTopcol>    ╖╜┐≥╫≤╔╧╜╟╡─╨╨┴╨╫°▒Ωíú
  11233.     <nBotrow,nBotcol>    ╖╜┐≥╙╥╧┬╜╟╡─╨╨┴╨╫°▒Ωíú
  11234.     <DOUBLR>        ╩╣╙├╦½╧▀╠⌡
  11235. ╦╡├≈:     ╚τ╣√╫≤╔╧╜╟╙δ╙╥╧┬╜╟╡─╨╨╫°▒Ω╧α═¼, ╘≥╗¡╥╗╦«╞╜
  11236. ╓▒╧▀íú
  11237.     ╚τ╣√╫≤╔╧╜╟╙δ╙╥╧┬╜╟╡─┴╨╫°▒Ω╧α═¼, ╘≥╗¡╥╗╩·╓▒╓▒
  11238. ╧▀íú
  11239. └²╫╙:     ú└ 10, 10 clear to 20, 70
  11240.     ú└ 10, 10 to 20, 70 double // ╗¡╥╗╕÷╦½╧▀╖╜┐≥
  11241.     
  11242. ▓╬╝√: @1606 [drawbox](), @1602 [box3d](), [@3002 [ú└...box]] ├ⁿ┴ε
  11243.  
  11244. .3007
  11245. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11246. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  11247.  
  11248.  
  11249. accept... to...
  11250. ╙∩╖¿: accept [<exp>] to <idVar>
  11251. ╙├═╛: ╜½╓▒╜╙╝ⁿ╚δ╡─┤«┤µ╚δ╥╗─┌┤µ▒Σ┴┐╓╨íú
  11252. ▓╬╩²: 
  11253. [<exp>]     ╙├╗º╓╕╢¿╧╘╩╛╘┌╞┴─╗╔╧╧√╧ó, ╥²╡╝▓┘╫≈╒▀┬╝╚δ╩²╛▌
  11254.     <idVar>    ┤µ╓ⁿ┬╝╚δ╨┼╧ó╡──┌┤µ▒Σ┴┐
  11255. ╦╡├≈:     ╜÷╡▒ENTER ╝ⁿ▒╗╝ⁿ╚δ╩▒, accept ▓┼╗ß╓╒╓╣íú╚τ╣√─┌┤µ▒Σ┴┐<idvar> ▓╗┤µ╘┌╗≥
  11256. ╢╘╡▒╟░▓╗┐╔╝√, ╘≥╜¿┴ó╥╗╕÷PRIVATE ╨═▒Σ┴┐íú
  11257. └²╫╙: accept " ╨╒├√: " to name
  11258.  
  11259. ▓╬╝√: ¬└... say... get, input, @1504 [inkey]()        
  11260.  
  11261. .3101
  11262. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11263. @31[╩²╛▌┐Γ├ⁿ┴ε]
  11264.  
  11265. append blank
  11266. ╙∩╖¿: append blank
  11267. ╙├═╛:     ╙├╙┌╘┌╩²╛▌┐Γ╡──⌐╬▓╠φ╝╙╥╗╕÷┐╒╝╟┬╝ú¼▓ó╟╥╜½
  11268. ╓╕╒δ╢¿╬╗╘┌╨┬╠φ╝╙╡─┐╒╝╟┬╝╔╧íú
  11269. ▓╬╩²:     ╬▐
  11270. ╦╡├≈:     ╚τ╣√╙├╗º╩╘═╝╘┌═°┬τ╗╖╛│╓╨╠φ╝╙╥╗┐╒╝╟┬╝╢°
  11271. ─┐▒Ω╩²╛▌┐Γ╙╓▒╗╞Σ╦√╙├╗º╦°╫í, ╒Γ╩▒NETERR() ╥╘╒µ╓╡╖╡╗╪, ╠φ
  11272. ╝╙▓┘╫≈╩º░▄íú╘┌═°┬τ╗╖╛│╓╨, append blank ╘┌╠φ╝╙┐╒░╫╝╟┬╝╩▒╜½╢╘╕├
  11273. ╝╟┬╝╝╙╦°, ╚τ╣√╠φ╝╙╩º░▄, NETERR() ╜½╬¬╒µíú
  11274. └²╫╙:     use my
  11275.     append blank
  11276.     skip
  11277.     ? eof() // ╖╡╗╪.T.
  11278.     
  11279. ▓╬╝√: @2406 [dbappend]()
  11280.  
  11281. .3102
  11282. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11283. @31[╩²╛▌┐Γ├ⁿ┴ε]
  11284.  
  11285. append from
  11286. ╙∩╖¿:     append from <xcFile> [fields <idField list>] [<scope>];
  11287.     [while <lCondition>] [for <lCondition>];
  11288.     [sdf|delimited [with blank|<xcDelimiters>]]
  11289. ╙├═╛:     ╜½─│╕÷╩²╛▌┐Γ(. DBF) ╬─╝■╗≥╥╘╢║║┼╢¿╜τ╡─╬─▒╛╬─╝■
  11290. ╗≥╒▀╧╡═│╩²╛▌╕±╩╜(. SDF) ╬─╝■╓╨╡─╝╟┬╝╢┴│÷└┤╠φ╝╙╡╜
  11291. ┴φ╥╗╕÷╩²╛▌┐Γ(. DBF) ╬─╝■╓╨íú
  11292. ▓╬╩²:
  11293. from     ╓╕╢¿╘┤╬─╝■<xcFile>íú╚τ╣√▓╗╓╕╢¿╬─╝■└α╨═, ╘≥╚▒╩í└⌐╒╣├√╬¬. DBFíú
  11294. ╚τ╣√╓╕╢¿┴╦╬─╝■└α╨═╡½╬─╝■├√▓╗║¼└⌐╒╣├√, ╘≥╝┘╢¿
  11295. └⌐╒╣├√╬¬. TXTíú
  11296.  [fields <idField list>]     ╘┌╜╙╩╒╡─. DBF ╬─╝■╓╨╤í╘±╥¬╠ε╨┤╡─╫╓╢╬íú╦ⁿ├╟╡─└α╨═▒╪
  11297. ╨δ╙δ╘┤╬─╝■╓╨╡─╧α═¼íú╚τ╘┤╫╓╢╬│ñ╢╚┤≤╙┌─┐╡─╫╓
  11298. ╢╬│ñ╢╚, ╘≥╩²╛▌╜½▒╗╜╪╢╠íú
  11299.  [<scope>]         ╘┤╩²╛▌┐Γ╓╨╝╟┬╝╡─╤í╚í╖╢╬ºíú╚τ╓╕╢¿NEXT<n>, ╘≥FOR/WHILE ╫╙╛Σ╜½▒╗
  11300. ╖╧╞·íú
  11301. while <lCondition>     ╓╕╢¿╓╒╓╣╕├├ⁿ┴ε╡─┬▀╝¡╠⌡╝■íú╕├╠⌡╝■╗∙╙┌<lCondition> ╦∙╓╕╢¿
  11302. ╫╓╢╬╡─╓╡íú
  11303. for <lCondition>     ╢╘<scope> ╦∙╓╕╢¿╖╢╬º╓╨╝╟┬╝╡──┌╚▌╓╕╢¿╥╗╕÷┬▀╝¡▓Γ╩╘íú
  11304. sdf (╧╡═│╩²╛▌╕±╩╜)     ╛▀╙╨╣╠╢¿╫╓╢╬│ñ╡─ASCII ╬─╝■, ├┐╕÷╝╟┬╝╙╔╗╪
  11305. │╡╜ß╩°íú╬─╝■╜ß╩°▒Ω╓╛╬¬▒Ω╫╝╡─DOS ╬─╝■╜ß╩°▒Ω╓╛(CTRL-Z), ╫╓╢╬
  11306. ╓«╝Σ▓╗╙├╚╬║╬╫╓╖√╢¿╜τíú
  11307. delimited         ╥╗╓╓╗∙▒╛╕±╩╜, ╝┤╢║║┼╢¿╜τ╡─ASCII ╬─╝■, ╬─╝■╓╨╝╟┬╝╡─╫╓╢╬
  11308. │ñ┐╔▒Σ╙╔╢║║┼╫≈╬¬╫╓╢╬╓«╝Σ╡─╢¿╜τ╖√, ╝╟┬╝╙╔╗╪│╡
  11309. ╜ß╩°íú╨Φ╩╣╙├╢║║┼╡─╫╓╢╬▒╪╨δ╙├╥²║┼└¿╞≡íú
  11310. delimited with blank     ╓╕╢¿╥╗╕÷╙├┐╒╕±╫≈╬¬╢¿╜τ╖√╡─╬─╝■, ╬─╝■╓╨╡─╫╓╖√
  11311. ╫╓╢╬╨═▓╗╨Φ╥¬╙├╥²║┼▒Ω├≈▒▀╜τíú╘┌╠╪╩Γ╟Θ┐÷╧┬, ╙├╗º
  11312. ┐╔╥╘═¿╣²╛°╢╘╥²╙├╗≥║Ω╠µ╗╗╓╕╢¿╫╘╝║╡─╢¿╜τ╖√íú<xcDelilmiters> ╚τ
  11313. ╣√╓╕╢¿┴╦delimited with ╫╙╛Σ, ╘≥▒╪╨δ╜½╦ⁿ╖┼╘┌├ⁿ┴ε╡─╫ε║≤íú
  11314. ╦╡├≈:     ╚τ╣√═¿╣²<xcFile> ╓╕╢¿╡─╬─╝■▓╗─▄┤≥┐¬╗≥▓╗┤µ╘┌, ╘≥╗ß╥²
  11315. ╖ó╥╗╕÷╘╦╨╨╩▒┐╠┤φ╬≤íú
  11316. └²╫╙:// ┤╙╬─╝■he. dbf ╓╨╢┴│÷┬·╫πage>=20 ╡─╝╟┬╝╠φ╝╙╡╜my ╓╨    
  11317.     use my
  11318.     append field no, name, age from he. dbf for age>=20
  11319.     
  11320. ▓╬╝√: copy, @2347 [fread]()
  11321.  
  11322. .3103
  11323. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11324. @31[╩²╛▌┐Γ├ⁿ┴ε]
  11325.  
  11326. average
  11327. ╙∩╖¿:     average <nExp List> to <idVar List> [<score>] [while <lCondition>];
  11328.     [for <lCondition>]
  11329. ╙├═╛:     ╙├╙┌╝╞╦π╩²╛▌┐Γ╓╨╩²╛▌└α╨═╡─╞╜╛∙╓╡íú
  11330. ▓╬╩²:
  11331. <nExp List>         ░ⁿ║¼╘┌average ├ⁿ┴ε╓╨╡─╫╓╢╬▒φ, ╫╓╢╬╓«╝Σ╙├╢║║┼╖╓╕⌠┐¬íú
  11332. <idVar List>         ▒ú┤µaverage ▓┘╫≈╜ß╣√╡─▒Σ┴┐▒φ, ╚τ▒Σ┴┐▓╗┤µ╘┌╗≥╢╘╣²│╠▓╗
  11333. ┐╔╝√, ╘≥╥╘PRIVATE └α╨═╜¿┴ó╦ⁿ├╟íú
  11334. <nExp List>     ╤í╘±╡─├┐╥╗╕÷╫╓╢╬▒╪╨δ╙╨╥╗╕÷▒Σ┴┐╙δ╓«╢╘╙ªíú
  11335.  [<scope>]         ╘┤╩²╛▌┐Γ╓╨╝╟┬╝╡─╤í╚í╖╢╬ºíú╚τ╓╕╢¿NEXT<n>, ╘≥FOR/WHILE ╫╙╛Σ╜½▒╗
  11336. ╖╧╞·íúALL ╩╟╥╗╕÷╚▒╩í╡─╤í╚í╖╢╬ºíú
  11337. while <lCondition>     ╓╕╢¿╓╒╓╣╕├├ⁿ┴ε╡─┬▀╝¡╠⌡╝■íú╕├╠⌡╝■╗∙╙┌<lCondition> ╦∙╓╕╢¿
  11338. ╫╓╢╬╡─╓╡íú
  11339. for <lCondition>     ╢╘<scope> ╦∙╓╕╢¿╖╢╬º╓╨╝╟┬╝╡──┌╚▌╓╕╢¿╥╗╕÷┬▀╝¡▓Γ╩╘íú
  11340. ╦╡├≈:     ╘┌╢α╙├╗º╗╖╛│╓╨╓┤╨╨average ├ⁿ┴ε╩▒, ╘┌average ├ⁿ┴ε╓┤╨╨╞┌╝Σ, ╫╓╢╬
  11341. ╓╡┐╔─▄▒╗╞Σ╦√╙├╗º╕─▒Σ, ╒Γ╔⌡╓┴┐╔╥²╞≡╘┌╕├├ⁿ┴ε═Ω
  11342. │╔┤ª└φ╓«╟░, ╜ß╣√╛═▒Σ╡├▓╗╛½╚╖íú
  11343. └²╫╙: // ╝╞╦π╩²╛▌┐Γmy ╓╨age ╫╓╢╬╓╡┤≤╙┌20 ╡─╝╟┬╝╡─age ╫╓╢╬╞╜╛∙
  11344. ╓╡, ▓ó╜½╜ß╣√┤µ╡╜avage ╓╨
  11345.     use my
  11346.     average age to avage for age>=20
  11347.     
  11348. ▓╬╝√: @3111[count], @3146[sum], @3147[total]
  11349.  
  11350. .3701
  11351. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11352. @37[╧╡═│├ⁿ┴ε]
  11353.  
  11354. cancel|quit
  11355. ╙∩╖¿: cancel|quit
  11356. ╙├═╛: ╙├╙┌╬▐╠⌡╝■╡╪╓╒╓╣│╠╨≥, ╓╒╓╣│╠╨≥╓«╟░╣╪▒╒╦∙╙╨
  11357. ┤≥┐¬╡─╬─╝■íú
  11358. ╦╡├≈:     ╚τ╣√╘┌╡┌╥╗╕÷▒╗╡≈╙├╡─╣²│╠╓╨╛═░ⁿ║¼╥╗╠⌡return ╙∩
  11359. ╛Σ, ╘≥╓┤╨╨╨º╣√╙δcancel ╗≥quit ╧α═¼íúcancel|quit ╙├╘┌│╠╨≥╡─╚╬║╬╡╪╖╜╓╒╓╣
  11360. │╠╨≥▓ó╟╥╜½┐╪╓╞╖╡╗╪DOSíú╜¿╥Θ╘┌Winbase ╧┬╙├windowexit( )║»╩²═╦│÷íú
  11361. └²╫╙: 
  11362. if inkey() ==K_ESC 
  11363.     // ╚τ╣√ESC ╝ⁿ▒╗░┤╧┬, ╘≥╓╒╓╣│╠╨≥▓ó╟╥╜½┐╪╓╞╖╡╗╪DOS
  11364.     quit
  11365. endif
  11366.  
  11367. .3008
  11368. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11369. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  11370.  
  11371.  
  11372. clear
  11373. ╙∩╖¿: clear
  11374. ╙├═╛: ╙├╡▒╟░▒│╛░╢╘╒√╕÷╞┴─╗╟σ╞┴íú
  11375. ▓╬╩²: ╬▐
  11376. ╦╡├≈: ╩╣╙├clear ├ⁿ┴ε╜½╚í╧√Getlist╩²╫Θíú
  11377. └²╫╙: clear
  11378.  
  11379. ▓╬╝√: @3601[clear memory], @3603[release]    
  11380.  
  11381. .3104
  11382. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11383. @31[╩²╛▌┐Γ├ⁿ┴ε]
  11384.  
  11385. clear all
  11386. ╙∩╖¿:     clear all
  11387. ╙├═╛:     ╙├╙┌╣╪▒╒╦∙╙╨╡─▒╕╫ó╬─╝■║═╩²╛▌┐Γ╥╘╝░╧α╙ª
  11388. ╡─╦≈╥²╬─╝■, ╔╛│²╦∙╙╨─┌┤µ▒Σ┴┐, ╜½╣ñ╫≈╟°╔Φ╓├╡╜1íú
  11389. ▓╬╩²: ╬▐
  11390. ╦╡├≈: clear all ▓╗╩═╖┼STATIC ╨═▒Σ┴┐║═LOCAL ╨═▒Σ┴┐, ╡½╩═╖┼PUBLIC ╨═▒Σ┴┐║═PRIVATE ╨═▒Σ┴┐íú
  11391. └²╫╙:    // ╧┬├µ╩╟╥╗░π╣²│╠╗≥║»╩²╡─╜ß╬▓
  11392.     clear
  11393.     clear all
  11394.     return
  11395.     
  11396. ▓╬╝√: @3601[clear memory], @3105[close]
  11397.  
  11398. .3009
  11399. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11400. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  11401.  
  11402.  
  11403. clear gets
  11404. ╙∩╖¿: clear gets
  11405. ╙├═╛: ╙├╙┌╚í╧√╢╘GET ╡─╩Σ╚δíú
  11406. ▓╬╩²: ╬▐
  11407. ╦╡├≈:     ╚τ╣√╙├╗º╧δ▓╗╩╡╝╩╜╙╩╒▓┘╫≈╒▀╡─╩Σ╚δ╢°─ú─Γ
  11408. ╥╗╕÷╩²╛▌╩Σ╚δ╞┴, ╘≥┐╔╙├CLEAR GETS ├ⁿ┴ε└┤╠µ╗╗READ ├ⁿ┴εíú
  11409. └²╫╙: name: ="tom"
  11410.     ú└ 12, 20 say " ╩Σ╚δ╨╒├√: " get name
  11411.     clear get // ▓╗─▄╨▐╕─name
  11412.     
  11413. ▓╬╝√: @3005[ú└... say... get], @3013[read], @3008[clear]    
  11414.  
  11415. .3601
  11416. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11417. @36[─┌┤µ▒Σ┴┐├ⁿ┴ε]
  11418.  
  11419. clear memory
  11420. ╙∩╖¿: clear memory
  11421. ╙├═╛: ╙├╙┌╟σ│²╦∙╙╨╡─PUBLIC ╨═║═PRIVATE ╨═─┌┤µ▒Σ┴┐íú
  11422. ╦╡├≈:     ╬¬┴╦╜÷╟σ│²╡▒╟░│╠╨≥─ú┐Θ╓╨╡─PRIVATE ╨═─┌┤µ▒Σ┴┐, ┐╔╩╣
  11423. ╙├RELEASE ALL ├ⁿ┴ε, ╦ⁿ▓╗╙░╧∞LOCAL ║═STATIC ╨═╡─▒Σ┴┐íúrelease all ├ⁿ┴ε╜½▒ú┴⌠▒Σ┴┐▒φ╓╨╡─
  11424. ▒Σ┴┐, ╡½╕°╦ⁿ├╟╕│╙ΦNIL ╓╡íú
  11425. └²╫╙:     temp: =231
  11426.     ? temp // ╖╡╗╪231
  11427.     clear memory
  11428.     ? temp //temp ╥╤▓╗┤µ╘┌, ╣╩╖ó╔·┤φ╬≤
  11429.  
  11430. ▓╬╝√: release all, @3104[clear all]
  11431.  
  11432. .3401
  11433. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11434. @34[╝ⁿ┼╠├ⁿ┴ε]
  11435.  
  11436. clear typeahead
  11437. ╙∩╖¿: clear typeahead
  11438. ╙├═╛: ╙├╙┌╟σ│²│¼╟░╝ⁿ╚δ╗║│σ╟°╡──┌╚▌íú
  11439. ▓╬╩²: ╬▐
  11440. ╦╡├≈:     ╡▒CPU ├ª╙┌╣ñ╫≈╢°╕·▓╗╔╧▓┘╫≈╒▀╡─╩Σ╚δ╦┘╢╚╩▒, WINBASE ╜½░╤
  11441. ▓┘╫≈╒▀╡─╩Σ╚δ┤µ╚δ╥╗╕÷╗║│σ╟°╓╨íú
  11442. └²╫╙:
  11443. // ╡▒ESC ╝ⁿ▒╗░┤╧┬╩▒, ╟σ│²│¼╟░╝ⁿ╚δ╗║│σ╟°╡──┌╚▌, ╓┤╨╨╫╙│╠
  11444. ╨≥my_pro
  11445.      if inkey() =27
  11446.         clear typeahead // ╚╖▒ú╗≈╝ⁿ▓╗╙░╧∞╫╙│╠╨≥
  11447.         do my_pro
  11448.     endif
  11449.     
  11450. ▓╬╝√: @3403[keyboard], @3406[set typeahead]    
  11451.  
  11452. .3010
  11453. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11454. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  11455.  
  11456.  
  11457. cls
  11458. ╙∩╖¿: cls
  11459. ╙├═╛: ╟σ│²╒√╕÷╞┴─╗, ╡½▓╗╚í╧√╚╬║╬Getlist ╩²╫Θíú
  11460. ▓╬╩²: ╬▐
  11461. └²╫╙: cls
  11462.  
  11463. .3105
  11464. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11465. @31[╩²╛▌┐Γ├ⁿ┴ε]
  11466.  
  11467. close
  11468. ╙∩╖¿: close [<idalias>|ALL|ALTERNATE|DATABASES|FORMAT|INDEX]
  11469. ╙├═╛: ╙├╙┌╣╪▒╒╬─╝■║═╩═╖┼╕±╩╜╬─╝■, ╣²┬╦╞≈╥╘╝░╣╪╧╡íú
  11470. ▓╬╩²: 
  11471. <idalias>         ╓╕╢¿╣ñ╫≈╟°íú╕├╣ñ╫≈╟°╓╨╡─╩²╛▌┐Γ║═╦∙╙╨╧α╣╪╡─
  11472. ╬─╝■╜½▒╗╣╪▒╒íú
  11473. CLOSE ALL         ╣╪▒╒╦∙╙╨╣ñ╫≈╟°╓╨╦∙╙╨╬─╝■íú╩═╖┼╕±╩╜, ╣²┬╦╞≈║═╣╪
  11474. ╧╡íú
  11475. CLOSE ALTERNATE     ╣╪▒╒╡▒╟░╠µ╗╗╬─╝■íú
  11476. CLOSE DATABASES     ╣╪▒╒╦∙╙╨╣ñ╫≈╟°╓╨╦∙╙╨╬─╝■╥╘╝░╚╬║╬╗ε╢»╡─╦≈
  11477. ╥²╬─╝■íú
  11478. CLOSE FORMAT     ╚í╧√╚╬║╬╥╗╕÷╗ε╢»╕±╩╜╬─╝■íú
  11479. CLOSE INDEX     ╣╪▒╒╡▒╟░╤í╘±╣ñ╫≈╟°╓╨╡─╦∙╙╨╗ε╢»╡─╦≈╥²╬─╝■íú
  11480. ╦╡├≈: ▓╗┤°▓╬╩²╡─CLOSE ├ⁿ┴ε╡╚╝█╙┌▓╗┤°▓╬╩²╡─USE ├ⁿ┴εíú
  11481. └²╫╙: close DATABASES
  11482.  
  11483. ▓╬╝√: @3601[clear memory], @3104[clear all], @2411 [dbclosearea] ║»╩²
  11484.  
  11485. .3106
  11486. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11487. @31[╩²╛▌┐Γ├ⁿ┴ε]
  11488.  
  11489. commit
  11490. ╙∩╖¿: commit
  11491. ╙├═╛:     ╧╚╜½WINBASE ╗║│σ╟°╡─╩²╛▌╨┤╚δ┤┼┼╠ú¼╚╗║≤╟σ│²╦∙╙╨WINBASE ╗║│σ
  11492. ╟°▓ó╟╥╢╘╦≈╥²╜°╨╨╕ⁿ╨┬íú
  11493. ▓╬╩²: ╬▐
  11494. └²╫╙: 
  11495.     use guest
  11496.     10, 10 say " ╩Σ╚δ╡τ╗░║┼┬δ: " ;
  11497.         get myfile->phone picture" (999) 999-9999) "
  11498.     read
  11499.     commit // ▒ú╓ñ╩²╛▌▒╗╨┤╡╜┤┼┼╠╓╨
  11500.  
  11501. ▓╬╝√: @2412 [dbcommit], @3105[close]
  11502.  
  11503. .3107
  11504. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11505. @31[╩²╛▌┐Γ├ⁿ┴ε]
  11506.  
  11507. continue
  11508. ╙∩╖¿: continue
  11509. ╙├═╛: ╙├╙┌╓╪╨┬╝ñ╗ε╡▒╟░╤í╘±╣ñ╫≈╟°╓╨╡─locate ├ⁿ┴εíú
  11510. ▓╬╩²: ╬▐
  11511. ╦╡├≈:     WINBASE ╓º│╓╢α╕÷locate ├ⁿ┴ε, ╓╗╥¬locate ├ⁿ┴ε╙┌▓╗═¼╡─╤í╘±╣ñ╫≈╟°╓╨íú╩╣
  11512. ╙├continue ├ⁿ┴ε┐╔╜½┬·╫πlocate ├ⁿ┴ε╡─┬▀╝¡╠⌡╝■╡─╧┬╥╗┤╬╝╟┬╝
  11513. ╔Φ╓├╬¬╡▒╟░╝╟┬╝íú╚τ╣√continue ├ⁿ┴ε╗≥locate ├ⁿ┴ε├╗─▄╒╥╡╜┬·╫π┬▀
  11514. ╝¡╠⌡╝■╡─╝╟┬╝, ╘≥EOF()╜½╬¬.T.íú
  11515. └²╫╙:// ╧┬└²╜½╘┌╞┴─╗╔╧╧╘╩╛age>60 ╡─╝╟┬╝╡─name ╫╓╢╬╓╡
  11516.      use my
  11517.     locate for age>60
  11518.     if eof()
  11519.         clear
  11520.         clear all
  11521.         return
  11522.     endif
  11523.     do while.T.
  11524.         cls
  11525.         ú└ 10, 10 say trim (name) +" ─Ω┴Σ│¼╣²60 ╦Ω"
  11526.         wait " ░┤╚╬╥╗╝ⁿ╝╠╨°▓Θ╒╥"
  11527.         continue
  11528.         if found()
  11529.             loop
  11530.         endif
  11531.     enddo
  11532.     
  11533. ▓╬╝√: @3122[locate], @3116[find], @2450 [found](), @2427 [dbseek](), @2441 [eof]()
  11534.  
  11535. .3501
  11536. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11537. @35[╡═╝╢╬─╝■├ⁿ┴ε]
  11538.  
  11539. copy file
  11540. ╙∩╖¿: copy file <xcSourceFile> to <xcTargetFile>
  11541. ╙├═╛: ╙├╙┌╢╘╚╬║╬└α╨═╡─╬─╝■╜°╨╨DOS ╖τ╕±╡─┐╜▒┤íú
  11542. ▓╬╩²:     
  11543. <xcSourceFile>    ▒╗┐╜▒┤╡─╘┤╬─╝■├√, ▒╪╨δ╠ß╣⌐╬─╝■╡─└⌐╒╣├√íú
  11544. <xcTargetFile>    ─┐▒Ω╬─╝■íú╚τ╙╨└⌐╒╣├√, ╘≥▒╪╨δ├≈╚╖╠ß╣⌐íú
  11545. ╦╡├≈:     ╚τ╣√▓╗╠ß╣⌐╟²╢»╞≈/ ┬╖╛╢╨┼╧ó, ╘≥╝┘╢¿╘┤╬─╝■║═─┐
  11546. ▒Ω╬─╝■╢╝╘┌╡▒╟░╫╙─┐┬╝╧┬íú
  11547. └²╫╙: copy file my. prg to you. prg
  11548.  
  11549. ▓╬╝√: copy, @3101[append blank]
  11550.  
  11551. .3108
  11552. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11553. @31[╩²╛▌┐Γ├ⁿ┴ε]
  11554.  
  11555. copy structure
  11556. ╙∩╖¿: copy structure [fields<idField List>] to <xcDbfName>
  11557. ╙├═╛:     ░┤╡▒╟░╩²╛▌┐Γ╦∙╤í╘±╫╓╢╬╔·│╔╜ß╣╣╧α═¼╡─┐Γ
  11558. (. DBF) ╬─╝■, ╕├╬─╝■▓╗║¼╚╬║╬╝╟┬╝íú
  11559. ▓╬╩²: 
  11560. [fields<idField List>]    ╙╔░ⁿ║¼╘┌╨┬╬─╝■╓╨╡─╫╓╢╬╫Θ│╔╡─╫╓╢╬▒φíú╚▒╩í╘≥
  11561. ╦∙╙╨╡─╫╓╢╬╢╝╜½░ⁿ║¼╘┌╨┬╬─╝■╓╨íú
  11562. <xcDbfName>            ─┐▒Ω╬─╝■╡─├√│╞íú
  11563. ╦╡├≈: ╨┬╔·│╔╡─╬─╝■▓╗╗ß╫╘╢»┤≥┐¬, ▒╪╨δ╙├USE ├ⁿ┴ε▓┼─▄┤≥
  11564. ┐¬╦ⁿíú
  11565. └²╫╙:    use my //my ╩╟░ⁿ║¼╦∙╨Φ╩²╛▌┐Γ╜ß╣╣╡─╬─╝■
  11566.     ? date() // ╖╡╗╪02/03/94
  11567.     copy structure to "my"+str (month (date()), 2, 0) +"/";
  11568.     +str (year (date()), 2, 0)
  11569.     ? file ("my02/94. dbf") // ╖╡╗╪.T.
  11570.     
  11571. ▓╬╝√: @3109[copy structure extended], @2414 [dbcreate]()
  11572.     
  11573. .3109
  11574. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11575. @31[╩²╛▌┐Γ├ⁿ┴ε]
  11576.  
  11577. copy structure extended to
  11578. ╙∩╖¿: copy structure extended to <xcDBFFileName>
  11579. ╙├═╛:     ╔·│╔╥╗╕÷╩²╛▌┐Γ, ╬─╝■╓╨╡─╝╟┬╝░ⁿ║¼╡▒╟░╩╣╙├╬─
  11580. ╝■╡─╜ß╣╣╨┼╧óíú
  11581. ▓╬╩²: 
  11582.     <xcDBFFileName>    ─┐▒Ω╬─╝■╡─├√│╞íú
  11583. ╦╡├≈:     copy structure extended ╙╨╥╘╧┬4 ╕÷╫╓╢╬:
  11584.     ╫╓╢╬├√        ╫╓╢╬└α╨═
  11585.     FIELD_NAME     │ñ╢╚╬¬10 ╡─╫╓╖√╨═╫╓╢╬
  11586. FIELD_TYPE         │ñ╢╚╬¬1 ╡─╫╓╖√╨═╫╓╢╬; ║╧╖¿╧ε╬¬C (╫╓╖√╨═), N (╩²╫╓╨═) L (┬▀╝¡╨═), D (╚╒╞┌
  11587. ╨═), M (─┌┤µ▒Σ┴┐╨═)
  11588.     FIELD_LEN         │ñ╢╚╬¬3 ╡─╒√╩²╫╓╢╬╨═, ├╗╙╨╨í╩²
  11589.     FIELD_DEC         │ñ╢╚╬¬3 ╡─╒√╩²╫╓╢╬╨═, ├╗╙╨╨í╩²
  11590. ╘┌╩╣╙├CREATE FROM ├ⁿ┴ε╜½╥╗╕÷╛▀╙╨structure extended ╬─╝■╓╨╡─╝╟┬╝╦∙╓╕├≈╜ß
  11591. ╣╣╡─. DBF ╬─╝■╨┤╗╪┤┼┼╠╓«╟░, ╙├╗º┐╔╥╘╢╘┤╦structure extended ╬─╝■╓╨╡─╝╟╜°
  11592. ╨╨╨▐╕─▒α╝¡íú
  11593. └²╫╙: 
  11594.     use my
  11595.     copy structure extended to myext 
  11596.         //myext ╡─╝╟┬╝╜½╩╟my ╡─╜ß╣╣╨┼╧ó
  11597.     
  11598. ▓╬╝√: @2414 [dbcreate](), @2444 [field](), @2252 [type]()
  11599.  
  11600. .3110
  11601. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11602. @31[╩²╛▌┐Γ├ⁿ┴ε]
  11603.  
  11604. copy to 
  11605. ╙∩╖¿:     copy [fields <idField List>] to <xcFile> [<scope>]
  11606.      [while <lCondition>] [for <lCondition>];
  11607.      [sdf|delimited [with blank|<xcDelimiters>]]
  11608. ╙├═╛:     ╜½─│╕÷╩²╛▌┐Γ╡─╚╬║╬╥╗▓┐╖▌┐╜▒┤╡╜┴φ╥╗╕÷╩²
  11609. ╛▌┐Γ╬─╝■, SDF ╬─╝■    ╗≥DELIMITED ╬─╝■╓╨íú
  11610. ▓╬╩²:
  11611.  [fields <idField List>]     ╓╕╢¿┐╜▒┤╡╜─┐▒Ω╬─╝■╓╨╡─╫╓╢╬
  11612. <xcDbfName>     ─┐▒Ω╬─╝■├√╗≥╙├╙┌╠µ┤·╬─╝■├√╡─▒φ┤∩╩╜
  11613.  [<scope>]     ╘┤╬─╝■╓╨╨Φ╥¬┐╜▒┤╡─▓┐╖▌, ╚▒╩í╬¬╦∙╙╨╝╟┬╝
  11614. while <lCondition>     ╓╕╢¿╓╒╓╣╕├├ⁿ┴ε╡─┬▀╝¡╠⌡╝■íú╕├╠⌡╝■╗∙╙┌<lCondition> ╦∙╓╕╢¿
  11615. ╫╓╢╬╡─╓╡íú
  11616. for <lCondition>         ╢╘<scope> ╦∙╓╕╢¿╖╢╬º╓╨╝╟┬╝╡──┌╚▌╓╕╢¿╥╗╕÷┬▀╝¡▓Γ╩╘íú
  11617. sdf (╧╡═│╩²╛▌╕±╩╜)    ╛▀╙╨╣╠╢¿╫╓╢╬│ñ╡─ASCII ╬─╝■, ├┐╕÷╝╟┬╝╙╔╗╪
  11618. │╡╜ß╩°íú╬─╝■╜ß╩°▒Ω╓╛╬¬▒Ω╫╝╡─DOS ╬─╝■╜ß╩°▒Ω╓╛(CTRL-Z), ╫╓╢╬
  11619. ╓«╝Σ▓╗╙├╚╬║╬╫╓╖√╢¿╜τíú
  11620. delimited         ╥╗╓╓╗∙▒╛╕±╩╜, ╝┤╢║║┼╢¿╜τ╡─ASCII ╬─╝■, ╬─╝■╓╨╝╟┬╝╡─╫╓╢╬
  11621. │ñ┐╔▒Σ, ╙╔╢║║┼╫≈╬¬╫╓╢╬╓«╝Σ╡─╢¿╜τ╖√, ╝╟┬╝╙╔╗╪│╡╜ß
  11622. ╩°íú╨Φ╩╣╙├╢║║┼╡─╫╓╢╬▒╪╨δ╙├╥²║┼└¿╞≡íú
  11623. delimited with blank     ╓╕╢¿╥╗╕÷╙├┐╒╕±╫≈╬¬╢¿╜τ╖√╡─╬─╝■, ╬─╝■╓╨╡─╫╓╖√
  11624. ╫╓╢╬╨═▓╗╨Φ╥¬╙├╥²║┼▒Ω├≈▒▀╜τíú╘┌╠╪╩Γ╟Θ┐÷╧┬, ╙├╗º
  11625. ┐╔╥╘═¿╣²╛°╢╘╥²╙├╗≥║Ω╠µ╗╗╓╕╢¿╫╘╝║╡─╢¿╜τ╖√
  11626. <xcDelimiters>íú╚τ╣√╓╕╢¿┴╦delimited with ╫╙╛Σ, ╘≥▒╪╨δ╜½╦ⁿ╖┼╘┌├ⁿ┴ε╡─╫ε║≤íú
  11627. ╦╡├≈:     ╚τ╣√▓╗╩╣╙├SET DELETED ON ├ⁿ┴ε, ╘≥╘┤╬─╝■╓╨╥╤▒╗╫≈╔╧╔╛│²▒Ω╝╟ú¼
  11628. ╡½╗╣╬┤▒╗╤╣╦⌡╡⌠╡─╝╟┬╝╥▓╜½╥╗╞≡▒╗┐╜▒┤íú▒╗╥╗╕÷
  11629. ╗ε╢»╡─╣²┬╦╞≈┬╦╡⌠╡─╝╟┬╝▓╗╗ß▒╗┐╜▒┤íú╚τ╣√─┐▒Ω╬─
  11630. ╝■╥╤┤µ╘┌, ╘≥╦ⁿ╗ß▒╗╕▓╕╟íú╘┌═°┬τ╗╖╛│╓╨╩╣╙├╡─COPY ╜½╚▒╩í
  11631. ╡╪░┤EXCLUSIVE ─ú╩╜┤≥┐¬─┐▒Ω╬─╝■íú
  11632. └²╫╙:     use my
  11633.     copy to myfile field name, age for age>30 DELIMITED
  11634.     type myfile. txt
  11635.     
  11636. ▓╬╝√: @3102[append from], @3501[copy file], @3136[set deleted], @3108[copy structure]
  11637.  
  11638. .3111
  11639. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11640. @31[╩²╛▌┐Γ├ⁿ┴ε]
  11641.  
  11642. count to
  11643. ╙∩╖¿: count to <idVar> [<scope>] [while <lCondition>] [for <lCondition>];
  11644. ╙├═╛:     ╝╞╦π╩²╛▌┐Γ╓╨╓╕╢¿╖╢╬º─┌▓ó╟╥┬·╫π─│╕÷┬▀╝¡
  11645. ╠⌡╝■╡─╝╟┬╝╩²─┐íú
  11646. ▓╬╩²:
  11647. <idVar>         ╓╕╢¿╥╗╕÷▒ú┤µ╕├├ⁿ┴ε╘╦╨╨╜ß╣√╡─▒Σ┴┐íú╚τ▒Σ┴┐▓╗
  11648. ┤µ╘┌╗≥╢╘╣²│╠▓╗┐╔╝√, ╘≥╥╘PRIVATE └α╨═╜¿┴ó╦ⁿ├╟íú
  11649.  [<scope>]         ╘┤╩²╛▌┐Γ╓╨╝╟┬╝╡─╤í╚í╖╢╬ºíú╚τ╓╕╢¿NEXT<n>, ╘≥FOR/WHILE ╫╙╛Σ╜½▒╗
  11650. ╖╧╞·íúALL ╩╟╥╗╕÷╚▒╩í╡─╤í╚í╖╢╬ºíú
  11651. while <lCondition>     ╓╕╢¿╓╒╓╣╕├├ⁿ┴ε╡─┬▀╝¡╠⌡╝■íú╕├╠⌡╝■╗∙╙┌<lCondition> ╦∙╓╕╢¿
  11652. ╫╓╢╬╡─╓╡íú
  11653. for <lCondition>     ╢╘<scope> ╦∙╓╕╢¿╖╢╬º╓╨╝╟┬╝╡──┌╚▌╓╕╢¿╥╗╕÷┬▀╝¡▓Γ╩╘íú
  11654. ╦╡├≈:     ╘┌╢α╙├╗º╗╖╛│╓╨╓┤╨╨count ├ⁿ┴ε╩▒, ╫╓╢╬╓╡┐╔─▄▒╗╞Σ╦√
  11655. ╙├╗º╕─▒Σ, ╒Γ╔⌡╓┴┐╔╥²╞≡╘┌╕├├ⁿ┴ε═Ω│╔┤ª└φ╓«╟░, ╜ß╣√
  11656. ╛═▒Σ╡├▓╗╛½╚╖íú
  11657. └²╫╙:
  11658. // ╝╞╦π╩²╛▌┐Γmy ╓╨age ╫╓╢╬╓╡┤≤╙┌20 ╡─╝╟┬╝╡─╩²─┐, ▓ó╜½╜ß╣√
  11659. ┤µ╡╜num ╓╨
  11660. use my
  11661. count to num for age>=20
  11662.  
  11663. ▓╬╝√: @3103[average], @3146[sum], @3147[total]
  11664.  
  11665. .3112
  11666. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11667. @31[╩²╛▌┐Γ├ⁿ┴ε]
  11668.  
  11669. create
  11670. ╙∩╖¿: create <xcExtended Database>
  11671. ╙├═╛: ╔·│╔╥╗╕÷▓╗║¼╚╬║╬╨┬╝╟┬╝╡─╨┬structure extended ╬─╝■íú
  11672. ▓╬╩²: 
  11673.     <xcExtended Database>    ╨┬╬─╝■├√
  11674. ╦╡├≈: CREATE ├ⁿ┴ε┐╔╥╘╜½╥╗╕÷┐╒╡─structure extended ╬─╝■╨┤╡╜┤┼┼╠╔╧, ┐╔╥╘╘╩╨φ
  11675. ╘┌╥╘║≤╢¿╥σ╥╗╕÷╨┬╩²╛▌┐Γ╜ß╣╣íú
  11676. └²╫╙: close DATABASES // ╣╪▒╒╦∙╙╨╬─╝■
  11677.     creat newfile // └⌐╒╣╩²╛▌┐Γ, ╜¿┴ó╨┬╡─╜ß╣╣
  11678.     use newfile
  11679.     append blank
  11680.     ? recno() // ╖╡╗╪1
  11681.     ú└ 10, 10 say "name: " get field_name
  11682.     ú└ 11, 10 say "type: " get field_type
  11683.     ú└ 12, 10 say "len: " get field_len
  11684.     ú└ 13, 10 say "dec: " get field_dec
  11685.     read // ╢┴╜°╡┌╥╗╕÷╫╓╢╬╡─╨┼╧ó
  11686.     
  11687. ▓╬╝√: @3109[copy structure extended], @2414 [dbcreate]()
  11688.  
  11689. .3113
  11690. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11691. @31[╩²╛▌┐Γ├ⁿ┴ε]
  11692.  
  11693. create from
  11694. ╙∩╖¿: create <xcDatabase> from <xcExtended Database>
  11695. ╙├═╛:     ╜¿┴ó╥╗╕÷╨┬╡─. DBF ╬─╝■, ╕├. DBF ╬─╝■╓╨╫╓╢╬╡─╢¿╥σ╥╘├ⁿ┴ε╓╨╓╕
  11696. ╢¿╡─structure extended ╬─╝■╡─╝╟┬╝╬¬╥└╛▌íú
  11697. ▓╬╩²:     
  11698. <xcDatabase>         ─┐▒Ω╬─╝■├√
  11699. <xcExtended Database>    structure extended ╜ß╣╣╡─╩²╛▌┐Γ╬─╝■
  11700. ╦╡├≈:     WINBASE ╓º│╓│ñ╢╚▓╗│¼╣²64K ╡─╫╓╖√╨═╫╓╢╬íú╬¬┴╦╓╕╢¿╥╗╕÷│ñ
  11701. ╢╚│¼╣²999 ╫╓╖√╡─╫╓╢╬, ╙ª╢╘FIELD_DEC ▓╬╩²╕│╙Φ░┤╧┬├µ╖╜╖¿╝╞╦π
  11702. ╡├╡╜╡─╓╡: ╫╓╢╬│ñ│²256 ║≤╚í╒√íú│²┤╦╓«═Γ, ╗╣╙ª╕├╜½╫╓╢╬│ñ
  11703. │²256 ║≤╡─╙α╩²╕│╕°FIELD_LENíú
  11704. └²╫╙: creat another from myextended
  11705.     use another
  11706.     ? lastkey (0) // ╖╡╗╪0
  11707.     
  11708. ▓╬╝√: @3109[copy structure extended], @3112[create], @2414 [dbcreate]()
  11709.  
  11710. .3602
  11711. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11712. @36[─┌┤µ▒Σ┴┐├ⁿ┴ε]
  11713.  
  11714. default with
  11715. ╙∩╖¿: default <xV> with <xN> [,<xV2> with <xN2>...]
  11716. ╙├═╛: ╢╘╢α╕÷─┌┤µ▒Σ┴┐╕│╚▒╩í╓╡ú¿╚τ╣√╒Γ╨⌐▒Σ┴┐╡─╓╡
  11717. ╬¬NILú⌐íú
  11718. ▓╬╩²: 
  11719.     <xV>         ▒╗╕│╓╡╡─▒Σ┴┐├√
  11720.      <xN>        ╕│╕°▒Σ┴┐╡─╓╡, ┐╔╥╘╩╟╚╬╥Γ└α╨═
  11721. └²╫╙: defaut lo with .T. , x with 1
  11722.              ? lo
  11723.               ? x
  11724.  
  11725. .3114
  11726. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11727. @31[╩²╛▌┐Γ├ⁿ┴ε]
  11728.  
  11729. delete
  11730. ╙∩╖¿: delete [<scope>] [while <lCondition>] [for <lCondition>]
  11731. ╙├═╛: ▒Ω╝╟╔╛│²╡─╝╟┬╝íú
  11732. ▓╬╩²: 
  11733. <scope>         ╘┌░ⁿ║¼╥¬╔╛│²╝╟┬╝╡─╬─╝■╓╨╓╕╢¿╖╢╬º, ╚▒╩í╬¬╡▒╟░
  11734. ╝╟┬╝
  11735. while <lCondition>     ╓╕╢¿╓╒╓╣╕├├ⁿ┴ε╡─┬▀╝¡╠⌡╝■íú╕├╠⌡╝■╗∙╙┌<lCondition> ╦∙╓╕╢¿╫╓
  11736. ╢╬╡─╓╡íú
  11737. for <lCondition>     ╢╘<scope> ╦∙╓╕╢¿╖╢╬º╓╨╝╟┬╝╡──┌╚▌╓╕╢¿╥╗╕÷┬▀╝¡▓Γ╩╘íú
  11738. ╦╡├≈:     ╙├RECALL ┐╔╥╘╗╓╕┤▒╗┬▀╝¡╔╛│²╡─╝╟┬╝; DELETED() ║»╩²╢╘┬▀╝¡╔╛│²
  11739. ╡─╝╟┬╝╜½╖╡╗╪.T. ╓╡íúSET DELETED ON ├ⁿ┴ε╜½╡╝╓┬┤≤▓┐╖▌├ⁿ┴ε║÷┬╘▒╗╫≈┴╦
  11740. ┬▀╝¡╔╛│²▒Ω╝╟╡─╝╟┬╝íú▒╗╫≈┴╦┬▀╝¡╔╛│²▒Ω╝╟╡─╝╟┬╝
  11741. ┐╔╥╘╝╠╨°▒╗╒²│ú╦≈╥²íú▒╗╫≈┴╦┬▀╝¡╔╛│²▒Ω╝╟╡─╝╟┬╝
  11742. ╘┌┴╨▒φ╧╘╩╛╩▒╜½▒╗▒Ω╔╧╨╟║┼íú
  11743. └²╫╙: 
  11744. // ╧┬└²╜½▒Ω╝╟no<1000 ╡─╝╟┬╝▓ó╔╛│²╒Γ╨⌐╝╟┬╝
  11745. delete all for no<1000
  11746. zap
  11747.     
  11748. ▓╬╝√: @2416 [dbdelete](), @3136[set deleted], @3129[pack], @3151[zap]
  11749.  
  11750. .3502
  11751. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11752. @35[╡═╝╢╬─╝■├ⁿ┴ε]
  11753.  
  11754. delete file/erase
  11755. ╙∩╖¿: delete file<xcFile> ╗≥erase <xcFile>
  11756. ╙├═╛: ┤╙┤┼┼╠╔╧╔╛│²╥╗╕÷╬─╝■
  11757. ▓╬╩²: 
  11758. <xcFile>    ╥¬╔╛│²╡─╬─╝■├√ú¿╥¬╟≤┤°└⌐╒╣├√ú¼▓╗╓º│╓═¿┼Σ╖√ú⌐íú
  11759. └²╫╙: delete file my.tmp
  11760.  
  11761. .3115
  11762. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11763. @31[╩²╛▌┐Γ├ⁿ┴ε]
  11764.  
  11765. display
  11766. ╙∩╖¿:     display <expList> [TO PRINT] [TO FILE <xcFile>];
  11767.     <scope> [while <lCondition>] [for <lCondition>]
  11768. ╙├═╛: ╩Σ│÷╛▌┐Γ╓╨╦∙╤í╝╟┬╝╡─╫╓╢╬║═╫╓╢╬╦π╩╜╡─╓╡íú
  11769. ▓╬╩²:    
  11770.     expList            ╫╓╢╬║═╫╓╢╬╦π╩╜╡─╓╡
  11771. TO PRINT         ╜½╩Σ│÷╦═╡╜┤≥╙í╗·íú╚τ╣√├╗╙╨╩╣╙├SET CONSOLE OFF ├ⁿ┴ε, ╘≥╩Σ│÷╒╒╤∙
  11772. ╘┌╞┴─╗╔╧╧╘╩╛íú
  11773. TO FILE         ╔·│╔╥╗╕÷ASCII ╬─╝■, ╩Σ│÷▒╗╦═╡╜╕├╬─╝■╥╘▒π╥╘║≤╜°╨╨╝∞
  11774. ▓Θíú
  11775. <xcFile>         ╙├└┤╓╕╢¿─┐▒Ω╬─╝■├√╡─╥╗╕÷▒φ┤∩╩╜íú
  11776.  [<scope>]         ╘┌░ⁿ║¼╙├╗º╨Φ╥¬╧╘╩╛╡─╬─╝■╓╨╓╕╢¿╥╗╧╘╩╛╖╢╬º, NEXT 1 ╩╟
  11777. ╥╗╚▒╩í╖╢╬ºíú
  11778. while <lCondition>     ╓╕╢¿╓╒╓╣╕├├ⁿ┴ε╡─┬▀╝¡╠⌡╝■íú╕├╠⌡╝■╗∙╙┌<lCondition> ╦∙╓╕╢¿
  11779. ╫╓╢╬╡─╓╡íú
  11780. for <lCondition>     ╢╘<scope> ╦∙╓╕╢¿╖╢╬º╓╨╝╟┬╝╡──┌╚▌╓╕╢¿╥╗╕÷┬▀╝¡▓Γ╩╘íú
  11781. OFF         ▓╗╧╘╩╛╝╟┬╝║┼íú
  11782. ╦╡├≈: ╚τ╣√TO FILE ╚╬╤í╧ε╓╕╢¿└⌐╒╣├√╩º░▄, ╘≥╩╣╙├. TXT └⌐╒╣├√
  11783. └²╫╙: use my
  11784.     display no, name, age
  11785.     
  11786. ▓╬╝√: @3121[list]
  11787.  
  11788. .3011
  11789. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11790. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  11791.  
  11792. eject
  11793. ╙∩╖¿: eject
  11794. ╙├═╛: ╧≥┤≥╙í╗·╖ó╦═╥╗╕÷╗╗╥│├ⁿ┴ε
  11795. ▓╬╩²: ╬▐
  11796. ╦╡├≈: ╚τ╣√╙├╗º╞≤═╝╘┌╨í╙┌╡▒╟░PROW() ╓╡╡─╨╨╔╧┤≥╙í, ╘≥╥╗╕÷
  11797. ╗╗╨╨╫╓╖√╗ß╫╘╢»╦═╡╜┤≥╙í╗·íú
  11798. └²╫╙: set printer on
  11799.     ? "this page"
  11800.     eject
  11801.     ? "next page" // ╘┌╡┌╢■╥│0 ╨╨┴╨╩Σ│÷next page
  11802.     set printer off
  11803.     
  11804. .3116
  11805. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11806. @31[╩²╛▌┐Γ├ⁿ┴ε]
  11807.  
  11808. find
  11809. ╙∩╖¿: find <xcSearchString>
  11810. ╙├═╛:     ╜½╝╟┬╝╓╕╒δ╢¿╬╗╡╜╡┌╥╗╕÷╞Ñ┼Σ│╔╣ª╡─╝╟┬╝ú¼╞Ñ┼Σ
  11811. ╘┌╝╟┬╝╡─╦≈╥²╝ⁿ╓╡╙δ╦╤╦≈┤«╓«╝Σ╜°╨╨íú
  11812. ▓╬╩²:     
  11813. <xcSearchString>    ╦╤╦≈┤«▒φ┤∩╩╜, ▒φ┤∩╩╜╓╨║¼╙╨╥¬╦╤╦≈╡─╫╓╖√┤«╗≥╙├
  11814. └¿║┼└¿╞≡╡──│╕÷▒φ┤∩╩╜íú
  11815. ╦╡├≈:     ╙├╗º┐╔╘┌╦╤╦≈┤«╓╨╩╣╙├▓╗═Ω╚½╝ⁿ╓╡íú╚τ╣√╦╤╦≈┤«
  11816. ╓╨░ⁿ║¼╟░╡╝┐╒╕±, ╘≥▒╪╨δ╙δ╦≈╥²╝ⁿ░ⁿ║¼╡─╟░╡╝┐╒╕±
  11817. ╩²╧α═¼íú╘┌╦≈╥²╬─╝■╓╨, ╩²╫╓╨═╝ⁿ╙├╟░╡╝┴π▓╣╞δ║≤┤µ╓ⁿíú
  11818. ╬¬┴╦╒╥╡╜╥╗╕÷╩²╫╓╨═╝ⁿ, ▒╪╨δ░╤╦ⁿ╫¬╗╗╬¬╥╗╕÷┤«, ▓ó╟╥
  11819. ╠φ╝╙╟░╡╝┴π▓╣╞δíú┤«╓╨╡─╩²╫╓▒╪╨δ╙δ╝ⁿ╓╡╧α═¼íú    ╚τ╣√
  11820. FIND ├ⁿ┴ε├╗╙╨╒╥╡╜╞Ñ┼Σ│╔╣ª╡─╝╟┬╝, ╘≥╜½╓╕╒δ╢¿╬╗╡╜╬─
  11821. ╝■─⌐╬▓(EOF() =.T.), ▓ó╟╥FOUND() ║»╩²╖╡╗╪.F.íú╚τ╣√╩╣╙├┴╦SET SOFTSEEK ON ├ⁿ┴ε, ╘≥╜°╨╨▓╗╛½╚╖╞Ñ
  11822. ┼Σíú╝╟┬╝╓╕╒δ▒╗╢¿╬╗╡╜╡┌╥╗┤╬╒╥╡╜▓ó╟╥┬·╫π╕├╝╟
  11823. ┬╝╡─╦≈╥²╝ⁿ╓╡┤≤╙┌╦≈╥²╓╡íúEOF(), FOUND() ╢╝╖╡╗╪.F. ╓╡íú
  11824. └²╫╙: use my index name
  11825.     find "└ε╤╟├╖"
  11826.     ? recno()
  11827.     look: ="xieping"
  11828.     find (look) // ═¿╣²║Ω╔Φ╓├╬¬find ▓╬╩²
  11829.     ? recno()
  11830.     
  11831. ▓╬╝√: @2450 [found](), @2441 [eof](), @2431 [dbsetindex]()
  11832.  
  11833. .3117
  11834. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11835. @31[╩²╛▌┐Γ├ⁿ┴ε]
  11836.  
  11837. go/goto
  11838. ╙∩╖¿: go [to] <nRecord>|bottom|top
  11839. ╙├═╛: ╙├└┤╜½╝╟┬╝╓╕╒δ╢¿╬╗╡╜╩²╛▌┐Γ╡─╓╕╢¿╬╗╓├íú
  11840. ▓╬╩²:
  11841. <nRecord>     ╓╕╢¿╥¬╟≤╡─╝╟┬╝║┼, ╝┤╩╣╙╔╕├▓╬╩²╓╕╢¿╡─╝╟┬╝╥╤▒╗
  11842. ▒Ω╔╧╔╛│²▒Ω╝╟, ╗≥╒▀╥╤▒╗╥╗╕÷╗ε╢»╡─╣²┬╦╞≈┬╦│÷, go/goto ├ⁿ┴ε
  11843. ╥▓─▄╜½╝╟┬╝╓╕╒δ╢¿╬╗╡╜╕├╝╟┬╝╔╧íú
  11844. bottom     ╓╕╢¿╡▒╟░╬─╝■╓╨╡─╫ε║≤╥╗╕÷╝╟┬╝, ╢°▓╗╣▄╕├╝╟┬╝╩╟
  11845. ╖±╥╤▒╗SET DELETED, SET INDEX TO ╗≥SET FILTER TO ├ⁿ┴ε╦∙┐╪╓╞íú
  11846. top     ╓╕╢¿╡▒╟░╬─╝■╓╨╡─╡┌╥╗╕÷╝╟┬╝, ╢°▓╗╣▄╕├╝╟┬╝╩╟╖±
  11847. ╥╤▒╗SET DELETED, SET INDEX TO ╗≥SET FILTER TO ├ⁿ┴ε╦∙┐╪╓╞íú
  11848. └²╫╙: use my
  11849.     go bottom
  11850.     skip
  11851.     ? eof() // ╖╡╗╪.T.
  11852.  
  11853. ▓╬╝√: @2421 [dbgoto](), @3144[skip]
  11854.  
  11855. .3118
  11856. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11857. @31[╩²╛▌┐Γ├ⁿ┴ε]
  11858.  
  11859. index
  11860. ╙∩╖¿: index on <keyExp> to <xcIndex> [UNIQUE] [scope] [FOR <lCondition>]; 
  11861.     [WHILE <lCondition>] [EVAL<lCondition>] [EVERY <nRecord>];
  11862.     [ASCENDIND]|[DESCENDING]
  11863.  
  11864. ╙├═╛: ╢╘╥╗╕÷╩²╛▌┐Γ╓╨╡─╝╟┬╝╜°╨╨┬▀╝¡┼┼╨≥íú
  11865. ▓╬╩²:    
  11866. <keyExp>           ╥¬╖┼╚δ╦≈╥²╬─╝■╡─╝ⁿ
  11867. <xcIndex>          ╔·│╔╡─╦≈╥²╬─╝■├√, ╙├╗º┐╔╥╘╩╣╙├╙δDBASE PLUS╝µ╚▌╡─.NDX ╦≈╥²╬─
  11868. ╝■, ╚τ▓╗╙├.NDX, ╘≥WINBASE ╫╘╢»╧≥╙├╗º╠ß╣⌐┐∞╦┘.NTX ╬─╝■íú
  11869.  UNIQUE             ╓╕╢¿╕├╣╪╝ⁿ╫╓╜½╩╣╡├╦≈╥²╬─╝■╓╨├┐╕÷╦≈╥²╝ⁿ╓╡
  11870. ╢╝╩╟╬¿╥╗╡─, ╢╘╦≈╥²╬─╝■╓╨╛▀╙╨╧α═¼╦≈╥²╝ⁿ╓╡╡─╝╟
  11871. ┬╝╜÷╢╘╫ε╟░├µ╡──╟╕÷╝╟┬╝╜° ╨╨╦≈╥²íú
  11872. scope        ╫≈╦≈╥²╝╟┬╝╡─╖╢╬ºíú
  11873. FOR <lCondition>    ╢╘╖√║╧lCondition ╠⌡╝■▒φ┤∩╩╜╡─╝╟┬╝╦≈╥²ú¼FOR <lCondition> ╜½▒ú┤µ╘┌╦≈╥²╬─╝■╓╨ú¼╙├
  11874. REINDEX ├ⁿ┴ε╩▒╚╘╞≡╫≈╙├íú
  11875. WHILE <lCondition>    ╡▒lCondition ╠⌡╝■▒φ┤∩╩╜╬¬.F. ╗≥╟≤╓╡╩º░▄╩▒╜½═ú╓╣╦≈╥²ú¼WHILE <lCondition> ╩╟┴┘╩▒
  11876. ╠⌡╝■ú¼╙├REINDEX ├ⁿ┴ε╩▒▓╗╘┘╞≡╫≈╙├íú
  11877. EVAL <lCondition>    ╘┌├┐╕÷╝╟┬╝╔╧╗≥░┤EVERY ╫╙╛Σ╓╕╢¿╡─╝╟┬╝╢╘lCondition ╟≤╓╡ú¼lCondiftion .F. ╩▒╜½═ú
  11878. ╓╣╦≈╥²íúEVAL ╫╙╛Σ╩╟┴┘╩▒┤µ╘┌╡─íú
  11879. EVERY <nRecord>    ╓╕╢¿╝ñ╗εEVAL ╫╙╛Σ╡─╝╟┬╝╝Σ╕⌠ú¼╚▒╩í╬¬╦∙╙╨╝╟┬╝íú
  11880.  
  11881. ASCENDIND        ░┤╔²╨≥╦≈╥²
  11882. DESCENDING        ░┤╜╡╨≥╦≈╥²
  11883.  
  11884. ╦╡├≈: DTOS( ) ║»╩²┐╔╥╘╢╘╕┤║╧╝ⁿ╓╨╚╒╞┌╫╓╢╬╜°╨╨╦≈╥²íú╜½DESCEND ▓╬╩²
  11885. ╙├╫≈╦≈╥²╝ⁿ▓ó╟╥╙├╫≈FIND ╗≥SEEK ├ⁿ┴ε▒φ┤∩╡─╥╗▓┐╖▌, ╘≥┐╔╥╘
  11886. ╔·│╔╡╣╨≥╡─╦≈╥²íú╦≈╥²░┤ASCII ┬δ╦│╨≥╔·│╔íúLOCAL ║═STATIC ╨═▒Σ┴┐▓╗─▄╙├
  11887. ╫≈╦≈╥²╡─╥╗▓┐╖▌íú
  11888.    └²╫╙:     use my
  11889.      index on name to namefile
  11890.      index on age to agefile
  11891.      use my index name,age
  11892.  
  11893.     index on age to agefile for age>20 eval ntxproc every lastrec()/10
  11894.         ...
  11895.     function ntxproc
  11896.     local crec:=ltrim(str(recno( )/lastrec( )*100))
  11897.         ú└10,10 say "Index ... "+crec
  11898.     return .T.
  11899.      
  11900.    ▓╬╝√: @2431 [dbsetindex]( ), @2415 [dbcreateind]( ), @2456 [indexord]( ), @2455 [indexkey]( )
  11901.  
  11902. .3402
  11903. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11904. @34[╝ⁿ┼╠├ⁿ┴ε]
  11905.  
  11906. input
  11907. ╙∩╖¿: input [<expPrompt>] to <idVar>
  11908. ╙├═╛:     ╜½╙├╗º╩Σ╚δ(╫ε╢α255 ╕÷╫╓╖√) ╓▒╜╙▓σ╚δ╥╗╕÷─┌┤µ▒Σ┴┐
  11909. ╓╨íú╩Σ╚δ▒╪╨δ╩╟╥╗║╧╖¿▒φ┤∩╩╜(╫╓╖√┤«▒╪╨δ╙├└¿║┼
  11910. ╥²╞≡), ╖±╘≥╗ß╥²╖ó╥╗╕÷╘╦╨╨┤φ╬≤íú
  11911. ▓╬╩²:     
  11912.     <expPrompt>         ╩Σ╚δ╠ß╩╛, ╫╓╖√┤«íú
  11913. <idVar>     ┤µ╖┼╜ß╣√╡─▒Σ┴┐, ╚τ╣√▒Σ┴┐▓╗┤µ╘┌╗≥╢╘╕├├ⁿ┴ε▓╗┐╔
  11914. ╝√, ╘≥░┤private ╨═╜¿┴ó╕├▒Σ┴┐íú
  11915. ╦╡├≈: ╩Σ╚δ╠ß╩╛▒╪╨δ╙├╥²║┼╥²╞≡└┤, ╖±╘≥╗ß╥²╞≡╥╗╕÷╘╦
  11916. ╨╨╩▒┐╠┤φ╬≤
  11917. └²╫╙: input "your name" to name
  11918.  
  11919. ▓╬╝√: @3007[accept... to], @3033[wait]
  11920.  
  11921. .3119
  11922. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11923. @31[╩²╛▌┐Γ├ⁿ┴ε]
  11924.  
  11925. join
  11926. ╙∩╖¿:     join with <xcAlias> to <xcDatabase> for <lCondition>;
  11927.     [FIELDS <idField List>]
  11928. ╙├═╛:     ╙├╙┌┴¼╜╙╡▒╟░╩²╛▌┐Γ╓╨╡─╝╟┬╝║═╡┌╢■╕÷╩²╛▌
  11929. ┐Γ╓╨┬·╫π╠⌡╝■╡─╝╟┬╝íú
  11930. ▓╬╩²: 
  11931. <xcAlias>         ╖╟╡▒╟░╤í╘±╣ñ╫≈╟°╓╨╦∙┤≥┐¬╡─╩²╛▌┐Γ├√íú
  11932. <xcDatabase>         ╜½▒╗╨┤╚δ┤┼┼╠╡─┴╜╕÷╬─╝■┴¼╜╙╜ß╣√╡─╬─╝■├√íú
  11933. <lCondition>         ┬▀╝¡┐╪╓╞╠⌡╝■, ╡┌╢■╕÷╩²╛▌┐Γ╓╨┬·╫π╕├╠⌡╝■╡─╝╟┬╝
  11934. ╜½▒╗┴¼╜╙▓ó╟╥╨┤╚δ╥╗╕÷╨┬╬─╝■íú
  11935. FIELDS <idField List>     ░ⁿ║¼╘┌╨┬╬─╝■╓╨╡─╫╓╢╬▒φíú╬¬┴╦░ⁿ║¼╡┌╢■╕÷╬─╝■
  11936. ╓╨╡─╫╓╢╬, ╕°╒Γ╨⌐╫╓╢╬╤í╚í┴╦▒≡├√íú╚▒╩í╟Θ┐÷╧┬, ╨┬╬─╝■
  11937. ╜½░ⁿ║¼╡┌╥╗╕÷╬─╝■╓╨╡─╦∙╙╨╫╓╢╬║═╡┌╢■╕÷╬─╝■
  11938. ╓╨╙δ╡┌╥╗╬─╝■╡─╫╓╢╬▓╗╓╪├√╡─╦∙╙╨╫╓╢╬íú
  11939. └²╫╙:    use my
  11940.     select 2
  11941.     use he
  11942.     select 1
  11943.     join with he to newfile for age<20 field name, no
  11944.     
  11945. ▓╬╝√: @3102[append from], @3132[replace], @3141[set relation]
  11946.  
  11947. .3403
  11948. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11949. @34[╝ⁿ┼╠├ⁿ┴ε]
  11950.  
  11951. keyboard
  11952. ╙∩╖¿: keyboard <cString>
  11953. ╙├═╛: ╩╫╧╚╟σ│²│¼╟░╝ⁿ╚δ╗║│σ╟°ú¼╚╗║≤╜½╥╗╕÷┤«╓├╚δ╗║
  11954. │σ╟°╓╨íú
  11955. ▓╬╩²: 
  11956.     <cString>    ╓├╚δ│¼╟░╝ⁿ╚δ╗║│σ╟°╡─┤«íú
  11957. ╦╡├≈:     ▓╗╣▄╘┌║╬╩▒╜½╫╓╖√┤«╓├╚δ│¼╟░╝ⁿ╚δ╗║│σ╟°, ╫╓╖√
  11958. ┤«╓╨╡─╒Γ╨⌐╫╓╖√╢╝┐╔╥╘▒╗│╠╨≥╓╨╕├├ⁿ┴ε╡─║≤╝╠├ⁿ
  11959. ┴ε╢┴╚í, ╦ⁿ├╟╦∙╞≡╡─╫≈╙├╕·▓┘╫≈╘▒╘┌╝ⁿ┼╠╔╧╓▒╜╙╩Σ
  11960. ╚δ╒Γ╨⌐╫╓╖√╧α═¼íú
  11961. └²╫╙:
  11962. /* ╡▒ESC ▒╗░┤╧┬╩▒, ╟σ│²│¼╟░╝ⁿ╚δ╗║│σ╟°╡──┌╚▌, ╓├╥╗╗╪│╡╖√
  11963. ╡╜╗║│σ╟°    */
  11964.  if inkey() =K_ESC
  11965.     keyboard chr (13)
  11966.     endif
  11967.     
  11968. ▓╬╝√: @3401[clear typeahead], @1507 [lastkey](), @1504 [inkey]()
  11969.  
  11970. .3120
  11971. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11972. @31[╩²╛▌┐Γ├ⁿ┴ε]
  11973.  
  11974. label from
  11975. ╙∩╖¿: label from <xcLBLFileName> [to printer] [to file <xcFile>];
  11976.     <scope> [while <lCondition>] [for <lCondition>] [sample]
  11977. ╙├═╛: ╩╣╙├▒Ω╟⌐╬─╝■┤≥╙í╗≥╧╘╩╛▒Ω║┼íú
  11978. ▓╬╩²:
  11979. <xcLBLFileName>         ▒ú┤µ▒Ω║┼╦╡├≈╡─▒Ω╟⌐(. LBL) ╬─╝■├√íú
  11980. to printer         ╜½╩Σ│÷╦═╡╜┤≥╙í╗·íú╚τ╣√├╗╙╨╩╣╙├SET CONSOLE OFF ├ⁿ┴ε,íí╘≥╩Σ│÷╥▓╘┌
  11981. ╞┴─╗╔╧╧╘╩╛íú
  11982. to file <xcFile>         ╜¿┴ó╩Σ│÷╜ß╣√╡─ASCII ╬─╝■╦∙╩╣╙├╡─╬─╝■├√íú
  11983. <scope>         ╓╕╢¿╬─╝■╓╨╡─╖╢╬º, ALL ╩╟╥╗╚▒╩í╖╢╬ºíú
  11984. while <lCondition>         ╓╕╢¿╓╒╓╣╕├├ⁿ┴ε╡─┬▀╝¡╠⌡╝■íú╕├╠⌡╝■╗∙╙┌<lCondition>íí╦∙╓╕╢¿
  11985. ╫╓╢╬╡─╓╡íú
  11986. for <lCondition>         ╢╘<scope> ╦∙╓╕╢¿╖╢╬º╓╨╝╟┬╝╡──┌╚▌╓╕╢¿╥╗╕÷┬▀╝¡▓Γ╩╘íú
  11987. sample         ╥¬╟≤╕°│÷▒Ω║┼╡─┤≥╙í╕±╩╜└²╫╙íú
  11988. └²╫╙: use my
  11989.     cls
  11990.     set console off
  11991.     label from killbl for state="FL" sample to print
  11992.  
  11993. .3121
  11994. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  11995. @31[╩²╛▌┐Γ├ⁿ┴ε]
  11996.  
  11997. list
  11998. ╙∩╖¿: list <expList> [TO PRINT] [TO FILE <xcFile>];
  11999.     <scope> [while <lCondition>] [for <lCondition>] [OFF]
  12000. ╙├═╛: ╙├╙┌╧╘╩╛║═┤≥╙í╩²╛▌┐Γ╓╨╦∙╤í╝╟┬╝╡─╫╓╢╬║═
  12001. ╫╓╢╬╦π╩╜╡─╓╡íú
  12002. ▓╬╩²:
  12003.     expList            ╫╓╢╬║═╫╓╢╬╦π╩╜╡─╓╡íú
  12004. TO PRINT     ╜½╩Σ│÷╦═╡╜┤≥╙í╗·íú╚τ╣√├╗╙╨╩╣╙├SET CONSOLE OFF ├ⁿ┴ε,íí╘≥╩Σ│÷╒╒╤∙
  12005. ╘┌╞┴─╗╔╧╧╘╩╛íú
  12006. TO FILE         ╔·│╔╥╗╕÷ASCII ╬─╝■, ╩Σ│÷▒╗╦═╡╜╕├╬─╝■╥╘▒π╥╘║≤╜°╨╨╝∞
  12007. ▓Θíú
  12008. <xcFile>         ╙├└┤╓╕╢¿─┐▒Ω╬─╝■├√╡─╥╗╕÷▒φ┤∩╩╜íú
  12009.  [<scope>]         ╘┌░ⁿ║¼╙├╗º╨Φ╥¬╧╘╩╛╡─╬─╝■╓╨╓╕╢¿╥╗╧╘╩╛╖╢╬º, all ╩╟
  12010. ╥╗╚▒╩í╖╢╬ºíú
  12011. while <lCondition>     ╓╕╢¿╓╒╓╣╕├├ⁿ┴ε╡─┬▀╝¡╠⌡╝■íú╕├╠⌡╝■╗∙╙┌<lCondition>íí╦∙╓╕╢¿
  12012. ╫╓╢╬╡─╓╡íú
  12013. for <lCondition>     ╢╘<scope> ╦∙╓╕╢¿╖╢╬º╓╨╝╟┬╝╡──┌╚▌╓╕╢¿╥╗╕÷┬▀╝¡▓Γ╩╘íú
  12014. OFF             ▓╗╧╘╩╛╝╟┬╝║┼íú
  12015. ╦╡├≈: ╚τ╣√TO FILE ╚╬╤í╧ε╓╕╢¿└⌐╒╣├√╩º░▄, ╘≥╩╣╙├. TXT └⌐╒╣├√íú
  12016. └²╫╙:     // ╧┬└²┴╨│÷┬·╫πage=20 ╡─╝╟┬╝╡─name, no, age    
  12017.     use my
  12018.     list name, no, age for age=20 to file disp OFF
  12019.     
  12020. ▓╬╝√: @3115[display]
  12021.  
  12022. .3122
  12023. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12024. @31[╩²╛▌┐Γ├ⁿ┴ε]
  12025.  
  12026. locate
  12027. ╙∩╖¿: locate [<scope>] for <lCondition> [while <lCondition>]
  12028. ╙├═╛: ╕∙╛▌<lCondition> ╓╕╢¿╡─╠⌡╝■, ┤╙╩²╛▌┐Γ╓╨╤í╘±╝╟┬╝íú
  12029. ▓╬╩²: 
  12030. [<scope>]         ╘┌╝╟┬╝╨Φ╥¬╢¿╬╗╡─╬─╝■╓╨╓╕╢¿╥╗╕÷╖╢╬ºíúALL ╩╟╥╗╕÷
  12031. ╚▒╩í╖╢╬ºíú
  12032. while <lCondition>     ╓╕╢¿╓╒╓╣╕├├ⁿ┴ε╡─┬▀╝¡╠⌡╝■íú╕├╠⌡╝■╗∙╙┌<lCondition> ╦∙╓╕╢¿╫╓
  12033. ╢╬╡─╓╡íú
  12034. for <lCondition>     ╢╘<scope> ╦∙╓╕╢¿╖╢╬º╓╨╝╟┬╝╡──┌╚▌╓╕╢¿╥╗╕÷┬▀╝¡▓Γ╩╘íú
  12035.  
  12036. ╦╡├≈:  WINBASE ╢╘├┐╥╗╕÷╣ñ╫≈╟°╓º│╓╥╗╕÷╗ε╢»╡─╦≈╥²íú
  12037.     ▓╗┬█║╬╩▒, ╙├╗º╢╝┐╔╩╣╙├╦≈╥²└┤╤░╒╥╦∙╨Φ╥¬╡─╡┌╥╗
  12038. ╕÷╝╟┬╝íúlocate ├ⁿ┴ε┤╙╬─╝■═╖┐¬╩╝╢╘├┐╥╗╕÷╝╟┬╝╟≤╓╡, ╓▒╡╜
  12039. ╖ó╧╓╥╗╕÷╞Ñ┼Σ<lCondition> ╠⌡╝■╡─╝╟┬╝íú╚τ╣√locate ├ⁿ┴ε├╗╙╨╒╥╡╜╞Ñ┼Σ
  12040. │╔╣ª╡─╝╟┬╝, ╘≥╜½╓╕╒δ╢¿╬╗╡╜╬─╝■─⌐╬▓(EOF() =.T.), ▓ó╟╥found() ║»╩²╖╡
  12041. ╗╪.F.íú╚τ╣√locate ├ⁿ┴ε╒╥╡╜╞Ñ┼Σ│╔╣ª╡─╝╟┬╝, ╘≥found() ║»╩²╖╡╗╪.T.íú
  12042. └²╫╙:// ╧┬└²╜½╘┌╞┴─╗╔╧╧╘╩╛age>60 ╡─╝╟┬╝╡─name ╫╓╢╬╓╡
  12043.     use my
  12044.     locate for age>60
  12045.     if eof()
  12046.         clear
  12047.         clear all
  12048.         return
  12049.     endif
  12050.     do while.T.
  12051.         cls
  12052.         ú└ 10, 10 say trim (name) +" ─Ω┴Σ│¼╣²60 ╦Ω"
  12053.         wait " ░┤╚╬╥╗╝ⁿ╝╠╨°▓Θ╒╥"
  12054.         continue
  12055.         if found()
  12056.             loop
  12057.         endif
  12058.     enddo
  12059.     
  12060. ▓╬╝√: @3107[continue], @3116[find], @2450 [found](), @2427 [dbseek]()
  12061.  
  12062. .3012
  12063. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12064. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  12065.  
  12066. menu to
  12067. ╙∩╖¿: menu to <idVar>
  12068. ╙├═╛:     ╢╘╡▒╟░│╔┼·╡─ú└... pormpt ├ⁿ┴ε╠ß╣⌐╥╗╕÷┴┴╠⌡▓╦╡Ñ╤í╘±, ▓ó╟╥
  12069. ╜½╤í╘±┤µ╚δ╥╗╕÷─┌┤µ▒Σ┴┐╓╨íú
  12070. ▓╬╩²:     
  12071. <idVar>    ┤µ╖┼▓╦╡Ñ╤í╧ε╡─▒Σ┴┐├√íú╚τ╣√─┌┤µ▒Σ┴┐<idvar> ▓╗┤µ╘┌╗≥
  12072. ╢╘╡▒╟░▓╗┐╔╝√, ╘≥╜¿┴ó╥╗╕÷PRIVATE ╨═▒Σ┴┐íú
  12073. ╦╡├≈:     menu to ├ⁿ┴ε╧≥ú└... pormpt ├ⁿ┴ε╠ß╣⌐╢»╫≈, ╡▒▓┘╫≈╒▀╘┌┴┴╠⌡▓╦╡Ñ╓╨╥╞
  12074. ╢»╤í╘±╩▒, menu to ├ⁿ┴ε╜½╢╘╙ª╙┌╤í╘±╡─╨≥║┼┤µ╚δ<idVar> ▒Σ┴┐╓╨, ╝ⁿ╚δ
  12075. ESC ╜½╖╡╗╪0 ╓╡íú├┐╕÷▓╦╡Ñ╫ε╢α╘╩╨φ╙╨32 ╕÷╤í╘±╧εíú
  12076. └²╫╙:// ╔·│╔┴┴╠⌡▓╦╡Ñ
  12077.     set wrap on
  12078.     set message to 24, center
  12079.     ú└ 10, 20 prompt " ╘÷╝╙: " message " ╘÷╝╙╥╗╕÷╨┬╝╟┬╝"
  12080.     ú└ 11, 20 prompt " ▒α╝¡: " message " ▒α╝¡╥╗╕÷╝╟┬╝"
  12081.     ú└ 12, 20 prompt " ╔╛│²: " message " ╔╛│²╥╗╕÷╝╟┬╝"
  12082.     menu to temp
  12083.     do case
  12084.     case temp=0
  12085.         return
  12086.     case temp=1
  12087.         add()
  12088.     case temp=2
  12089.         edit()
  12090.     case temp=3
  12091.         mydel()
  12092.     endcase
  12093.     
  12094. ▓╬╝√: @3030[set wrap]
  12095.  
  12096. .3123
  12097. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12098. @31[╩²╛▌┐Γ├ⁿ┴ε]
  12099.  
  12100. netappend blank
  12101. ╙∩╖¿: netappend blank
  12102. ╙├═╛:     ╢╘═°┬τ╔╧╡─╩²╛▌┐Γ╡──⌐╬▓╠φ╝╙╥╗╕÷┐╒╝╟┬╝ú¼▓ó
  12103. ╟╥╜½╓╕╒δ╢¿╬╗╘┌╨┬╠φ╝╙╡─┐╒╝╟┬╝╔╧íú
  12104. ▓╬╩²:     ╬▐
  12105.  
  12106. .3124
  12107. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12108. @31[╩²╛▌┐Γ├ⁿ┴ε]
  12109.  
  12110. netappend from
  12111. ╙∩╖¿:     netappend from <xcFile> [fields <idField list>] [<scope>];
  12112.     [while <lCondition>] [for <lCondition>];
  12113.     [sdf|delimited [with blank|<xcDelimiters>]]
  12114. ╙├═╛:     ╜½─│╕÷═°┬τ╩²╛▌┐Γ(. DBF) ╬─╝■╗≥╥╘╢║║┼╢¿╜τ╡─╬─▒╛
  12115. ╬─╝■╗≥╒▀╧╡═│╩²╛▌╕±╩╜(. SDF) ╬─╝■╓╨╡─╝╟┬╝╢┴│÷└┤╠φ
  12116. ╝╙╡╜┴φ╥╗╕÷═°┬τ╩²╛▌┐Γ(. DBF) ╬─╝■╓╨íú
  12117. ▓╬╩²:
  12118. from     ╓╕╢¿╘┤╬─╝■<xcFile> íú╚τ╣√▓╗╓╕╢¿╬─╝■└α╨═, ╘≥╚▒╩í└⌐╒╣├√╬¬. DBFíú╚τ
  12119. ╣√╓╕╢¿┴╦╬─╝■└α╨═╡½╬─╝■├√▓╗║¼└⌐╒╣├√, ╘≥╝┘╢¿└⌐
  12120. ╒╣├√╬¬. TXTíú
  12121.  [fields <idField list>]     ╘┌╜╙╩╒╡─. DBF ╬─╝■╓╨╤í╘±╥¬╠ε╨┤╡─╫╓╢╬íú╦ⁿ├╟╡─└α╨═▒╪
  12122. ╨δ╙δ╘┤╬─╝■╓╨╡─╧α═¼íú╚τ╘┤╫╓╢╬│ñ╢╚┤≤╙┌─┐╡─╫╓
  12123. ╢╬│ñ╢╚, ╘≥╩²╛▌╜½▒╗╜╪╢╠íú
  12124.  [<scope>]     ╘┤╩²╛▌┐Γ╓╨╝╟┬╝╡─╤í╚í╖╢╬ºíú╚τ╓╕╢¿NEXT<n>, ╘≥FOR/WHILE ╫╙╛Σ╜½▒╗
  12125. ╖╧╞·íú
  12126. while <lCondition>     ╓╕╢¿╓╒╓╣╕├├ⁿ┴ε╡─┬▀╝¡╠⌡╝■íú╕├╠⌡╝■╗∙╙┌<lCondition> ╦∙╓╕╢¿
  12127. ╫╓╢╬╡─╓╡íú
  12128. for <lCondition>     ╢╘<scope> ╦∙╓╕╢¿╖╢╬º╓╨╝╟┬╝╡──┌╚▌╓╕╢¿╥╗╕÷┬▀╝¡▓Γ╩╘íú
  12129.  
  12130. .3125
  12131. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12132. @31[╩²╛▌┐Γ├ⁿ┴ε]
  12133.  
  12134. netdelete
  12135. ╙∩╖¿: netdelete [<scope>] [while <lCondition>] [for <lCondition>]
  12136. ╙├═╛: ╘┌═°┬τ╔╧╔╛│²╝╟┬╝íú
  12137. ▓╬╩²: 
  12138. <scope>         ╘┌░ⁿ║¼╥¬╔╛│²╝╟┬╝╡─╬─╝■╓╨╓╕╢¿╖╢╬º, ╚▒╩í╬¬╡▒╟░
  12139. ╝╟┬╝íú
  12140. while <lCondition>     ╓╕╢¿╓╒╓╣╕├├ⁿ┴ε╡─┬▀╝¡╠⌡╝■íú╕├╠⌡╝■╗∙╙┌<lCondition> ╦∙╓╕╢¿╫╓
  12141. ╢╬╡─╓╡íú
  12142. for <lCondition>     ╢╘<scope> ╦∙╓╕╢¿╖╢╬º╓╨╝╟┬╝╡──┌╚▌╓╕╢¿╥╗╕÷┬▀╝¡▓Γ╩╘íú
  12143.  
  12144. .3126
  12145. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12146. @31[╩²╛▌┐Γ├ⁿ┴ε]
  12147.  
  12148. netrecall
  12149. ╙∩╖¿: netrecall [<scope>] [for <lCondition>] [while <lCondition>]
  12150. ╙├═╛: ╘┌═°┬τ╔╧╗╓╕┤╥╤▒╗┬▀╝¡╔╛│²╡─╝╟┬╝íú
  12151. ▓╬╩²:     
  12152. <scope>     ╘┌░ⁿ║¼╥¬╗╓╕┤╝╟┬╝╡─╬─╝■╓╨╓╕╢¿╥╗╕÷╖╢╬ºíú╡▒╟░╝╟
  12153. ┬╝╩╟╥╗╕÷╚▒╩í╖╢╬ºíú
  12154. while <lCondition>     ╓╕╢¿╓╒╓╣╕├├ⁿ┴ε╡─┬▀╝¡╠⌡╝■íú╕├╠⌡╝■╗∙╙┌<lCondition> ╦∙╓╕╢¿
  12155. ╫╓╢╬╡─╓╡íú
  12156. for <lCondition>     ╢╘<scope> ╦∙╓╕╢¿╖╢╬º╓╨╝╟┬╝╡──┌╚▌╓╕╢¿╥╗╕÷┬▀╝¡▓Γ╩╘íú
  12157.  
  12158. .3127
  12159. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12160. @31[╩²╛▌┐Γ├ⁿ┴ε]
  12161.  
  12162. netreplace
  12163. ╙∩╖¿:     netreplace <idField1> with <exp1> [,<idField2> with <exp2>];
  12164.     [<scope>] [for <lCondition>] [while <lCondition>]
  12165. ╙├═╛: ╘┌═°┬τ╔╧░╤▒φ┤∩╩╜╡─╓╡╫░╘╪╡╜─│╕÷╗ε╢»╩²╛▌
  12166. ┐Γ╡─╫╓╢╬╓╨íú
  12167. ▓╬╩²:
  12168. <idField1>    ╨Φ╥¬╫░╘╪╓╡╡─╫╓╢╬íú╒Γ╨⌐╫╓╢╬┐╔╥╘╩╟▒≡├√▒φ┤∩íú
  12169. <exp1>     ╫░╘╪╡╜╫╓╢╬╓╨╡─╓╡íú
  12170. <scope>         ╘┌╬─╝■╓╨╓╕╢¿╥╗╕÷╖╢╬ºíú╡▒╟░╝╟┬╝╩╟╥╗╕÷╚▒╩í╖╢
  12171. ╬ºíú╡½╩╟, ╚τ╣√╓╕╢¿┴╦╥╗╕÷╠⌡╝■, ╘≥ALL ▒Σ│╔╚▒╩í╖╢╬ºíú
  12172. for <lCondition>     ╢╘<scope> ╦∙╓╕╢¿╖╢╬º╓╨╝╟┬╝╡──┌╚▌╓╕╢¿╥╗╕÷┬▀╝¡▓Γ╩╘íú
  12173. while <lCondition>     ╓╕╢¿╓╒╓╣╕├├ⁿ┴ε╡─┬▀╝¡╠⌡╝■íú╕├╠⌡╝■╗∙╙┌<lCondition> ╦∙╓╕╢¿
  12174. ╫╓╢╬╡─╓╡íú
  12175.  
  12176. .3128
  12177. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12178. @31[╩²╛▌┐Γ├ⁿ┴ε]
  12179.  
  12180. netupdate
  12181. ╙∩╖¿: netupdate from <xAlias> on <expkey> [RANDOM];
  12182.     REPLACE <idField1> with <exp> [, <idField> with <exp>...]
  12183. ╙├═╛: ╘┌═°┬τ╔╧╙├╘┤╩²╛▌┐Γ╡──┌╚▌╕ⁿ╨┬╡▒╟░╩²╛▌┐Γíú
  12184. ▓╬╩²:    
  12185. <xAlias>     ░ⁿ║¼╕ⁿ╨┬▓┘╫≈╓╨╘┤╩²╛▌┐Γ╡─╣ñ╫≈╟°íú
  12186. <expkey>     ┴╜╕÷╬─╝■╡─╣▓═¼╝ⁿíú╜÷╡▒╝ⁿ╞Ñ┼Σ╩▒, ▓┼╓┤╨╨╕ⁿ╨┬▓┘╫≈íú
  12187. <idField> with <exp>     ╨Φ╨▐╕─╡─╫╓╢╬╫Θ│╔╡─▒φ, ╫╓╢╬╓«╝Σ╙├╢║║┼╖╓╕⌠┐¬íú╨▐
  12188. ╕─╩▒╜½╥╘▒φ┤∩╩╜╡─╓╡╫≈╬¬╕∙╛▌íú
  12189. RANDOM     ╘┌╬─╝■╓«╝Σ╓╕╢¿╥╗╕÷╥╗╢╘╢α╣╪╧╡íú╚τ╓╕╢¿RANDOM, ╘≥╦╤╦≈
  12190. ╘┤╬─╝■╓╨╦∙╙╨╞Ñ┼Σ<expkey> ╡─╝╟┬╝, ▓ó╙├╒Γ╨⌐╝╟┬╝╚Ñ╕ⁿ╨┬╡▒
  12191. ╟░╩²╛▌┐Γ╓╨╡▒╟░╝╟┬╝└∩├µ╡──╟╨⌐╙╔├ⁿ┴ε╦∙╓╕╢¿╡─
  12192. ╫╓╢╬íú
  12193.  
  12194. .3702
  12195. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12196. @37[╧╡═│├ⁿ┴ε]
  12197.  
  12198. note
  12199. ╙∩╖¿: note <comment>
  12200. ╙├═╛: ╙├╙┌╜½╖╟╓┤╨╨╙∩╛Σ(╫ó╩═) ╖┼╚δ┤·┬δ╓╨
  12201. ╦╡├≈:     ╙╨╢α╓╓╨╬╩╜╡─╫ó╜Γ, ╚τ/* ║═*/; //; *; &&ú¼╫ó╜Γ▓╗─▄╟╢╠╫
  12202. └²╫╙:     use my && ▒╛╫ó╜Γ┤ª╙┌╥╗╕÷╓┤╨╨╨╨╔╧íú
  12203. * ▒╛╫ó╜Γ╒╝╥╗╕÷╓┤╨╨╨╨
  12204. note ╒Γ╥▓╩╟╥╗╕÷╫ó╜Γ¬│
  12205. /* ╒Γ╩╟C ╨╬╩╜╡─╥╗╕÷╫ó╜Γ
  12206. ╒Γ╩╟╨╬╩╜╡─╥╗╕÷╫ó╜Γ
  12207. ╒Γ╩╟╨╬╩╜╡─╥╗╕÷╫ó╜Γ*/
  12208. // ╒Γ╓╓╨╬╩╜╡─╫ó╜Γ╥▓┐╔╜╙╩▄
  12209.  
  12210. .3703
  12211. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12212. @37[╧╡═│├ⁿ┴ε]
  12213.  
  12214. on error do
  12215. ╙∩╖¿:    ON ERROR DO [ <cErrFunc> ] ╗≥ON ERROR [ <cErrFunc> ]
  12216. ╙├═╛:  ╡▒┤φ╬≤╖ó╔·╩▒ú¼┤φ╬≤┐╪╓╞╘≥╜╗╕°╙╔<cErrFunc> ╓╕╢¿╡─║»╩²┤ª
  12217. └φíú╖±╘≥╜½╚í╧√╡▒╟░╡─┤φ╬≤┤ª└φíú 
  12218. ▓╬╩²:  
  12219. <cErrFunc>        │÷┤φ┤ª└φ║»╩²├√,    ╕├║»╩²╡─╢¿╥σ╚τ╧┬ú║
  12220.     Function err_func (<errmsg>, <errarr>, <tracearr>, <retry>, <ignore>)
  12221.             :
  12222.         <│÷┤φ┤ª└φ▓┐╖╓>
  12223.             :
  12224.     Return(<retral>)
  12225. ╞Σ╓╨ú║<errmsg> -- ╗∙▒╛┤φ╬≤╨┼╧ó
  12226.     <errarr> ---- ┤φ╬≤╡─╧╕╜┌ú¼╦ⁿ╩╟╙╔╥╘╧┬┴∙╕÷▓┐╖╓╫Θ│╔╡─╫╓╖√╩²╫Θ
  12227.  
  12228. {SYMBOL 183 \f "Symbol" \s 10 \h}    ╡▒╟░│÷┤φ╦∙╜°╨╨╡─▓┘╫≈
  12229. {SYMBOL 183 \f "Symbol" \s 10 \h}    │÷┤φ╡─╬─╝■├√
  12230. {SYMBOL 183 \f "Symbol" \s 10 \h}    DOS ┤φ╬≤╨┼╧ó
  12231. {SYMBOL 183 \f "Symbol" \s 10 \h}    ░ⁿ║¼│÷┤φ╖ó╔·╡π╡─║»╩²├√│╞
  12232. {SYMBOL 183 \f "Symbol" \s 10 \h}    │÷┤φ╬╗╓├
  12233. {SYMBOL 183 \f "Symbol" \s 10 \h}    │÷┤φ▓╬╩²
  12234.                 
  12235. <tracearr>    ╚τ╣√─│╕÷▓┐╖╓├╗╙╨─┌╚▌ú¼╘≥╕├▓┐╖╓╬¬┐╒┤«╙╔╡≈╙├╣∞
  12236. ╝ú╫Θ│╔╡─╫╓╖√╩²╫Θú¼╡┌╥╗╕÷╬¬winbase ╙ª╙├│╠╨≥╡─╓≈║»╩²ú¼╫ε║≤
  12237. ╥╗╕÷╬¬┤φ╬≤╖ó╔·╟░╓┤╨╨╡─║»╩²íú
  12238. <retry>     ┤µ╖┼╩╟╖±┐╔╓╪╩╘╡─┬▀╝¡╓╡íú╚⌠╕├╓╡╬¬╒µú¼╘≥┐╔╓╪╩╘ú¼╖±╘≥
  12239. ╓╪╩╘╬▐╨ºíú
  12240. <ignore>     ┤µ╖┼╩╟╖±┐╔║÷┬╘╡─┬▀╝¡╓╡íú╚⌠╕├╓╡╬¬╒µú¼┐╔║÷┬╘╡▒╟░
  12241. ┤φ╬≤ú¼ ╖±╘≥║÷┬╘╡─╗░ú¼─│╨⌐┤φ╬≤┐╔─▄╡╝╓┬╧╡═│▒└└úíú
  12242. ╥╘╔╧╬σ╕÷▓╬╩²╢╝╩╟╙╔╧╡═│╫╘╢»╔Φ╓├╡─ú¼╙ª╙├│╠╨≥╓╨
  12243. ╓╗╨Φ╥¬╢╘╞Σ╜°╨╨╩╣╙├╝░┼╨╢╧íú
  12244. <retval>     ┤φ╬≤╧╡═│╡─╖╡╗╪╓╡ú¼╘┌╜°╨╨═Ω┤ª└φ║≤ú¼┐╔╖╡╗╪╚τ╧┬╡─╓╡ú║
  12245.  
  12246.         0 ---- ═╦│÷    1 ---- ╓╪╩╘    2 ---- ║÷┬╘
  12247.  
  12248. ╦╡├≈ú║╘┌╩╣╙├╫╘╢¿╥σ║»╩²╜°╨╨┤φ╬≤┐╪╓╞╩▒ú¼▒╪╨δ╫ó╥Γ╥╘
  12249. ╧┬╝╕╕÷╬╩╠Γú║
  12250. (1) ╚⌠╩╟│÷╧╓í░─┌┤µ▓╗╣╗í▒╡─┤φ╬≤ú¼<errarr> ╩²╫Θ╝░<tracearr> ╩²╫Θ╛∙╬¬┐╒ú¿│ñ╢╚
  12251. ╬¬0ú⌐íú
  12252. (2) ╘┌╡≈╙├winbase ─│╨⌐╓╪╥¬║»╩²╓«╟░ú¼└²╚τú║╩²╛▌┐Γ╬¼╗ñ╡─║╦╨─║»
  12253. ╩²winbrowsíó▒¿▒φ╧╡═│╡─║╦╨─║»╩²design ╡╚ú¼ ╚τ╣√┤φ╬≤┐╪╓╞╧╡═│
  12254. ╩╟╬¬╠╪▒≡─┐╡─╔Φ╝╞╡─ú¼╫ε║├╘┌╩╣╙├╒Γ╨⌐║»╩²╓«╟░
  12255. ╜½╞Σ╣╪▒╒ú¼╩╣╙├═Ω║≤╘┘╜½╞Σ┤≥┐¬íú
  12256. (3) ╥¬╝∞▓Γ┐╪╓╞╡─╖╡╗╪╓╡ú¼╢°╟╥╖╡╗╪╓╡╥╗╢¿╥¬╒²╚╖ú¼╖±╘≥
  12257. ┐╔─▄╡╝╓┬╦└╗·╗≥╧╡═│▒└└úíú
  12258.  
  12259. └²╫╙ú║
  12260.     ╫╘╢¿╥σ┐╪╓╞║»╩²newerrorú¼╚⌠┤φ╬≤┐╔║÷┬╘╘≥▓╗╧╘╩╛╚╬║╬╨┼
  12261. ╧óú¼╖±╘≥╧╘╩╛╡▒╟░┤φ╬≤╨┼╧ó╝░▓┘╫≈ú¼╚╗║≤═╦│÷╧╡═│ú║
  12262.  
  12263.     procedure My_proc( )
  12264.         windowstart( )
  12265.         on error newerror     // ╗≥╒▀onerror do newerror
  12266.             :
  12267.                <╞Σ╦ⁿ┐╔╓┤╨╨╙∩╛Σ╗≥║»╩²>
  12268.             :
  12269.         on error        // ╗≥╒▀on error do
  12270.         windowexit( )
  12271.     Return
  12272.  
  12273.     Function newerror (msg, errarr, tracearr, retry, ingore)
  12274.     Local operation :=0
  12275.         if ignore
  12276.             return(2)     // ║÷┬╘╡▒╟░┤φ╬≤
  12277.         endif
  12278.         if ! Empty (errarr)
  12279.             operation = "▓┘╫≈: " + errarr[1]     // ╡▒╟░▓┘╫≈
  12280.         endif
  12281.         msgbox(msg, operation, 1)
  12282.     Return(0)            // ═╦│÷
  12283.  
  12284.  
  12285. .3129
  12286. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12287. @31[╩²╛▌┐Γ├ⁿ┴ε]
  12288.  
  12289. pack
  12290. ╙∩╖¿: pack
  12291. ╙├═╛:     ╙├╙┌╢╘╩²╛▌┐Γ╓╨╫≈╔╧┬▀╝¡╔╛│²▒Ω╝╟╡─╝╟┬╝╜°
  12292. ╨╨╬∩└φ╔╛│², ╓╪╨┬╦≈╥²╩²╛▌┐Γ, ╩╒╗╪▒╗╔╛│²╝╟┬╝╦∙╒╝╛▌
  12293. ╡─┤┼┼╠┐╒╝Σíú
  12294. ▓╬╩²:  ╬▐
  12295. ╦╡├≈:  ╚τ╣√╥¬╔╛│²╢α╕÷╝╟┬╝, ╘≥╙ª╡╚╡╜─ú┐Θ╓╨╫ε║≤╥╗╕÷
  12296. ┬▀╝¡╔╛│²▓┘╫≈═Ω│╔╥╘║≤▓┼╓┤╨╨PACK ├ⁿ┴εíú
  12297. └²╫╙:
  12298. /* ╢╘╩²╛▌┐Γmy ╓╨┬·╫πno<1000 ╡─╝╟┬╝╫≈╔╧┬▀╝¡╔╛│²▒Ω╝╟, ▓ó╜°╨╨
  12299. ╬∩└φ╔╛│²*/
  12300.  use my
  12301.     delete all for no<1000
  12302.     pack
  12303. ▓╬╝√: @3151[zap]
  12304.  
  12305. .3013
  12306. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12307. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  12308.  
  12309. read
  12310. ╙∩╖¿: read [save]
  12311. ╙├═╛: ╩╣╙├ú└... say... get ├ⁿ┴ε└┤╜╙╩╒▓┘╫≈╒▀╡─╩Σ╚δíú
  12312. ▓╬╩²:     
  12313. [save]     ▓╗╟σ┐╒Getlist ╩²╫Θ╥╘▒π┐╔╥╘╙├╞Σ╦ⁿREAD ├ⁿ┴ε└┤▒α╝¡╦ⁿ├╟íú
  12314. ╦╡├≈:     ╘┌READ ╓┤╨╨╞┌╝Σ, ╚τ╣√╙╨╚╬║╬Getlist ╩²╫Θ╘¬╦╪╖ó╔·╕─▒Σ, UPDATED()     ║»╩²╜½╖╡
  12315. ╗╪.T. ╓╡íú
  12316. └²╫╙: // ╧┬├µ└²╫╙╘┌╡┌╥╗╕÷READ ╓╨╝Σ░┤╧┬F10, ╘≥╙╓┐╔│÷╧╓╡┌╢■
  12317. ╕÷READ
  12318.     cls
  12319.     v1: =v2: =space (10)
  12320.     ú└ 11, 5 say " ╩Σ╚δ╥╗╕÷╫╓: " get v1
  12321.     ú└ 12, 5 say " ╩Σ╚δ╥╗╕÷╫╓: " get v2
  12322.     set key -9 to next_gets
  12323.     read
  12324.     set key -9 to
  12325.     cls
  12326.     return
  12327.     prcedure next_gets
  12328.     local GetList: = {}
  12329.     temp: =savescreen (10, 5, 13, 70)
  12330.     v3: =space (4)
  12331.     ú└ 11, 15 say " ╩Σ╚δ╥╗╕÷╫╓: " get v3
  12332.     read
  12333.     ú└ 13, 15 say " ─π╩Σ╚δ╡─╩╟: "+v3+" ░┤╚╬╥╗╝ⁿ.. "
  12334.     inkey (0)
  12335.     restscreen (10, 5, 13, 70, temp)
  12336.     return
  12337.     
  12338.     ▓╬╝√: @3009[clear gets]
  12339.  
  12340.  
  12341. .3130
  12342. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12343. @31[╩²╛▌┐Γ├ⁿ┴ε]
  12344.  
  12345. recall
  12346. ╙∩╖¿: recall <scope> [for <lCondition>] [while <lCondition>]
  12347. ╙├═╛: ╗╓╕┤╥╤▒╗┬▀╝¡╔╛│²╡─╝╟┬╝íú
  12348. ▓╬╩²:     
  12349. <scope>         ╘┌░ⁿ║¼╥¬╗╓╕┤╝╟┬╝╡─╬─╝■╓╨╓╕╢¿╥╗╕÷╖╢╬ºíú╡▒╟░╝╟
  12350. ┬╝╩╟╥╗╕÷╚▒╩í╖╢╬ºíú
  12351. while <lCondition>     ╓╕╢¿╓╒╓╣╕├├ⁿ┴ε╡─┬▀╝¡╠⌡╝■íú╕├╠⌡╝■╗∙╙┌<lCondition> ╦∙╓╕╢¿
  12352. ╫╓╢╬╡─╓╡íú
  12353. for <lCondition>     ╢╘<scope> ╦∙╓╕╢¿╖╢╬º╓╨╝╟┬╝╡──┌╚▌╓╕╢¿╥╗╕÷┬▀╝¡▓Γ╩╘íú
  12354. ╦╡├≈:     ╚τ╣√╩╣╙├┴╦SET DELETED ON ├ⁿ┴ε, ╘≥recall ╜÷╗╓╕┤╡▒╟░╝╟┬╝╗≥╙╔╝╟┬╝║┼
  12355. ╓╕╢¿╡─╝╟┬╝íú
  12356. └²╫╙: recall all for age=20// ╗╓╕┤┬·╫πno<1000 ╡─╫≈╔╧┬▀╝¡╔╛│²▒Ω╝╟╡─╝╟┬╝
  12357.  
  12358. ▓╬╝√: @2423 [dbrecall]()
  12359.  
  12360. .3131
  12361. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12362. @31[╩²╛▌┐Γ├ⁿ┴ε]
  12363.  
  12364. reindex
  12365. ╙∩╖¿: reindex  [EVAL<lCondition>] [EVERY <nRecord>]
  12366. ╙├═╛: ╙├╙┌╓╪╜¿╡▒╟░╣ñ╫≈╟°╓╨╦∙╙╨┤≥┐¬╡─╦≈╥²╬─╝■íú
  12367. ▓╬╩²: 
  12368. EVAL <lCondition>    ╘┌├┐╕÷╝╟┬╝╔╧╗≥░┤EVERY ╫╙╛Σ╓╕╢¿╡─╝╟┬╝╢╘lCondition ╟≤╓╡ú¼lCondiftion .F. ╩▒╜½═ú
  12369. ╓╣╦≈╥²íú
  12370. EVERY <nRecord>    ╓╕╢¿╝ñ╗εEVAL ╫╙╛Σ╡─╝╟┬╝╝Σ╕⌠ú¼╚▒╩í╬¬╦∙╙╨╝╟┬╝íú
  12371.  
  12372.  
  12373. ╦╡├≈: ╘┌═°┬τ╔╧╩╣╙├reindex ├ⁿ┴ε╩▒, ╙ª─▄▒ú╓ñ╢╘╩²╛▌┐Γ╡─╗Ñ│Γ
  12374. ╩╣╙├íúreindex ├ⁿ┴ε▓╗╕─╢»╦≈╥²╬─╝■═╖íú
  12375. └²╫╙: use oldfile
  12376.     index on age to agefile 
  12377.         ...
  12378.     reindex eval ntxproc every lastrec 9 ) /10
  12379.     function ntxproc
  12380.     local crec:=ltrim(str(recno( )/lastrec( )*100))
  12381.         ú└10,10 say "Index ... "+crec
  12382.     return .T.
  12383.  
  12384. ▓╬╝√: @3118[index], @3129[pack], @3139[set index], @3143[set unique], @2424 [dbreindex]()
  12385.  
  12386. .3603
  12387. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12388. @36[─┌┤µ▒Σ┴┐├ⁿ┴ε]
  12389.  
  12390. release
  12391. ╙∩╖¿: release <idMemvar list> ╗≥release all [like|except <skeleton>] 
  12392. ╙├═╛: ┤╙─┌┤µ╓╨╔╛│²╦∙╤í╘±╡─▒Σ┴┐║═╩²╫Θ
  12393. ▓╬╩²: 
  12394. <idMemvar list>     ╙├╗º╥¬╩═╖┼╡─▒Σ┴┐╗≥╙╔╥¬╩═╖┼╡─▒Σ┴┐╫Θ│╔╡─▒φ, ▒Σ
  12395. ┴┐╓«╝Σ╙├╢║║┼╕⌠┐¬
  12396. all [like|except]     ╖╢╬º├ⁿ┴ε, ╦ⁿ╓╕╢¿╥¬├┤░ⁿ║¼║══¿┼Σ╖√─ú╩╜╧α╞Ñ┼Σ╡─
  12397. ▒Σ┴┐, ╥¬├┤▓╗░ⁿ║¼║══¿┼Σ╖√─ú╩╜╧α╞Ñ┼Σ╡─▒Σ┴┐íú
  12398.     <skeleton>        ═¿┼Σ╖√─ú╩╜
  12399. ╦╡├≈:     ╚τ╣√╙├┤°╙╨<idMemvar list> ▓╬╩²╡─release ├ⁿ┴ε└┤╩═╖┼╥╗╫Θ▒Σ┴┐, ╘≥▓╬╩²
  12400. ╓╨PUBLIC ╨═║═PRIVATE ╨═╡─▒Σ┴┐║═╩²╫Θ╜½┤╙─┌┤µ╓╨╔╛│², ╜÷╡▒╟░╣²
  12401. │╠╡─▒Σ┴┐╩▄╡╜╙░╧∞íúrelease all ├ⁿ┴ε╜½╩╣╡├╘┌╡▒╟░╣²│╠╓╨╜¿┴ó╡─
  12402. PRIVATE ╨═▒Σ┴┐▒╗╕│╙ΦNIL ╓╡íú╡½╘┌╕├╣²│╠╓╒╓╣╓«╟░, ╒Γ╨⌐▒Σ┴┐║═╩²
  12403. ╫Θ▓╗╗ß┤╙─┌┤µ╓╨╔╛│²íúrelease all ▓╗─▄╔╛│²PUBLIC ╨═▒Σ┴┐íú
  12404.     release ├ⁿ┴ε▓╗╙░╧∞LOCAL ╨═║═STATIC ╨═▒Σ┴┐íú
  12405. └²╫╙: 
  12406. st1: =st2: =ss1: =ss2: =ss3: =easy: =hard: =try: =0
  12407. release all except ss* // ─┌┤µ╓╨╓╗╙╨ss1, ss2, ss3
  12408. st1: =st2: =ss1: =ss2: =ss3: =easy: =hard: =try: =0
  12409. release all like s? 2 //st2 ║═ss2 ▒╗╩═╖┼
  12410. release all like s* // ─┌┤µ╓╨╓╗╙╨easy, hard, try
  12411. release all // ╡▒╟░├╗╙╨╗ε╢»╡─▒Σ┴┐
  12412.  
  12413. ▓╬╝√: @3104[clear all], @3601[clear memory], quit
  12414.     
  12415. .3504
  12416. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12417. @35[╡═╝╢╬─╝■├ⁿ┴ε]
  12418.  
  12419. rename
  12420. ╙∩╖¿: rename <xcOldFileNam> to <xcNewFileNam>
  12421. ╙├═╛: ╙├╙┌╕─▒Σ┤┼┼╠╔╧╬─╝■╡─├√│╞íú
  12422. ▓╬╩²:    
  12423.     <xcOldFileNam>     ╡▒╟░┬╖╛╢, ╬─╝■├√╝░└⌐╒╣├√
  12424.     <xcNewFileNam>     ╕°╬─╝■╞≡╡─╨┬├√│╞
  12425.  
  12426. ╦╡├≈:     ╥¬╗╗├√╡─╬─╝■▒╪╨δ╩╟╣╪▒╒╡─íú╢╘┤°╙╨▒╕╫ó╫╓╢╬╡─
  12427. ╩²╛▌┐Γ╬─╝■╗╗├√╩▒, ╥▓╙ª╕°╧α╙ª╡─. DBT ╬─╝■╗╗├√íú
  12428. └²╫╙: rename c: \my\mypro. prg to c: \my\you. prg // ░╤╬─╝■mypro. prg ╗╗├√╬¬you. prg
  12429.  
  12430. ▓╬╝√: @2350 [frename]()
  12431.  
  12432. .3132
  12433. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12434. @31[╩²╛▌┐Γ├ⁿ┴ε]
  12435.  
  12436. replace
  12437. ╙∩╖¿:     replace <idField1> with <exp1>;
  12438.      ú█<idField2> with <exp2>];
  12439.     <scope> [for <lCondition>] [while <lCondition>]
  12440. ╙├═╛: ░╤▒φ┤∩╩╜╡─╓╡╫░╘╪╡╜─│╕÷╗ε╢»╩²╛▌┐Γ╡─╫╓╢╬
  12441. ╓╨íú
  12442. ▓╬╩²:
  12443. <idField1>    ╨Φ╥¬╫░╘╪╓╡╡─╫╓╢╬íú╒Γ╨⌐╫╓╢╬┐╔╥╘╩╟▒≡├√▒φ┤∩íú
  12444. <exp1>     ╫░╘╪╡╜╫╓╢╬╓╨╡─╓╡íú
  12445. <scope>         ╘┌╬─╝■╓╨╓╕╢¿╥╗╕÷╖╢╬ºíú╡▒╟░╝╟┬╝╩╟╥╗╕÷╚▒╩í╖╢
  12446. ╬ºíú╡½╩╟, ╚τ╣√╓╕╢¿┴╦╥╗╕÷╠⌡╝■, ╘≥ALL ▒Σ│╔╚▒╩í╖╢╬ºíú
  12447. for <lCondition>     ╢╘<scope> ╦∙╓╕╢¿╖╢╬º╓╨╝╟┬╝╡──┌╚▌╓╕╢¿╥╗╕÷┬▀╝¡▓Γ╩╘íú
  12448. while <lCondition>     ╓╕╢¿╓╒╓╣╕├├ⁿ┴ε╡─┬▀╝¡╠⌡╝■íú╕├╠⌡╝■╗∙╙┌<lCondition> ╦∙╓╕╢¿
  12449. ╫╓╢╬╡─╓╡íú
  12450. ╦╡├≈:     ╚τ╣√╫░╘╪╡─╫╓╢╬╩╟╗ε╢»╦≈╥²╝ⁿ▒φ┤∩╩╜╡─╥╗▓┐
  12451. ╖▌, ╘≥╦≈╥²╜½▒╗┴ó╝┤╨▐╒², ╥≥╬¬╝╟┬╝╓╕╒δ╜½╓╪╨┬╢¿╬╗, ╦∙╥╘
  12452. ╖╢╬º(<scope>) ╫╙╛Σ╜½▒Σ╡├╬▐╥Γ╥σíú╘┌═°┬τ╓╨, ╚τ╣√╜÷╫░╘╪╥╗╕÷╝╟
  12453. ┬╝╡─╫╓╢╬, ╙ª╚╖▒ú╥╤╟í╡▒╡╪╩╣╙├RLOCK() ║»╩²╦°╫í╕├╝╟┬╝íú╚τ
  12454. ╣√╩╟╢╘╥╗╫Θ╡─╫╓╢╬╜°╨╨╫░╘╪, ╙ª╩╣╙├FLOCK() ║»╩², ╢╘╒√╕÷╬─╝■
  12455. ╝╙╦°, ╥╘▒ú╓ñ░┤╗Ñ│Γ╖╜╩╜(EXCLUSIVE ╖╜╩╜) ╩╣╙├╕├╬─╝■íú┐╔╢╘▒╕╫ó╫╓╢╬
  12456. ╫░╘╪╫╓╢╬╓╡íú
  12457. └²╫╙: replace all age with age+1 // ├┐╠⌡╝╟┬╝╡─age ╘÷╝╙1
  12458.     goto 5
  12459.     replace name with liping, age with 19, no with 1949 
  12460.     // ╕─▒Σ╡▒╟░╝╟┬╝╡─name, age, no ╫╓╢╬
  12461.     
  12462. ▓╬╝√: @3149[update]
  12463.  
  12464. .3133
  12465. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12466. @31[╩²╛▌┐Γ├ⁿ┴ε]
  12467.  
  12468. report from
  12469. ╙∩╖¿: report from <xcFRMFile>;
  12470.      [TO PRINTER] [TO FILE <xcFile>];
  12471.     <scope> [while <lCondition>] [for <lCondition>];
  12472.      [PLAIN|HEADING <cHeading>] [NOEJECT] [SUMMARY]
  12473. ╙├═╛: ╔·│╔╙╔. FRM ▒¿▒φ╬─╝■┐╪╓╞╡─╩Σ│÷íú
  12474. ▓╬╩²:
  12475. <xcFRMFile>        FRM ▒¿▒φ╬─╝■├√, ╕├▓╬╩²┐╔▒φ╩╛│╔╥╗╕÷╬─╫╓┤«╗≥└¿║┼╓╨
  12476. ╡─╫╓╖√▒φ┤∩╩╜íú
  12477. TO PRINT         ╜½╩Σ│÷╦═╡╜┤≥╙í╗·íú╚τ╣√├╗╙╨╩╣╙├SET CONSOLE OFF ├ⁿ┴ε, ╘≥╩Σ│÷╒╒╤∙
  12478. ╘┌╞┴─╗╔╧╧╘╩╛íú
  12479. TO FILE         ╔·│╔╥╗╕÷ASCII ╬─╝■, ╩Σ│÷▒╗╦═╡╜╕├╬─╝■╥╘▒π╥╘║≤╜°╨╨╝∞
  12480. ▓Θíú
  12481. <xcFile>         ╙├└┤╓╕╢¿─┐▒Ω╬─╝■├√╡─╥╗╕÷▒φ┤∩╩╜íú
  12482.  [<scope>]         ╘┌░ⁿ║¼╩Σ│÷╝╟┬╝╡─╬─╝■╓╨╓╕╢¿╥╗╧╘╩╛╖╢╬º, all ╩╟╥╗╚▒
  12483. ╩í╖╢╬ºíú
  12484. while <lCondition>     ╓╕╢¿╓╒╓╣╕├├ⁿ┴ε╡─┬▀╝¡╠⌡╝■íú╕├╠⌡╝■╗∙╙┌<lCondition> ╦∙╓╕╢¿
  12485. ╫╓╢╬╡─╓╡íú
  12486. for <lCondition>     ╢╘<scope> ╦∙╓╕╢¿╖╢╬º╓╨╝╟┬╝╡──┌╚▌╓╕╢¿╥╗╕÷┬▀╝¡▓Γ╩╘íú
  12487. PLAIN         ▓╗┤≥╙í╚╒╞┌║═╥│║┼, ╜÷╘┌╡┌╥╗╥│╢Ñ╢╦┤≥╙í▒¿▒φ═╖║═
  12488. ▒Ω╠Γíú
  12489. HEADING <cHeading>     ╙├└┤╖┼╓├▒¿▒φ╢Ñ╢╦╡─┐¬═╖╨╨íú
  12490. NOEJECT     ┤≥╙í┐¬╩╝╟░, ▓╗╧≥┤≥╙í╗·╖ó╦═╗╗╥│╖√íú
  12491. SUMMARY     ╘┌▒¿▒φ╓╨╓╗╠ß╣⌐╫Θ║═╖╓╫Θ╡─╨╨╨í╝╞╙δ╨╨╫▄╝╞íú
  12492. └²╫╙: use my index name
  12493.     set console off // ╣╪▒╒╞┴─╗╩Σ│÷
  12494.     report from myinfo for no<1000 to print
  12495.             // ╜½┬·╫π╠⌡╝■╡─╝╟┬╝╩Σ│÷╦═╡╜┤≥╙í╗·
  12496.     set console on // ┤≥┐¬╞┴─╗╩Σ│÷
  12497.     
  12498. ▓╬╝√: @3019[set console]
  12499.  
  12500. .3601
  12501. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12502. @36[─┌┤µ▒Σ┴┐├ⁿ┴ε]
  12503.  
  12504. restore
  12505. ╙∩╖¿: restore from <xcMemfile> [ADDITIVE]
  12506. ╙├═╛: ╘┌─┌┤µ╓╨╓╪╨┬╗╓╕┤╖┼╘┌. MEM ┤┼┼╠╬─╝■╓╨╡──┌┤µ▒Σ┴┐íú
  12507. ▓╬╩²:     
  12508. <xcMemfile>    MEM ╬─╝■├√, ▒Σ┴┐╡─╓╡┤µ╖┼╘┌╒Γ╕÷╬─╝■╓╨, ╕├▓╬╩²┐╔╥╘╩╟╥╗
  12509. ╕÷╬─╫╓┤«, ╥▓┐╔╥╘╩╟└¿║┼└¿╞≡╡─╫╓╖√▒φ┤∩╩╜ú¼╚▒╩í╡─
  12510. └⌐╒╣├√╬¬. MEMíú
  12511. [ADDITIVE]     ╜½. MEM ╬─╝■╡──┌╚▌╗╓╕┤╡╜─┌┤µ╢°▓╗╙░╧∞╥╤╘┌─┌┤µ╡─╞Σ
  12512. ╦√▒Σ┴┐íú╖±╘≥, ╘┌─┌┤µ╓╨╗╓╕┤. MEM ╬─╝■╓«╟░, ╡▒╟░╙├PUBLIC ║═PRIVATE ╦╡├≈╡─╦∙╙╨
  12513. ▒Σ┴┐╢╝╜½▒╗╟σ│², │²╖╟╒Γ╕÷▒Σ┴┐╩╟▓╗┐╔╝√╡─, ╖±╘≥╚╬║╬
  12514. ═¼├√▒Σ┴┐╢╝╜½▒╗╕▓╕╟íú
  12515. ╦╡├≈:     ╗╓╕┤│÷╡─╒Γ╨⌐▒Σ┴┐╫≈╙├╖╢╬º▒╗╢¬╩º, ╦ⁿ├╟╙╔╖ó│÷
  12516. restore ├ⁿ┴ε╡─╣²│╠╓╪╨┬╜¿┴ó, ╞Σ╫≈╙├╖╢╬º╙╔╜¿┴ó╦ⁿ├╟╡─╣²
  12517. │╠╡──┌═Γ▓π┤╬╛÷╢¿íú
  12518.     ╕├├ⁿ┴ε▓╗╙░╧∞LOCAL ╨═║═STATIC ╨═▒Σ┴┐╡─╓╡, │²╖╟╩╟╙├memvar ╙∩╛Σ╦╡├≈
  12519. ╡─▒≡├√íú
  12520. └²╫╙:     restore from varis // ─┌┤µ╓╨╓╗╙╨╬─╝■╓╨╡─╗ε╢»▒Σ┴┐
  12521.     restore from rel ADDITIVE
  12522.     /* ─┌┤µ╓╨╓╗╙╨╬─╝■rel ╓╨╡─╗ε╢»▒Σ┴┐╝░╔╧┤╬│⌡╩╝╡─▒Σ
  12523. ┴┐*/
  12524.  
  12525. ▓╬╝√: @3605[save]
  12526.  
  12527. .3014
  12528. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12529. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  12530.  
  12531. restore screen
  12532. ╙∩╖¿: restore screen [from <idVar>]
  12533. ╙├═╛: ╙├╙┌╗╓╕┤save screen ├ⁿ┴ε▒ú┤µ╡─╞┴─╗ú¿╙├╙┌╬─▒╛ú⌐    
  12534. ▓╬╩²: 
  12535.     <idVar>    ┤µ╓ⁿ╞┴─╗╡─▒Σ┴┐├√
  12536. ╦╡├≈:  ╚τ╣√╙├save screen ├ⁿ┴ε╜½╞┴─╗┤µ╚δ╥╗╗║│σ╟°╓╨, ╘≥▓╗╙├╓╕╢¿
  12537. ─┌┤µ▒Σ┴┐, ╒Γ╩▒▓╗┤°▓╬╩²╡─restore screen ├ⁿ┴ε╗╓╕┤╞┴─╗╤╒╔½┐╔╫≈
  12538. ╬¬▒Σ┴┐╡─╥╗▓┐╖▌╜°╨╨┤µ╓ⁿ, ╚τ╣√├╗╙╨╩╣╙├set color ├ⁿ┴ε, ╘≥░┤╘¡└┤╡─
  12539. ╤╒╔½╗╓╕┤íú
  12540. └²╫╙: 
  12541. restore screen // ┤µ╓ⁿ╞┴─╗╩▒├╗╙╨╜½─┌╚▌╖┼╡╜▒Σ┴┐╓╨
  12542. restore screen from memvr// ┤╙▒Σ┴┐memvr ╓╨╗╓╕┤╞┴─╗
  12543.  
  12544. ▓╬╝√: @3604[restore], @1740 [restscreen]()
  12545.  
  12546. .3505
  12547. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12548. @35[╡═╝╢╬─╝■├ⁿ┴ε]
  12549.  
  12550. run
  12551. ╙∩╖¿: run <cCmd>
  12552. ╙├═╛:     ╙├╙┌╫░╘╪╥╗╕÷DOS ├ⁿ┴ε┤ª└φ╞≈, ▓ó╘┌WINBASE ╙ª╙├│╠╨≥╓╨╓┤╨╨
  12553. ╥╗╕÷DOS ├ⁿ┴ε╗≥╘╦╨╨═Γ▓┐╬─╝■íú
  12554. ▓╬╩²: <cCmd> ╥¬╘╦╨╨╡─DOS ├ⁿ┴ε
  12555. ╦╡├≈:     ┐╔═¿╣²╘┌DOS ╠ß╩╛╖√╧┬╝ⁿ╚δEXIT ├ⁿ┴ε└┤╖╡╗╪╡╜WINBASE ╙ª╙├│╠
  12556. ╨≥╓╨íú╘┌═°┬τ╗╖╛│╓╨╙ª▒ú╓ñ╘┌DOS ╗╖╛│▒Σ┴┐COMSPEC ╦∙╓╕╧≥╡─
  12557. ╡╪╖╜, ╙├╗º╡─╙ª╙├│╠╨≥┐╔╥╘╒╥╡╜COMMEND. COMíú
  12558. └²╫╙: run mem/c|more // ╘╦╨╨mem/c|more ├ⁿ┴ε
  12559.  
  12560. .3605
  12561. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12562. @36[─┌┤µ▒Σ┴┐├ⁿ┴ε]
  12563.  
  12564. save
  12565. ╙∩╖¿: save to <idMemfile> [ALL [like|except <skeleton>]]
  12566. ╙├═╛: ╜½╓╕╢¿╡──┌┤µ▒Σ┴┐╨┤╚δ╥╗╕÷╬─╝■╓╨
  12567. ▓╬╩²: 
  12568. <idMemfile>     ╙├╗º╥¬┤µ╖┼─┌┤µ▒Σ┴┐╡─╬─╝■├√│╞, ╕├▓╬╩²┐╔╥╘╩╟╥╗
  12569. ╕÷╬─╫╓┤«, ╥▓┐╔╥╘╩╟└¿║┼└¿╞≡╡─╫╓╖√▒φ┤∩╩╜, ALL ╩╟╕├├ⁿ┴ε
  12570. ╡─╚▒╩í╖╢╬ºíú
  12571. like|except     ╧▐╢¿╖√, ╦ⁿ╓╕╢¿╥¬├┤░ⁿ║¼║══¿┼Σ╖√─ú╩╜╧α╞Ñ┼Σ╡─▒Σ
  12572. ┴┐, ╥¬├┤▓╗░ⁿ║¼║══¿┼Σ╖√─ú╩╜╧α╞Ñ┼Σ╡─▒Σ┴┐íú
  12573. <skeleton>     ═¿┼Σ╖√─ú╩╜
  12574. ╦╡├≈:     ╩²╫Θ╝░LOCAL ╨═║═STATIC ╨═▒Σ┴┐▓╗─▄┤µ╚δ. MEM ╬─╝■, ▒Σ┴┐▒╗┤µ╓ⁿ╩▒▓╗
  12575. ┐╝┬╟╦ⁿ├╟╡─╫≈╙├╖╢╬ºíú
  12576. └²╫╙: 
  12577. st1: =st2: =ss1: =ss2: =ss3: =easy: =hard: =try: ="yes"
  12578. save to mys all like s*
  12579. clear memory
  12580. restore from mys
  12581. ? st1 // ╖╡╗╪"yes"
  12582. st1: =st2: =ss1: =ss2: =ss3: =easy: =hard: =try: ="yes"
  12583. save to mys all except s*
  12584. clear memory
  12585. restore from mys
  12586. ? type (st1) // ╖╡╗╪U (UNDEFINED)
  12587. ? easy // ╖╡╗╪"yes"
  12588.  
  12589. ▓╬╝√: @3604[restore], @3014[restore screen], @3015[save screen]
  12590.  
  12591. .3015
  12592. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12593. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  12594.  
  12595. save screen
  12596. ╙∩╖¿: save screen [to <idVar>]
  12597. ╙├═╛: ╙├╙┌╜½╧╘╩╛╞┴─╗╡──┌╚▌┤µ╚δ╥╗─┌┤µ▒Σ┴┐╗≥╥╗
  12598. ╗║│σ╟°╓╨íúú¿╙├╙┌╬─▒╛ú⌐
  12599. ▓╬╩²: 
  12600.     <idVar>    ╙├└┤┤µ╖┼╞┴─╗─┌╚▌╡─▒Σ┴┐╗≥╩²╫Θ╘¬╦╪╡─├√│╞íú
  12601. ╦╡├≈:     ╙├╕├├ⁿ┴ε╔·│╔╡─▒Σ┴┐║¼╙╨╤╒╔½╩⌠╨╘╝░╫╓╖√╨═
  12602. ─┌╚▌, restore screen ░┤╘¡└┤╡─╤╒╔½╗╓╕┤╞┴─╗. ╚τ╣√╘┌save screen ├ⁿ┴ε║═restore screen ├ⁿ┴ε╓«╝Σ
  12603. ╩╣╙├┴╦SET COLOR ├ⁿ┴ε, ╘≥▒╪╨δ╙├╞Σ╦√╖╜╩╜╓╪╗¡╞┴─╗╗≥╜╙╩▄╘¡
  12604. └┤╡─╤╒╔½íú
  12605. └²╫╙: save screen to oldscr
  12606. ... // ─▄╕─▒Σ╞┴─╗╡─╚╬╥Γ┤·┬δ
  12607. restore screen from oldscr
  12608.  
  12609. ▓╬╝√: @3014[restore screen], @3605[save], @1743 [savescreen](), @1740 [restscreen]()
  12610.  
  12611. .3134
  12612. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12613. @31[╩²╛▌┐Γ├ⁿ┴ε]
  12614.  
  12615. seek
  12616. ╙∩╖¿: seek <exp>
  12617. ╙├═╛: ╥└╛▌╓≈╦≈╥²└┤╢¿╬╗╩²╛▌┐Γ╓╨╡─╝╟┬╝íú
  12618. ▓╬╩²: 
  12619.     <exp>        ╠ß╣⌐╙δ╦≈╥²╝ⁿ╞Ñ┼Σ╡─▒φ┤∩╩╜íú
  12620. ╦╡├≈:     ╙├╗º┐╔╘┌╦╤╦≈┤«╓╨╩╣╙├▓╗═Ω╚½╝ⁿ╓╡íú╦╤╦≈▒φ┤∩╩╜
  12621. ╡─╬▓▓┐┐╒╕±▒╪╨δ▒╗╔╛│²íú╚τ╣√SEEK ├ⁿ┴ε╞Ñ┼Σ│╔╣ª, FOUND() ║»╩²╖╡╗╪.T., EOF() ╖╡
  12622. ╗╪.F. ╓╡íú╚τ╣√SEEK ├ⁿ┴ε├╗╙╨╒╥╡╜╞Ñ┼Σ│╔╣ª╡─╝╟┬╝, ╘≥╜½╓╕╒δ╢¿╬╗
  12623. ╡╜╬─╝■─⌐╬▓(EOF() =.T.), ▓ó╟╥found() ║»╩²╖╡╗╪.F.íú╚τ╣√╩╣╙├┴╦SET SOFTSEEK ON ├ⁿ┴ε, ╘≥╜°╨╨▓╗╛½
  12624. ╚╖╞Ñ┼Σíú╝╟┬╝╓╕╒δ▒╗╢¿╬╗╡╜╡┌╥╗┤╬╒╥╡╜ú¼▓ó╟╥┬·╫π
  12625. ╕├╝╟┬╝╡─╦≈╥²╝ⁿ╓╡┤≤╙┌╦≈╥²╓╡íúEOF(), FOUND() ╢╝    ╖╡╗╪.F. ╓╡íú
  12626. └²╫╙: use my index name
  12627.     seek "liping"
  12628.     if eof(). and. (! found()) // ╚τ┬·╫π╠⌡╝■╡─╝╟┬╝┤µ╘┌
  12629.         ? recno() // ╩Σ│÷╝╟┬╝║┼
  12630.     endif
  12631.  
  12632. ▓╬╝√: @3116[find], @2427 [dbseek](), @2431 [dbsetindex](), @3136[set deleted], @3142[set softseek], @3122[locate]
  12633.  
  12634. .3135
  12635. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12636. @31[╩²╛▌┐Γ├ⁿ┴ε]
  12637.  
  12638. select
  12639. ╙∩╖¿: select <xnWorkArea>|<idAlias>
  12640. ╙├═╛: ╤í╘±╗ε╢»╣ñ╫≈╟°íú
  12641. ▓╬╩²: 
  12642. <xnWorkArea>    ╦∙╤í╗ε╢»╣ñ╫≈╟°╟°║┼(0-250)íú╕├▓╬╩²┐╔▒φ╩╛│╔╥╗╕÷╬─
  12643. ╫╓┤«╗≥└¿║┼╓╨╡─╩²╫╓▒φ┤∩╩╜íú
  12644. <idAlias>    ╗ε╢»╣ñ╫≈╟°╡─├√│╞íú╫╓─╕A-J ▒φ╩╛═╖10 ╕÷╣ñ╫≈╟°íú<idAlias>     ┐╔╙├└┤╓╕
  12645. ╩╛╚╬║╬╥╗╕÷┤≥┐¬╡─╩²╛▌┐Γ╬─╝■╡─├√│╞íú
  12646. ╦╡├≈:     ├┐╕÷╥¬┤≥┐¬╡─╩²╛▌┐Γ▒╪╨δ╫ñ┴⌠╘┌╦ⁿ├╟╕≈╫╘╡─
  12647. ╣ñ╫≈╟°╓╨íú├┐╕÷╣ñ╫≈╟°╙╨╫╘╝║╡─╗╖╛│╔Φ╓├╥╘┐╪╓╞╢╘
  12648. ╕├╣ñ╫≈╟°╓╨╝╟┬╝╡─┤ª└φ, ╧┬├µ╩╟╣ñ╫≈╗╖╛│:
  12649. {SYMBOL 183 \f "Symbol" \s 10 \h}    ╚╬║╬FILTER ╠⌡╝■
  12650. {SYMBOL 183 \f "Symbol" \s 10 \h}    ╚╬║╬╗ε╢»╡─LOCATE ├ⁿ┴ε
  12651. {SYMBOL 183 \f "Symbol" \s 10 \h}    ╚╬║╬▒╗╔Φ╓├╡─RELATION
  12652. {SYMBOL 183 \f "Symbol" \s 10 \h}    DELETED ╫┤╠¼
  12653.     SELECT 0 ├ⁿ┴ε╤í╘±╧┬╥╗╕÷├╗╙╨╩╣╙├╡─╣ñ╫≈╟°íú
  12654. └²╫╙: use my
  12655.     select 2 // ╤í╘±2 ║┼╣ñ╫≈╟°▓ó╘┌╕├╟°┤≥┐¬╬─╝■he
  12656.     use he
  12657.     
  12658. ▓╬╝√: dbselect(), @2428 [dbselectar](), @3139[set index], @2478 [select](), ailas()
  12659.  
  12660. .3016
  12661. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12662. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  12663.  
  12664. set alternate
  12665. ╙∩╖¿: set alternate to [<xcFile>]╗≥set alternate ON|OFF|<xlToggle>
  12666. ╙├═╛:     ╓╕╢¿╥╗╕÷ASCII ╬─▒╛╬─╝■┤µ╖┼set alternate on ╫≈╙├╞┌╝Σ╙├╗º╖ó│÷╡─
  12667. ╦∙╙╨├ⁿ┴ε╡─╩Σ│÷(▓╗░ⁿ└¿ú└... say... get ├ⁿ┴ε)
  12668. ▓╬╩²:     
  12669.     <xcFile>     ┤µ╖┼╩Σ│÷╡─╬─╝■├√│╞
  12670.     <xlToggle>     ╥╗╕÷▒φ┤∩╩╜, ╦ⁿ╖╡╗╪╥╗╕÷┬▀╝¡╓╡(.T., ╗≥.F.)
  12671. ╦╡├≈: ▓╗┤°▓╬╩²╡─set alternate to ├ⁿ┴ε╜½╣╪▒╒╡▒╟░╡─alternate ╬─╝■íú
  12672. └²╫╙: set alternate to disp
  12673.     use my index name
  12674.     set alternate on
  12675.     display all name, no, age
  12676.     set alternate off
  12677.     type disp. txt to print
  12678.     close alternate
  12679.     
  12680.     ▓╬╝√: @3105[close], @3028[set printer to], set()
  12681.  
  12682. .3704
  12683. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12684. @37[╧╡═│├ⁿ┴ε]
  12685.  
  12686. set bell
  12687. ╙∩╖¿: set bell ON|OFF|<xlToggle>
  12688. ╙├═╛: ╙├╙┌┐╪╓╞┤≥┐¬╗≥╣╪▒╒╝╞╦π╗·╤∩╔∙╞≈╖ó│÷╡─├∙
  12689. ╜╨
  12690. ▓╬╩²:  
  12691. <xlToggle>     ╠ß╣⌐╥╗╕÷┬▀╝¡▒φ┤∩╩╜└┤┐╪╓╞╠⌡╝■, ▒φ┤∩╩╜▒╪╨δ╙├└¿
  12692. ║┼└¿╞≡ú¼╚▒╩í╠⌡╝■╬¬╣╪▒╒╫┤╠¼íú
  12693. ╦╡├≈:     ╩╣╙├?? chr (7) ╗≥tone() ║»╩²┐╔╥╘▓╗╣▄set bell ╡─╔Φ╓├, ╙├╧∞┴σ╫÷╬¬╫╘╝║╙ª╙├
  12694. │╠╨≥╓╨│÷╧╓┤φ╬≤▓╢╗±╡─╖┤╙ªíú
  12695. └²╫╙: set bell on
  12696. temp: = " "
  12697. ú└10, 10 say "input your name: " get name
  12698. read // ╡▒▓┘╫≈╒▀░┤╧┬╥╗╝ⁿ╩▒╝╞╦π╗·╜½╧∞┴σ
  12699.  
  12700. ▓╬╝√: @1762 [tone](), set(), @2205 [chr]()
  12701.  
  12702. .3301
  12703. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12704. @33[╚╒╞┌╔Φ╓├├ⁿ┴ε]
  12705.  
  12706. set century
  12707. ╙∩╖¿: set century ON|OFF|<xlToggle>
  12708. ╙├═╛:     ╙├╙┌┐╪╓╞╩╟╤í╙├4 ╬╗╩²╫╓╕±╩╜╡─╩└╝═▒φ╩╛╖╜╩╜
  12709. ╗╣╩╟┴╜╬╗╩²╫╓╕±╩╜╡─▒φ╩╛╖╜╩╜└┤╧╘╩╛║═╩Σ╚δ╩²
  12710. ╛▌íú
  12711. ▓╬╩²: 
  12712. <xlToggle>     ╠ß╣⌐╥╗╕÷┬▀╝¡▒φ┤∩╩╜└┤┐╪╓╞╠⌡╝■, ▒φ┤∩╩╜▒╪╨δ╙├└¿
  12713. ║┼└¿╞≡íú
  12714. ╦╡├≈:     ╚▒╩í▓╬╩²╩╟OFF (┴╜╬╗╩²╫╓╕±╩╜)
  12715.     ┴╜╬╗╩²╫╓╕±╩╜╡─╩Σ╚δ╚╒╞┌╥■║¼▒φ╩╛20 ╩└╝═íú
  12716. └²╫╙: set century on
  12717.     ? dtoc (date()) // ╖╡╗╪1994 ─Ω6 ╘┬17 ╚╒
  12718.     
  12719. ▓╬╝√: 336(), @3302[set date], @3303[set epoch], @1932 [year]()
  12720.  
  12721. .3017
  12722. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12723. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  12724.  
  12725. set color to
  12726. ╙∩╖¿: set color to [<standard> [, <enhanced>] [, <border>];
  12727.      [<unselected>]] |<cString>
  12728. ╙├═╛:     ╙├╙┌╓╕╢¿╥╗╕÷╨┬╡─╡▒╟░╤╒╔½╔Φ╓├, ╕├╤╒╔½╜½╘┌╧┬
  12729. ┤╬╞┴─╗╦ó╨┬╓╨╩╣╙├íú
  12730. ▓╬╩²:
  12731. <standard>     ╙╔╟░╛░╔½║═▒│╛░╔½╫Θ│╔╡─╤╒╔½╢╘
  12732. <enhanced>     ╕├▓╬╩²╬¬ú└... say... get ├ⁿ┴ε╓╨╡─GET ╫╙╛Σ╓╕╢¿╤╒╔½╢╘
  12733. <border>    ╞┴─╗▒▀┐≥╤╒╔½íú
  12734. <unselected>     ╕├▓╬╩²╬¬│²GET ═Γ╡─╞Σ╦ⁿ▓┐╖▌╓╕╢¿╧╘╩╛╤╒╔½╢╘, ╚τ╣√╓╕
  12735. ╢¿┴╦╥╗╕÷╖╟╤í╚í╡─╤╒╔½╢╘, ╘≥╗ß░╤│²╡▒╟░GET ═Γ╡─╞Σ╦ⁿ
  12736. ▓┐╖▌╧╘╩╛│╔┴φ═Γ╡─╤╒╔½└┤╝╙┴┴╣Γ▒Ω╦∙╘┌╡─╡▒╟░
  12737. GET íú
  12738. <cString>     ╙├╫≈╠µ╗╗SET COLOR ▓╬╩²╡─╫╓╖√▒φ┤∩╩╜, ▒φ┤∩╩╜┐╔╙├╢║║┼╫≈╖╓
  12739. ╜τ╖√▓ó╟╥▒╪╨δ╙├└¿║┼└¿╞≡íú
  12740. └²╫╙: set color to R/G, GR+/N // ╔Φ╓├║∞╡╫┬╠╫╓, GET ╖╜┐≥╜½╬¬║┌╡╫╗╞╫╓
  12741.  
  12742. ▓╬╝√: @1749 [setcolor]() ║»╩², @1725 [iscolor]()
  12743.  
  12744. .3018
  12745. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12746. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  12747.  
  12748. set confirm
  12749. ╙∩╖¿: set confirm ON|OFF|<xlToggle>
  12750. ╙├═╛: ╙├╙┌╘╩╨φ╗≥╜√╓╣╘┌╫╓╢╬╥╤▒╗╠ε│Σ╩Σ╚δ╫╓╖√╩▒
  12751. ╣Γ▒Ω╥╞╡╜╧┬╥╗╕÷GET ▒Σ┴┐íú
  12752. ▓╬╩²: 
  12753. <xlToggle>    ╠ß╣⌐╥╗╕÷┬▀╝¡▒φ┤∩╩╜└┤┐╪╓╞╠⌡╝■, ▒φ┤∩╩╜▒╪╨δ╙├└¿
  12754. ║┼└¿╞≡íú
  12755. ╦╡├≈: ╚▒╩í▓╬╩²╩╟OFF (╜√╓╣╫┤╠¼)
  12756. └²╫╙:
  12757. /* ╧┬└²╘┌╫╓╢╬╥╤▒╗╠ε│Σ╩Σ╚δ╫╓╖√╩▒, ╨Φ╥¬░┤╗╪│╡╗≥╣Γ
  12758. ▒Ω╝ⁿ╚╖╢¿║≤, ╣Γ▒Ω▓┼╥╞╡╜╧┬╥╗╕÷GET*/
  12759.     num=0
  12760.     set confirm on
  12761.     ú└ 10, 10 say " ╩Σ╚δ╛½╚╖╓╡: " get num
  12762.     read
  12763.     
  12764. ▓╬╝√: set(), @3005[ú└... say... get], @3013[read]
  12765.  
  12766. .3019
  12767. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12768. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  12769.  
  12770. set console
  12771. ╙∩╖¿: set console ON|OFF|<xlToggle>
  12772. ╙├═╛: ╙├└┤┤≥┐¬╗≥╣╪▒╒├ⁿ┴ε╡─╞┴─╗╩Σ│÷íú
  12773. ▓╬╩²: 
  12774. <xlToggle>    ╠ß╣⌐╥╗╕÷┬▀╝¡▒φ┤∩╩╜└┤┐╪╓╞╠⌡╝■, ▒φ┤∩╩╜▒╪╨δ╙├└¿
  12775. ║┼└¿╞≡íú
  12776. ╦╡├≈: ╚▒╩í▓╬╩²╩╟ON (┤≥┐¬╫┤╠¼)íúset console ├ⁿ┴ε╢╘┤≤╢α╩²ú└ ├ⁿ┴ε▓╗╞≡
  12777. ╫≈╙├, ╡½ACCEPT, INPUT, WAIT    ├ⁿ┴ε╩▄set console ├ⁿ┴ε┐╪╓╞, ▓ó╟╥╙δ╒Γ╨⌐├ⁿ┴ε╧α╣╪╡─╠ß╩╛
  12778. ╥▓╥╗═¼▒╗╜√╓╣╧╘╩╛íú
  12779. └²╫╙:    // ╧┬└²│╠╨≥╘╦╨╨10 ├δ║≤▓┼╙╨╞┴─╗╩Σ│÷
  12780.     use my
  12781.     cls
  12782.     set console off // ╣╪▒╒├ⁿ┴ε╡─╞┴─╗╩Σ│÷
  12783.     ? " ┤≥╙í├√╡Ñ... "
  12784.     delay (10)
  12785.     set console on
  12786.     ? " ┤≥╙í├√╡Ñ... "
  12787.     
  12788. ▓╬╝√: @3022[set device], set()    
  12789.  
  12790. .3020
  12791. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12792. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  12793.  
  12794. set cursor
  12795. ╙∩╖¿: set cursor ON|OFF|<xlToggle>
  12796. ╙├═╛: ╙├└┤╧╘╩╛╗≥╥■▓╪╣Γ▒Ω
  12797. ▓╬╩²: 
  12798. <xlToggle>     ╠ß╣⌐╥╗╕÷┬▀╝¡▒φ┤∩╩╜└┤┐╪╓╞╠⌡╝■, ▒φ┤∩╩╜▒╪╨δ╙├└¿
  12799. ║┼└¿╞≡ú¼╚▒╩í╠⌡╝■╬¬╧╘╩╛╫┤╠¼.
  12800. ╦╡├≈: ╥■▓╪╣Γ▒Ω▓ó▓╗╙░╧∞╩Σ╚δ
  12801. └²╫╙: num: =0
  12802. set cursor off
  12803. ú└ 10, 10 say "Enter num: " get num
  12804. read // ╞┴─╗╔╧├╗╙╨╣Γ▒Ω
  12805.  
  12806. ▓╬╝√: set(), setcursor()
  12807.  
  12808. .3302
  12809. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12810. @33[╚╒╞┌╔Φ╓├├ⁿ┴ε]
  12811.  
  12812. set date
  12813. ╙∩╖¿: set date <style> ╗≥set date format to <cDate Form>
  12814. ╙├═╛: ╙├╙┌╕─▒Σ╚╒╞┌╕±╩╜íú
  12815. ▓╬╩²: 
  12816.     <style>        ╚╒╞┌╕±╩╜, ╚τ╧┬
  12817. ╦╡├≈: ╧┬├µ╕°│÷╦∙╙╨╡─╚╒╞┌╕±╩╜╝░╩╣╙├╒Γ╓╓╚╒╞┌╕±
  12818. ╩╜╡─╣·╝╥íú
  12819.     style         ╕±╩╜
  12820.     American     MM/DD/YY ╚▒╩í╕±╩╜
  12821.     ANSI         YY. MM. DD
  12822.     British         DD/MM/YY
  12823.     French         DD/MM/YY
  12824.     German     DD. MM. YY
  12825.     Italian         DD-MM-YY
  12826.     Japan         YY/MM/DD
  12827.     USA         MM-DD-YY
  12828.  
  12829. └²╫╙:    set date ANSI
  12830.     ? date() // ╖╡╗╪94. 6. 17
  12831.     set date format to "YY─ΩMM╘┬DD╚╒"
  12832.     ? date() // ╖╡╗╪94─Ω6╘┬17╚╒
  12833.     
  12834. ▓╬╝√: set(), @3301[set century], @1908 [date]()
  12835.  
  12836. .3201
  12837. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12838. @32[╩²╤º╔Φ╓├├ⁿ┴ε]
  12839.  
  12840. set decimals
  12841. ╙∩╖¿: set decimals to [<nDec>]
  12842. ╙├═╛: ╙├╙┌╬¬╙ª╙├│╠╨≥╓╨╡─╩²╫╓╝╞╦π╜ß╣√╜¿┴ó╥╗╕÷
  12843. ╚▒╩í╡─╨í╩²╛½╢╚íúú¿╓╗╙├╙┌╧╘╩╛ú⌐
  12844. ▓╬╩²: 
  12845.     <nDec>    ╨í╩²╬╗╩²
  12846. ╦╡├≈: ▓╗┤°▓╬╩²╡─set decimals to ├ⁿ┴ε╥■║¼╜½╨í╩²╬╗╩²╔Φ╓├╬¬0íúWINBASE ╡─╚▒
  12847. ╩í╨í╩²╛½╢╚╬¬┴╜╬╗íú│²╖╟╩╣╙├┴╦set fixed on ├ⁿ┴ε, ╖±╘≥═¿│ú╜÷╙╨SQRT(), LOG(), EXP(), ├▌
  12848. ║═│²╖¿╩▄set decimals ╙░╧∞íúset fixed on ├ⁿ┴ε╢╘╦∙╙╨╝╞╦π╟┐╓╞╣µ╢¿╧╘╩╛╨í╩²
  12849. ╛½╢╚(╢°▓╗╩╟╩╡╝╩╨í╩²╛½╢╚)íú
  12850. └²╫╙:? 2. 12*3. 12 // ╖╡╗╪6. 6144
  12851.     set decimals to 3
  12852.     ? 2. 12*3. 12 // ╖╡╗╪6. 6144
  12853.     set fixed on
  12854.     ? 2. 12*3. 12 // ╖╡╗╪6. 614
  12855.     
  12856. ▓╬╝√: @3203[set fixed], set()
  12857.  
  12858. .3506
  12859. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12860. @35[╡═╝╢╬─╝■├ⁿ┴ε]
  12861.  
  12862. set default to
  12863. ╙∩╖¿: set default to [<xcPathSpec>]
  12864. ╙├═╛:     ╙├╙┌╬¬WINBASE ╙ª╙├│╠╨≥╓╨╡─╢┴╨┤╬─╝■▓┘╫≈╓╕╢¿╥╗╕÷
  12865. ╚▒╩í╡─╟²╢»╞≈íú
  12866. ▓╬╩²: 
  12867. <xcPathSpec>    ╚╬║╬╥╗╕÷║╧╖¿╡─DOS ┬╖╛╢├√, ┬╖╛╢╓╨▒╪╨δ╓╕╢¿╟²╢»╞≈íú
  12868. ╦╡├≈:    set default ├ⁿ┴ε╙├└┤═¿╓¬WINBASE, ╫ε╧╚╙ª╕├╚Ñ──└∩╤░╒╥┐Γ╬─╝■íó ╦≈
  12869. ╥²╬─╝■╡╚╩╣╙├╬─╝■íú
  12870. └²╫╙: set default to c: \my // ╓╕╢¿╥╗╕÷╚▒╩í╡─╟²╢»╞≈╬¬c: \my
  12871.  
  12872. ▓╬╝√: set(), @3507[set path] 
  12873.  
  12874. .3136
  12875. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12876. @31[╩²╛▌┐Γ├ⁿ┴ε]
  12877.  
  12878. set deleted
  12879. ╙∩╖¿: set deleted ON|OFF|<xlToggle>
  12880. ╙├═╛: ╩╣┤≤▓┐╖▌WINBASE ├ⁿ┴ε║÷┬╘▒╗┬▀╝¡╔╛│²╡─╝╟┬╝íú
  12881. ▓╬╩²: 
  12882. <xlToggle>     ╠ß╣⌐╥╗╕÷┬▀╝¡▒φ┤∩╩╜└┤┐╪╓╞╠⌡╝■, ╕├▒φ┤∩╩╜▒╪╨δ╙├
  12883. └¿║┼└¿╞≡íú
  12884. ╦╡├≈:     ╚▒╩í╠⌡╝■╩╟▓╗║÷┬╘▒╗┬▀╝¡╔╛│²╡─╝╟┬╝íú
  12885.     set deleted on ├ⁿ┴ε╢╘INDEX ├ⁿ┴ε╬▐╨ºíú
  12886. └²╫╙:
  12887. use litt //numfield ╬¬╬─╝■litt ╓╨▒Ω╝╟╝╟┬╝╨≥║┼╡─╫╓╢╬
  12888. ? numfield // ╖╡╗╪1
  12889. skip 5
  12890. delete
  12891. go top
  12892. ? numfield // ╖╡╗╪5
  12893. set deleted on
  12894. skip 5
  12895. ? numfield // ╖╡╗╪6
  12896.  
  12897. ▓╬╝√: @3114[delete], @2416 [dbdelete](), set(), @2439 [deleted]()
  12898.  
  12899. .3021
  12900. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12901. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  12902.  
  12903. set delimiters
  12904. ╙∩╖¿: set delimiters ON|OFF|<xlToggle> ╗≥╒▀set delimiters to [<cstring>|DEFAULT]
  12905. ╙├═╛:     ╙├╙┌╘╩╨φ╗≥╜√╓╣╩╣╙├╢¿╜τ╫╓╖√└┤╧▐╢¿GET ╖╜┐≥╡─
  12906. ▒▀╜τ▓ó╟╥╓╕╢¿╥╗╕÷╢¿╜τ╫╓╖√íú
  12907. ▓╬╩²:     
  12908. <xlToggle>     ╠ß╣⌐╥╗╕÷┬▀╝¡▒φ┤∩╩╜└┤┐╪╓╞╠⌡╝■, ▒φ┤∩╩╜▒╪╨δ╙├└¿
  12909. ║┼└¿╞≡íú
  12910. <cstring>     ╥╗╕÷╫╓╖√╗≥┴╜╕÷╫╓╖√╡─▒φ┤∩╩╜, ╚τ╣√╜÷╓╕╢¿╥╗╕÷╫╓
  12911. ╖√, WINBASE ╜½╙├╦ⁿ└┤╢¿╜τGET ╡─┐¬╩╝║═╜ß╬▓, ╚τ╣√╓╕╢¿┴╜╕÷╫╓╖√, ╘≥╡┌
  12912. ╥╗╕÷╫╓╖√╙├└┤╢¿╜τGET ╡─┐¬╩╝, ┴φ╥╗╕÷╙├└┤╢¿╜τGET ╡─╜ß╬▓íú
  12913. DEFAULT     ╥╗╕÷╚╬╤í╧ε, ╕├╚╬╤í╧ε╖╡╗╪╥╗╕÷╚▒╩í╡─╢¿╜τ╖√":"íú╚τ
  12914. ╣√╩╣╙├set delimiters to ├ⁿ┴ε╩▒├╗╙╨╓╕╢¿╚╬║╬╢¿╜τ╖√, ╘≥WINBASE ╜½╖╡╗╪╒Γ╥╗
  12915. ╕÷╚▒╩í╡─╢¿╜τ╖√":"íú
  12916. ╦╡├≈:    │²╖╟╩╣╙├SET INTENSITY OFF ├ⁿ┴ε, ╖±╘≥GET ╜½╝╠╨°╙├╝╙┴┴╤╒╔½╧╘╩╛íú╙├╗º┐╔
  12917. ╥╘╘┌╚╬║╬╩▒║≥╕─▒Σ╢¿╜τ╖√, ╔⌡╓┴╘┌ú└... say... get ╙∩╛Σ╓«╝Σíú╚τ╣√╩╣╙├
  12918. ┴╦set delimiters on ├ⁿ┴ε, ╘≥├┐╕÷GET ╜½╝╙│ñ┴╜╕÷╫╓╖√▓ó╟╥╧≥╫╓╢╬╞½╥╞╥╗
  12919. ╕÷╫╓╖√íú
  12920. └²╫╙: this: =that: =space (6)
  12921.     SET INTENSITY OFF
  12922.     set delimiters on
  12923.     ú└ 10, 10 say " ╝ⁿ╚δ╒Γ╢∙: " get this // ╞┴─╗╜½╧╘╩╛╝ⁿ╚δ╒Γ╢∙:::
  12924.     set delimiters to "< >"
  12925.     ú└ 12, 10 say " ╝ⁿ╚δ╒Γ╢∙: " get that // ╞┴─╗╜½╧╘╩╛╝ⁿ╚δ╒Γ╢∙: < >
  12926.     read
  12927.     
  12928. ▓╬╝√: @3017[set color], set(), ¬└... say... get, @3025[set intensity]
  12929.  
  12930. .3022
  12931. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12932. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  12933.  
  12934. set device to
  12935. ╙∩╖¿: set device to <screen|printer>
  12936. ╙├═╛: ╙├╙┌╓╕├≈ú└... SAY ├ⁿ┴ε╩Σ│÷╡──┐╡─╡╪íú
  12937. ▓╬╩²:     
  12938. screen        ╚▒╩í╔Φ▒╕,╩╣╦∙╙╨ú└... SAY ├ⁿ┴ε╡─╜ß╣√╢╝▒╗╢¿╧≥╡╜╞┴─╗
  12939. printer        ╩╣╦∙╙╨ú└... SAY ├ⁿ┴ε╡─╜ß╣√╢╝▒╗╢¿╧≥╡╜┤≥╙í╗·
  12940.  
  12941. ╦╡├≈:     set device ├ⁿ┴ε║═set printer on├ⁿ┴ε╡─╗∙▒╛╟°▒≡╩╟:
  12942.     set device to printer ├ⁿ┴ε╜÷╜÷╓╗░╤ú└... SAY ├ⁿ┴ε╡─╜ß╣√╦═╡╜┤≥╙í╗·íú
  12943. └²╫╙: 
  12944. set device to printer
  12945. ? "WinBase for printer" // ╜½╘┌┤≥╙í╗·╔╧╩Σ│÷WinBase for printer
  12946. set device to screen
  12947. ? "WinBase for screen" // ╜½╘┌╞┴─╗╔╧╩Σ│÷WinBase for screen
  12948.     
  12949. ▓╬╝√: set(), set print, @3028[set printer to], @1754 [setprc]()
  12950.     
  12951. .3303
  12952. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12953. @33[╚╒╞┌╔Φ╓├├ⁿ┴ε]
  12954.  
  12955. set epoch to
  12956. ╙∩╖¿: set epoch to <nYear>
  12957. ╙├═╛:    ╙├╙┌┐╪╓╞WINBASE ╙ª╙├│╠╨≥╚τ║╬╜Γ╩═┴╜╬╗╩²╫╓╕±╩╜╡─
  12958. ─Ω┤·╝≥┬╘▒φ╩╛íú
  12959. ▓╬╩²:     
  12960.     <nYear>    ╩²╫╓╨═, ▒φ╩╛─Ω┤·╩²
  12961. ╦╡├≈:     ╚τ╣√─Ω┤·╝≥┬╘▒φ╩╛╓╨╡─┴╜╬╗╩²╫╓▒φ╩╛╡──Ω┤·
  12962. ┤≤╙┌╗≥╡╚╙┌<nYear> ▓╬╩²╡─╓╡, ╘≥╔Φ╢¿╚╒╞┌╥■║¼╓╕╡─╩╟▒╛╩└
  12963. ╝═; ╖±╘≥╜½░╤╚╒╞┌╔Φ╢¿╬¬╧┬╕÷╩└╝═íúset epoch ╡─╚▒╩í╓╡╩╟1900íú
  12964. └²╫╙: set epoch to 1990
  12965.     ? ctod ("12/12/90") // ╖╡╗╪12/12/1990
  12966.     ? ctod ("12/12/93") // ╖╡╗╪12/12/1993
  12967.     ? ctod ("12/12/01") // ╖╡╗╪12/12/2001
  12968.     
  12969. ▓╬╝√: set(), @3301[set century]
  12970.  
  12971. .3023
  12972. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12973. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  12974.  
  12975. set escape
  12976. ╙∩╖¿: set escape ON|OFF|<xlToggle>
  12977. ╙├═╛: ╙├╙┌┤≥┐¬╗≥╣╪▒╒╙├ESC ╝ⁿ╓╒╓╣READ ├ⁿ┴ε╡─╣ª─▄íú
  12978. ▓╬╩²: 
  12979. <xlToggle>     ╠ß╣⌐╥╗╕÷┬▀╝¡▒φ┤∩╩╜└┤┐╪╓╞╠⌡╝■, ▒φ┤∩╩╜▒╪╨δ╙├└¿
  12980. ║┼└¿╞≡íú
  12981.  
  12982. ╦╡├≈: ╚▒╩í▓╬╩²╩╟ON (┤≥┐¬╫┤╠¼)
  12983. └²╫╙: temp: =space (8)
  12984.     set escape off
  12985.     ú└ 10, 10 say "ESC ▓╗╗ß╓╒╓╣╕├READ ├ⁿ┴ε! " get temp
  12986.     read
  12987.     set escape on
  12988.     ú└ 20, 10 say "ESC ╜½╓╒╓╣╕├READ ├ⁿ┴ε! " get temp
  12989.     read
  12990.     
  12991. ▓╬╝√: set(), @3405[set key], @3013[read], ¬└... say... get, @1504 [inkey]()    
  12992.  
  12993. .3202
  12994. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  12995. @32[╩²╤º╔Φ╓├├ⁿ┴ε]
  12996.  
  12997. set exact
  12998. ╙∩╖¿: set exact ON|OFF|<xlToggle>
  12999. ╙├═╛: ╙├╙┌╓╕╢¿▒╚╜╧┴╜╕÷╫╓╖√┤«╡─╖╜╖¿íú
  13000. ▓╬╩²:     
  13001. <xlToggle>    ╠ß╣⌐╥╗╕÷┬▀╝¡▒φ┤∩╩╜└┤┐╪╓╞╠⌡╝■, ╕├▒φ┤∩╩╜▒╪╨δ╙├
  13002. └¿║┼└¿╞≡íú
  13003. ╦╡├≈:     ╚▒╩í╠⌡╝■╬¬OFF ╫┤╠¼íú╓┤╨╨set exact on ├ⁿ┴ε║≤, ╘┌╜°╨╨╫╓╖√┤«▒╚╜╧╩▒, ╓╗
  13004. ╙╨╡▒┴╜╕÷╫╓╖√┤«╛½╚╖╞Ñ┼Σ▓┼─▄╖╡╗╪.T. ╓╡íú╚τ╣√╚▒╩í, ╘≥╩╫╧╚
  13005. ╜½╜ß╣√╔Φ╬¬.T., ╚╗║≤╙├╫≤▒▀╡┌╥╗╕÷╫╓╖√╙δ╫╓╢╬▒▀╡┌╥╗
  13006. ╕÷╫╓╖√▒╚╜╧, ╚τ╧α╡╚, ╘≥╙├═¼╤∙╖╜╖¿▒╚╜╧╡┌╢■╕÷╫╓╖√, ╓▒╡╜
  13007. ╡╚║┼╫╓╢╬▒▀┤«╓╨╡─╦∙╙╨╫╓╖√╢╝╥╤▒╚╜╧╣²╥╗▒Θ╗≥
  13008. ─│┤╬▒╚╜╧╜ß╣√╬¬. F . ╚τ╣√╡╚║┼╫╓╢╬▒▀╡─┤«╬¬┐╒(""), ╘≥▒╚╜╧
  13009. ╜ß╣√╬¬.T.íú
  13010. └²╫╙:     set exact on
  13011.     ? "abc"="abc " // ╖╡╗╪.F.
  13012.     ? " abc"="abv" // ╖╡╗╪.F.
  13013.     ? "abcdef"="abc" // ╖╡╗╪.F.
  13014.     ? "abc"="abcdef" // ╖╡╗╪.F.
  13015.     set exact off
  13016.     ? "abc"="abc " // ╖╡╗╪.F.
  13017.     ? " abc"="abv" // ╖╡╗╪.F.
  13018.     ? "abcdef"="abc" // ╖╡╗╪.T.
  13019.     ? "abc"="abcdef" // ╖╡╗╪.F.
  13020.     
  13021. ▓╬╝√: set(), @3116[find], @3122[locate], @3134[seek]
  13022.  
  13023. .3137
  13024. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13025. @31[╩²╛▌┐Γ├ⁿ┴ε]
  13026.  
  13027. set exclusive
  13028. ╙∩╖¿: set exclusive ON|OFF|<xlToggle>
  13029. ╙├═╛: ╙├╙┌╜√╓╣╗≥╘╩╨φ═°┬τ╓╨╢α╕÷╙├╗º┤≥┐¬═¼╥╗╕÷
  13030. ╩²╛▌┐Γíú
  13031. ▓╬╩²:     
  13032. <xlToggle>    ╠ß╣⌐╥╗╕÷┬▀╝¡▒φ┤∩╩╜└┤┐╪╓╞╠⌡╝■, ╕├▒φ┤∩╩╜▒╪╨δ╙├
  13033. └¿║┼└¿╞≡íú
  13034. ╦╡├≈:     ╚▒╩í╠⌡╝■╬¬╜√╓╣(ON) ╫┤╠¼íúset exclusive ╩╟╥╗╕÷╚½╛╓╩⌠╨╘, ╕─▒Σ╞Σ╔Φ
  13035. ╓├╗ß╙░╧∞╡╜╦∙╙╨┤≥┐¬╡─╬─╝■íú╘┌═°┬τ╓╨, ╚τ╣√EXCLUSIVE ▒╗╣╪▒╒, ╘≥
  13036. ╥╗╕÷╬─╝■┐╔▒╗╢α╕÷╙├╗º┤≥┐¬íú
  13037. └²╫╙: set exclusive off // ╘╩╨φ═°┬τ╓╨╢α╕÷╙├╗º┤≥┐¬═¼╥╗╕÷╩²╛▌┐Γ
  13038.  
  13039. ▓╬╝√: @2449 [flock](), @2467 [neterr](), @2477 [rlock](), @2460 [lockfile](), @2461 [lockrec]()
  13040.  
  13041. .3138
  13042. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13043. @31[╩²╛▌┐Γ├ⁿ┴ε]
  13044.  
  13045. set filter
  13046. ╙∩╖¿: set filter to <lCondition>
  13047. ╙├═╛: ╙├╙┌╘┌┬▀╝¡╔╧╣²┬╦▓╗╞Ñ┼Σ╠⌡╝■╡─╦∙╙╨╝╟┬╝íú
  13048. ▓╬╩²:     
  13049. <lCondition>     ╙├╙┌┐╪╓╞╝╟┬╝─┌╚▌╡─▒φ┤∩╩╜, ╚τ┤╦▒φ┤∩╩╜╬¬╒µ, ╘≥╝╟┬╝
  13050. ╜½▒╗┬╝╚í, ╖±╘≥, ╝╟┬╝╜½░┤▓╗┤µ╘┌┤ª└φíú
  13051. ╦╡├≈:     ╡▒╓╕╒δ╥╞╢»╓«║≤, ╣²┬╦╞≈▓┼┤ª╙┌╗ε╢»╫┤╠¼íúINDEX ├ⁿ┴ε▓╗╩▄
  13052. set filter ├ⁿ┴ε╙░╧∞íú
  13053. └²╫╙: use my
  13054.     set filter to age>20
  13055.     ? age // ╖╡╗╪18
  13056.     ? recno() // ╖╡╗╪1
  13057.     go top
  13058.     ? age // ╖╡╗╪20
  13059.     ? recno() // ╖╡╗╪6
  13060.     
  13061. ▓╬╝√: set(), @2430 [dbsetfilter](), @2408 [dbclearfil](), @3136[set deleted]
  13062.  
  13063. .3203
  13064. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13065. @32[╩²╤º╔Φ╓├├ⁿ┴ε]
  13066.  
  13067. set fixed
  13068. ╙∩╖¿: set fixed ON|OFF|<xlToggle>
  13069. ╙├═╛: ╙δset decimals ├ⁿ┴ε┴¬║╧╙├└┤┐╪╓╞╩Σ│÷╩▒╡─╨í╩²╛½╢╚íú
  13070. ▓╬╩²:    
  13071. <xlToggle>    ╠ß╣⌐╥╗╕÷┬▀╝¡▒φ┤∩╩╜└┤┐╪╓╞╠⌡╝■, ╕├▒φ┤∩╩╜▒╪╨δ╙├
  13072. └¿║┼íú
  13073. ╦╡├≈:     ╚▒╩í╠⌡╝■╬¬OFF ╫┤╠¼íú╡▒SET FIXED ┤ª╙┌OFF ╫┤╠¼╩▒, ╩▄set decimals ├ⁿ┴ε┐╪╓╞╡─▓┘╫≈
  13074. ╜÷╙╨SQRT(), LOG(), EXP(), ├▌║═│²╖¿íú╡▒SET FIXED ┤ª╙┌ON ╫┤╠¼╩▒, ╦∙╙╨╡─╩²╓╡╩Σ│÷╙δ╫ε║≤
  13075. ╓┤╨╨╡─set     decimals ├ⁿ┴ε╧α╥╗╓┬íú
  13076. └²╫╙:? 2. 12*3. 12 // ╖╡╗╪6. 6144
  13077.     set decimals to 3
  13078.     ? 2. 12*3. 12 // ╖╡╗╪6. 6144
  13079.     set fixed on
  13080.     ? 2. 12*3. 12 // ╖╡╗╪6. 614
  13081.     
  13082. ▓╬╝√: @3201[set decimals], set()
  13083.  
  13084. .3024
  13085. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13086. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  13087.  
  13088. set format to
  13089. ╙∩╖¿: set format to <procedure>
  13090. ╙├═╛: ╙├╙┌╬¬╧┬╠⌡READ ├ⁿ┴ε╓╕╢¿╥╗╕÷╞┴─╗╕±╩╜íú
  13091. ▓╬╩²: 
  13092. <procedure>    ┐╔╥╘╩╟╥╗╕÷╣²│╠, ╗≥╒▀. FMT ╬─╝■, ╗≥╒▀. PRG ╬─╝■íú▓╗┤°<procedure> ▓╬╩²╡─set format ├ⁿ┴ε╚í╧√╥╘
  13093. ╟░╡─╕±╩╜íú
  13094. ╦╡├≈:    WINBASE ╘┌═¼╥╗╩▒┐╠╜÷╓º│╓╥╗╕÷╗ε╢»╡─╕±╩╜, ╢°▓╗╩╟╘┌├┐
  13095. ╕÷╣ñ╫≈╟°╢╝╓º│╓╥╗╕÷╗ε╢»╡─╕±╩╜íú▓╗╓º│╓╢α╥│╕±
  13096. ╩╜íú╘┌╜½╩Σ╚δ╜╙╩╒╡╜format ╞┴─╗╓«╟░, WINBASE ▓╗╟σ│²╞┴─╗íúformat ▓╗─▄╡≈╙├╞Σ╦ⁿ
  13097. ╡─format, ╡½┐╔╘┌╥╗╕÷format ╬─╝■╓╨╓┤╨╨╞Σ╦ⁿ├ⁿ┴εíú
  13098. └²╫╙: use my
  13099.     cls
  13100.     set format to like // ╓╕╢¿╥╗╕÷╙╔╣²│╠like ╢¿╥σ╡─╞┴─╗╕±╩╜
  13101.     append blank
  13102.     read
  13103.     procedure like
  13104.     cls
  13105.     ú└ row() +8, 10 say "no: " get no
  13106.     ú└ row(), 20 say "name: " get name
  13107.     ú└ row(), 40 say "age: " get age
  13108.     return
  13109.     
  13110. ▓╬╝√: set(), @3013[read], ¬└... say... get
  13111.  
  13112. .3404
  13113. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13114. @34[╝ⁿ┼╠├ⁿ┴ε]
  13115.  
  13116. set function
  13117. ╙∩╖¿: set function <nFkey> to <cString>
  13118. ╙├═╛: ╙├└┤╢╘╣ª─▄╝ⁿ╕│╙Φ╫╓╖√┤«╓╡
  13119. ▓╬╩²:     
  13120. <nFkey>     ╬╗╙┌2 ╡╜40 ╓«╝Σ╡─╒√╩², ╙├└┤▒φ╩╛▒╗╔Φ╓├╡─╣ª─▄╝ⁿ
  13121.             ╓╡        ╣ª─▄╝ⁿ
  13122.             2-10         F2 ╡╜F10
  13123.             11-20         shift-F1 ╡╜shift-F10
  13124.             21-30         ctrl-F1 ╡╜ctrl-F10
  13125.             31-40         Alt-F1 ╡╜Alt-F10
  13126. <cString>     ╥╗╕÷╫╓╖√┤«, ╡▒╣ª─▄╝ⁿ▒╗╝ⁿ╚δ╩▒, ╕├╫╓╖√┤«▒╗╓├╚δ╣ª─▄
  13127. ╝ⁿ╗║│σ╟°╓╨íú
  13128. ╦╡├≈:     ╕├├ⁿ┴ε─▄╣╗╟σ│²╚╬║╬╥╘╟░SET KEY ├ⁿ┴ε╢╘╣ª─▄╝ⁿ╡─╕│
  13129. ╓╡ú¼
  13130.     F1 ▓╗─▄╣╗▒╗╢¿╥σíú
  13131. └²╫╙: 
  13132. set function 5 to "GOOD MORNING! "+chr (13)
  13133. accept "Enter: " to newpp
  13134. /*▓┘╫≈╒▀╘┌╩Σ╚δ╟░░┤╧┬F5, ╘≥╫╓╖√┤«"GOOD MORNING! " ▒╗┤µ╚δ▒Σ┴┐newpp ▓ó╝╙╔╧
  13135. ╥╗╗╪│╡╖√, ╙δ┤╙╝ⁿ┼╠╩Σ╚δ═Ω╚½╥╗╤∙*/
  13136.  
  13137. ▓╬╝√: set(), @3405[set key], @3403[keyboard]
  13138.  
  13139. .3139
  13140. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13141. @31[╩²╛▌┐Γ├ⁿ┴ε]
  13142.  
  13143. set index to
  13144. ╙∩╖¿: set index to [<xcIndexList>]
  13145. ╙├═╛: ╙├╙┌╘┌╡▒╟░╣ñ╫≈╟°╓╨╢└┴ó╡╪┤≥┐¬╦≈╥²╬─╝■íú
  13146. ▓╬╩²: 
  13147. [<xcIndexList>]     ╦≈╥²╬─╝■▒φ, ╬─╝■╓«╝Σ╙├╢║║┼╕⌠┐¬íú╬─╝■▒φ╓╨╓╕╢¿╡─
  13148. ╬─╝■╢╝╜½▒╗┤≥┐¬íú╚τ╣√╕├▓╬╩²╥╘╥╗╕÷╫╓╖√▒φ┤∩╩╜
  13149. ╡─╨╬╩╜╠ß╣⌐, ╘≥╕├▒φ┤∩╩╜▒╪╨δ╙├└¿║┼└¿╞≡íú
  13150. ╦╡├≈:     set index ├ⁿ┴ε╣╪▒╒╡▒╟░┤≥┐¬╡─╦∙╙╨╦≈╥²╬─╝■, ▓ó╟╥╜½╝╟┬╝
  13151. ╓╕╒δ╓╪╨┬╢¿╬╗╡╜╦≈╥²╬─╝■╡─╡┌╥╗╕÷╝╟┬╝╔╧íú═¼╩▒┤≥
  13152. ┐¬╢α╕÷╦≈╥²╬─╝■, ╘≥╦≈╥²╬─╝■▒φ╓╨╡─╡┌╥╗╕÷╬─╝■╬¬
  13153. ╓≈╦≈╥²╬─╝■íú╓╗╙╨╓≈╦≈╥²╬─╝■▓┼─▄┐╪╓╞╝╟┬╝╖├╬╩╡─
  13154. ╦│╨≥íú
  13155. └²╫╙: 
  13156.  use my
  13157. set index to namefi, nofi
  13158. ? recno() // ╖╡╗╪3
  13159.  
  13160. ▓╬╝√: @2415 [dbcreateind](), @2432 [dbsetorder](), @2431 [dbsetindex](), @3118[index]
  13161.  
  13162. .3025
  13163. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13164. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  13165.  
  13166. set intensity
  13167. ╙∩╖¿: set intensity ON|OFF|<xlToggle>
  13168. ╙├═╛: ╙├╙┌╘╩╨φ╗≥╜√╓╣╙├╕▀┴┴╢╚╤╒╔½╗≥╖┤╩╙╖╜╩╜╧╘
  13169. ╩╛GETíú
  13170. ▓╬╩²:     
  13171. <xlToggle>     ╠ß╣⌐╥╗╕÷┬▀╝¡▒φ┤∩╩╜└┤┐╪╓╞╠⌡╝■, ▒φ┤∩╩╜▒╪╨δ╙├└¿
  13172. ║┼└¿╞≡íú
  13173. ╦╡├≈: ╚▒╩í▓╬╩²╩╟ON (╘╩╨φ╫┤╠¼)
  13174. úset intensity ├ⁿ┴ε╢╘ú└... MENU ├ⁿ┴ε╥╘╝░ACHOICE() ║»╩², DBEDIT() ║»╩²├╗╙╨╙░╧∞íú
  13175. └²╫╙: name: =space (10)
  13176. set intensity off
  13177. set delimited on
  13178. ¬└12, 20 say "input name: " get name // ╞┴─╗▓╗╙├╕▀┴┴╢╚╤╒╔½╗≥╖┤╩╙╖╜╩╜
  13179.                     // ╧╘╩╛GET
  13180. read
  13181.  
  13182. ▓╬╝√: set(), @3017[set color], @1749 [setcolor](), @3005[ú└... say... get]
  13183.  
  13184. .3405
  13185. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13186. @34[╝ⁿ┼╠├ⁿ┴ε]
  13187.  
  13188. set key
  13189. ╙∩╖¿: set key <nInkeyCode> to <idProcedure>
  13190. ╙├═╛:  ╙├╙┌╓╕╢¿╥╗╕÷╣²│╠, ╘┌╚╬║╬╡╚┤²╫┤╠¼╞┌╝Σ, ╓╗╥¬╢¿╥σ
  13191. ╡─╚╚╝ⁿ▒╗╝ⁿ╚δ, ╘≥╘╦╨╨╕├╣²│╠íú
  13192. ▓╬╩²: 
  13193. <nInkeyCode>    ╝ⁿ┬δ╓╡, INKEY() ║»╩²╕∙╛▌╕├╓╡┼╨╢╧──╕÷╝ⁿ╒²▒╗╝ⁿ╚δíú
  13194. <idProcedure>    ╣²│╠├√, ╡▒╔Φ╝╞╡─╝ⁿ▒╗╩Σ╚δ╩▒, ╛═╘╦╨╨╕├╣²│╠íú
  13195.  
  13196. ╦╡├≈:     ═¼╥╗╩▒┐╠, ╫ε╢α┐╔╔Φ╓├32 ╕÷╝ⁿíú
  13197.     ╝ⁿF1 ╢╘╙├╗º▒ú┴⌠, ╥≥╬¬╦ⁿ╫▄╩╟╬¬HELP │╠╨≥╔Φ╓├íú
  13198.     SET KEY ├ⁿ┴ε╜½╖╧│²SET FUNCTION ├ⁿ┴ε╡─╔Φ╓├íú
  13199. └²╫╙:
  13200. /* ╧┬├µ└²╫╙╘┌╡┌╥╗╕÷READ ╓╨╝Σ░┤╧┬F10, ╘≥╙╓┐╔│÷╧╓╡┌╢■╕÷
  13201. READ*/
  13202.     cls
  13203.     v1: =v2: =space (10)
  13204.     ú└ 11, 5 say " ╩Σ╚δ╥╗╕÷╫╓: " get v1
  13205.     ú└ 12, 5 say " ╩Σ╚δ╥╗╕÷╫╓: " get v2
  13206.     set key K_F10 to next_gets
  13207.     read
  13208.     set key K_F10 to
  13209.     cls
  13210.     return
  13211.     prcedure next_gets
  13212.     local GetList: = {}
  13213.     temp: =savescreen (10, 5, 13, 70)
  13214.     v3: =space (4)
  13215.     ú└ 11, 15 say " ╩Σ╚δ╥╗╕÷╫╓: " get v3
  13216.     read
  13217.     ú└ 13, 15 say " ─π╩Σ╚δ╡─╩╟: "+v3+" ░┤╚╬╥╗╝ⁿ.. "
  13218.     inkey (0)
  13219.     restscreen (10, 5, 13, 70, temp)
  13220.     return
  13221.     
  13222. ▓╬╝√: set(), @3403[keyboard], @3404[set function], @1507 [lastkey]()
  13223.  
  13224. .3026
  13225. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13226. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  13227.  
  13228. set margin to
  13229. ╙∩╖¿: set margin to <nPageOffset>
  13230. ╙├═╛: ╙├╙┌╓╕╢¿┤≥╙í╩Σ│÷╩▒╡─╫≤╢╦┐╒╕±╩²─┐íú
  13231. ▓╬╩²: 
  13232.     <nPageOffset>        ╫≤╢╦┐╒╕±╩²─┐, ╚▒╩í╬¬0
  13233. ╦╡├≈: set margin ├ⁿ┴ε─▄╢╘ú└... SAY ├ⁿ┴ε╞≡╫≈╙├, ╘┌ú└... SAY ├ⁿ┴ε╓╨╓╕╢¿╡─
  13234.     ╞≡╩╝┤≥╙í┴╨╩╟╧α╢╘╙┌set margin to ├ⁿ┴ε╔Φ╓├╡─╫≤▒▀╜τ╢°╤╘íú
  13235.     REPORT FROM ├ⁿ┴ε║═label FROM ├ⁿ┴ε╢╝╩▄set margin to ├ⁿ┴ε╡─┐╪╓╞íú
  13236. └²╫╙: set margin to 10
  13237.     3, 10 say "WinBase" 
  13238. /* ╞≡╩╝┤≥╙í┴╨╩╡╝╩╔╧╩╟20, ╢°▓╗╩╟¬└... say ├ⁿ┴ε╓╨╡─10*/
  13239.     
  13240. ▓╬╝√: set(), @3022[set device], set print
  13241.  
  13242. .3027
  13243. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13244. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  13245.  
  13246. set message to
  13247. ╙∩╖¿: set message to [<nRow>, [<center>]
  13248. ╙├═╛: ╙├╙┌╔Φ╓├ú└... PROMPT ├ⁿ┴ε╓╨MESSAGE ▓┐╖▌╡─╩Σ│÷╬╗╓├íú
  13249. ▓╬╩²: 
  13250.     <nRow>     MESSAGE ╡─╞┴─╗╧╘╩╛╨╨╫°▒Ω
  13251.     <center>     ╘┌╓╕╢¿╡─╞┴─╗╨╨╔╧╢╘MESSAGE ╛╙╓╨╧╘╩╛
  13252. ╦╡├≈:     ▓╗┤°╚╬║╬▓╬╩²╡─set message to ├ⁿ┴ε╗≥▓╬╩²<nRow> ╬¬0 ╡─set message to ├ⁿ┴ε╜½╣╪▒╒
  13253. ╧√╧ó╡─╞┴─╗╧╘╩╛íú╥≥╬¬╚▒╩í╡─<nRow> ▓╬╩²╓╡╬¬0, ╦∙╥╘╧╘╩╛╧√
  13254. ╧ó▒╪╨δ╙├set message to ├ⁿ┴ε╔Φ╓├╥╗╖╟0 ╡─╨┬╨╨║┼íú
  13255. └²╫╙:// ╔·│╔╥╗┴┴╠⌡▓╦╡Ñ
  13256.      set message to 24, center // ╘┌24 ╨╨╛╙╓╨╧╘╩╛message
  13257.     ú└ 10, 20 prompt " ╘÷╝╙: " message " ╘÷╝╙╥╗╕÷╨┬╝╟┬╝"
  13258.     ú└ 11, 20 prompt " ▒α╝¡: " message " ▒α╝¡╥╗╕÷╝╟┬╝"
  13259.     ú└ 12, 20 prompt " ╔╛│²: " message " ╔╛│²╥╗╕÷╝╟┬╝"
  13260.     menu to temp
  13261.     
  13262. ▓╬╝√: @3012[menu to], set(), ¬└... prompt
  13263.  
  13264. .3140
  13265. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13266. @31[╩²╛▌┐Γ├ⁿ┴ε]
  13267.  
  13268. set order to
  13269. ╙∩╖¿: set order to <nIndex>
  13270. ╙├═╛: ╜½╥╗╕÷┤≥┐¬╡─╦≈╥²╬─╝■╓╕╢¿╬¬╓≈╦≈╥²╬─╝■íú
  13271. ▓╬╩²: 
  13272. <nIndex>     0 ╡╜15 ╝Σ╡─╥╗╕÷╩²╫╓, ╙├└┤╙√╔Φ╓├╬¬╓≈╦≈╥²╬─╝■╡─╦≈╥²
  13273. ╬─╝■╨≥║┼íú
  13274. ╦╡├≈:     set order to 0 ├ⁿ┴ε▒ú│╓╦∙╙╨┤≥┐¬╡─╦≈╥²╬─╝■╚╘┤ª╙┌┤≥┐¬╫┤
  13275. ╠¼, ╡½╦ⁿ╚í╧√╓≈╦≈╥²╬─╝■╡─╫≈╙├, ╩╣╡├║├╧≤├╗╙╨┤≥┐¬╦≈
  13276. ╥²╬─╝■╡─╟Θ┐÷╧┬╢╘╝╟┬╝╜°╨╨╖├╬╩íú
  13277. └²╫╙: use my
  13278.     set index to namefi, nofi
  13279.     set order to 2 // ╓≈╦≈╥²╬─╝■╩╟nofi
  13280.  
  13281. ▓╬╝√: @2415 [dbcreateind](), @2432 [dbsetorder](), @2431 [dbsetindex](), 
  13282. @3118[index], set(), @2455 [indexkey](), @2456 [indexord]()
  13283.  
  13284. .3507
  13285. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13286. @35[╡═╝╢╬─╝■├ⁿ┴ε]
  13287.  
  13288. set path to
  13289. ╙∩╖¿: set path to [<xcPathSpec>]
  13290. ╙├═╛:     ╓╕╢¿╥╗╨⌐╫╙─┐┬╝íúWINBASE ╜½╘┌╒Γ╨⌐╫╙─┐┬╝╓╨╤░╒╥╥╗╕÷▓╗
  13291. ╘┌╡▒╟░╫╙─┐┬╝╓╨╡─╥╤┤µ╘┌╬─╝■íú
  13292. ▓╬╩²:     
  13293. <xcPathSpec>     ╫╙─┐┬╝▒φ, ╕≈╫╙─┐┬╝╓«╝Σ╙├╖╓║┼╕⌠┐¬, ╕├╫╙─┐┬╝▒φ╓╕╢¿
  13294. ┴╦WINBASE ╡─╦╤╦≈┬╖╛╢íú
  13295. └²╫╙: set path to c: \winbase, c: \myprg // ╓╕╢¿┴φ═Γ(│²╚▒╩í╡─╟²╢»╞≈═Γ)
  13296. // ╕╜╝╙╡─╦╤╦≈┬╖╛╢c: \winbase, c: \myprg
  13297.  
  13298. ▓╬╝√: set(), @3506[set default]
  13299.  
  13300. set print
  13301. ╙∩╖¿:     set print ON|OFF|<xlToggle>
  13302. ╙├═╛:     ╙├╙┌░╤│²ú└... SAY ├ⁿ┴ε╡─╩Σ│÷╓«═Γ╡─╞Σ╦ⁿ╞┴─╗╩Σ│÷╦═
  13303. ╡╜┤≥╙í╗·íú
  13304. ▓╬╩²:     
  13305. <xlToggle>    ╠ß╣⌐╥╗╕÷┬▀╝¡▒φ┤∩╩╜└┤┐╪╓╞╠⌡╝■, ▒φ┤∩╩╜▒╪╨δ╙├└¿
  13306. ║┼└¿╞≡íú
  13307. ╦╡├≈:     ╚▒╩í▓╬╩²╩╟OFF (╣╪▒╒╫┤╠¼)íú
  13308. └²╫╙:    set print on
  13309.     ? "Hello winbase! " // ╘┌┤≥╙í╗·╔╧╩Σ│÷Hello winbase!
  13310.     set print off
  13311.     
  13312. ▓╬╝√: @3028[set printer to] , set(), @3022[set device]
  13313.  
  13314. .3028
  13315. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13316. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  13317.  
  13318. set printer to
  13319. ╙∩╖¿: set printer to [<xcDevice>|<xcFile>]
  13320. ╙├═╛:     ╙├└┤╜½╦∙╙╨┤≥╙í╩Σ│÷╢¿╧≥╡╜╥╗╕÷╓╕╢¿╡─┤≥╙í
  13321. ┐┌╗≥╒▀╙├└┤╜½┤≥╙í╩Σ│÷╥╘╝┘═╤╗·╖╜╩╜╦═╚δ╥╗╕÷
  13322. ASCII ┬δ╬─╝■╓╨íú
  13323. ▓╬╩²: 
  13324. <xcDevice>     ╚╬║╬║╧╖¿╡─┤≥╙í┐┌, ╚τLPT1, LPT2, LPT3, COM1, COM2, ▓╗╥¬╘┌╔Φ▒╕├√║≤╝╙╔╧├░║┼íú
  13325. <xcFile>     ╝┘═╤╗·┤≥╙í╡─╬─╝■├√íú╚τ├╗╙╨╓╕╢¿└⌐╒╣├√, ╘≥╥■║¼▓╔
  13326. ╙├. PRNíú
  13327. ╦╡├≈:     ╔╧╩÷┴╜╕÷▓╬╩²╢╝┐╔▓╔╙├╬─╫╓┤«╨╬╩╜╗≥╫╓╖√▒φ
  13328. ┤∩╩╜╨╬╩╜, ▒φ┤∩╩╜▒╪╨δ╙├└¿║┼└¿╞≡íú
  13329.     ▓╗┤°▓╬╩²╡─set printer to ├ⁿ┴ε╣╪▒╒╝┘═╤╗·╬─╝■▓ó╟╥╜½╩Σ│÷╔Φ
  13330. ▒╕╓╪╨┬╢¿╧≥╡╜LPT1íú
  13331. └²╫╙:    set console off
  13332.     set printer to my. prn
  13333.     report from my to print
  13334.     set printer to
  13335.     set console on
  13336.     return
  13337.     
  13338. ▓╬╝√: @3028[set printer to], set(), @3022[set device]
  13339.  
  13340. .3705
  13341. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13342. @37[╧╡═│├ⁿ┴ε]
  13343.  
  13344. set procedure to
  13345. ╙∩╖¿: set procedure to <idProgramFile>
  13346. ╙├═╛: ╓╕╢¿╥╗╕÷░ⁿ║¼╣²│╠║═╙├╗º╫╘╢¿╥σ║»╩²╡─╬─╝■íú
  13347. ▓╬╩²:     
  13348. <idProgramFile>     ░ⁿ║¼╣²│╠║═╙├╗º╫╘╢¿╥σ║»╩²╡─╬─╝■├√│╞íú╚τ╣√├╗
  13349. ╙╨╓╕╢¿└⌐╒╣├√, ╘≥╘┌╦╤╦≈┤┼┼╠╩▒╥■║¼╩╣╙├. PRGíú╕├▓╬╩²┐╔
  13350. ╥╘░ⁿ║¼╟²╢»╞≈, ┬╖╛╢║═└⌐╒╣├√╨┼╧óíú
  13351. ╦╡├≈:     ╓╗╥¬─┌┤µ╘╩╨φ, ╥╗╕÷procedure ╬─╝■┐╔╥╘║¼╙╨╢α╕÷╙├╗º╫╘╢¿
  13352. ╥σ║»╩²║═╣²│╠íú
  13353. └²╫╙: set procedure to f1
  13354.     set procedure to f2
  13355.     
  13356. ▓╬╝√: set()    
  13357.     
  13358. .3141
  13359. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13360. @31[╩²╛▌┐Γ├ⁿ┴ε]
  13361.  
  13362. set relation to
  13363. ╙∩╖¿:     set relation to [<expkey>|<nRecord> into <xcAlias>];
  13364.     [<expkey2>|<nRecord> into <xcAlias2>...] [ADDITIVE]
  13365. ╙├═╛: ╘┌╖╓╩⌠▓╗═¼╣ñ╫≈╟°╡─┤≥┐¬╩²╛▌┐Γ╓«╝Σ╢¿╥σ╣╪
  13366. ┴¬(╕╕/ ╫╙╣╪╧╡)íú
  13367. ▓╬╩²:
  13368. <expkey>     ┐╪╓╞╫╙╬─╝■╝╟┬╝╓╕╒δ╡─▒φ┤∩╩╜íú╞Σ╫≈╙├╛═║├╧≤╩╟
  13369. ╡▒╕╕╬─╝■╝╟┬╝╓╕╒δ╖ó╔·╥╞╢»╩▒, ╛═╘┌╫╙╬─╝■╓╨╓┤╨╨
  13370. ╥╗╕÷SEEK ├ⁿ┴εíú
  13371. <nRecord>     ╝╟┬╝║┼╗≥╡╚╙┌╝╟┬╝║┼╡─╩²╫╓▒φ┤∩╩╜íú╦ⁿ╡╝╓┬╫╘╢»
  13372. ╘┌╫╙╬─╝■╔╧╓┤╨╨╥╗╕÷GOTO ├ⁿ┴ε, ╚τ╣√╩╣╙├╒Γ╓╓╨╬╩╜╡─▓╬
  13373. ╩²╘≥▒╪╨δ├╗╙╨╢╘╙ª╡─╦≈╥²╬─╝■▒╗┤≥┐¬íú
  13374. <xcAlias>     ╙├╙┌╔Φ╓├╣╪╧╡╡─╫╙╬─╝■╡─▒≡├√íú
  13375. ADDITIVE     ╜½┴φ═Γ╥╗╕÷╣╪╧╡┴¼╜╙╜°╥╤▒╗╔Φ╓├╡─╣╪╧╡┴┤╓╨íú
  13376. ╦╡├≈:     ╚τ╣√╬─╝■╓╨├╗╙╨╥╗╕÷╝╟┬╝┐╔╥╘╞Ñ┼Σset relation ├ⁿ┴ε╓╨╓╕
  13377. ╢¿╡─┐╪╓╞▒φ┤∩╩╜, ╘≥╫╙╬─╝■╓╨╡─╝╟┬╝╓╕╒δ▒╗╔Φ╓├╡╜
  13378. ╫ε║≤╥╗╕÷╝╟┬╝║≤íúEOF() ╖╡╗╪.T., FOUND() ╖╡╗╪.F.íú
  13379. └²╫╙:     ╝┘╔Φ╙╨╥╗╕÷INS. DBF ╬─╝■, ╕├╬─╝■░ⁿ║¼╥╘╧┬╝╟┬╝, ▓ó╟╥╥╤╘┌CODE ╫╓
  13380. ╢╬╔╧╜°╨╨┴╦╦≈╥²íú
  13381.     code type limit
  13382.     cas casualty 8000. 00
  13383.     hea health 2000000. 00
  13384.     lif life 500000. 00
  13385.     use cust 
  13386. /*cust ╓╨║¼╙╨╥╗╕÷INSCODE ╫╓╢╬, ╕├╫╓╢╬║¼╙╨╙δINS. DBF ╧α═¼╡─CODE ┤«*/
  13387.     select 2
  13388.     use ins index codes
  13389.     select 1
  13390.     set relation to inscode into ins
  13391.     ? A->inscode // ╖╡╗╪hea
  13392.     ? B->type // ╖╡╗╪health
  13393.     ? B->limit // ╖╡╗╪2000000. 00
  13394.     skip
  13395.     ? A->inscode // ╖╡╗╪lif
  13396.     ? B->type // ╖╡╗╪life
  13397.     ? B->limit // ╖╡╗╪500000. 00
  13398.     
  13399. ▓╬╝√: @2431 [dbsetindex](), @3118[index], @3140[set order], dbsetralat()
  13400.  
  13401. .3029
  13402. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13403. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  13404.  
  13405. set scoreboard
  13406. ╙∩╖¿: set scoreboard ON|OFF|<xlToggle>
  13407. ╙├═╛:     ╙├╙┌╘╩╨φ╗≥╜√╓╣╜½READ ║═MEMOEDIT() ▓┘╫≈╓╨╡─╧√╧ó╧╘╩╛╘┌╞┴
  13408. ─╗╢Ñ╨╨íú
  13409. ▓╬╩²:     
  13410. <xlToggle>    ╠ß╣⌐╥╗╕÷┬▀╝¡▒φ┤∩╩╜└┤┐╪╓╞╠⌡╝■, ▒φ┤∩╩╜▒╪╨δ╙├└¿
  13411. ║┼└¿╞≡íú
  13412. ╦╡├≈:     ╚▒╩í▓╬╩²╩╟ON (╘╩╨φ╫┤╠¼)íú
  13413.     ╚τ╣√scoreboard ┤ª╙┌╘╩╨φ╫┤╠¼, ╘≥INS ╓╕╩╛╖√╗≥CAPS ╓╕╩╛╖√╥╘╝░╙╔MEMOEDIT() ║»╩²
  13414. ▓·╔·╡─╧√╧ó╢╝╜½╧╘╩╛╘┌╞┴─╗╢Ñ╨╨íú
  13415. └²╫╙: 
  13416. /* ╧┬└²INS ╓╕╩╛╖√╜½▓╗╘┘╧╘╩╛╘┌╞┴─╗╢Ñ╨╨, ╡½╚╘╚╗╩╟INS (▓σ╚δ) ╫┤
  13417. ̬*/
  13418.     temp: =space (10)
  13419.     set scoreboard off
  13420.     ú└ 10, 10 say " ╩Σ╚δ╩²╛▌: " get temp
  13421.     read
  13422.     
  13423. ▓╬╝√: set(), @2222 [memoedit]()
  13424.  
  13425. .3142
  13426. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13427. @31[╩²╛▌┐Γ├ⁿ┴ε]
  13428.  
  13429. set softseek
  13430. ╙∩╖¿: set softseek ON|OFF|<xlToggle>
  13431. ╙├═╛: ╙├╙┌╚╖╢¿SEEK ╤░╒╥╝╟┬╝╩º░▄║≤, ╝╟┬╝╓╕╒δ╡─╬╗╓├╔Φ╓├íú
  13432. ▓╬╩²:     
  13433. <xlToggle>     ╠ß╣⌐╥╗╕÷┬▀╝¡▒φ┤∩╩╜└┤┐╪╓╞╠⌡╝■, ╕├▒φ┤∩╩╜▒╪╨δ╙├
  13434. └¿║┼└¿╞≡íú
  13435. ╦╡├≈:     ╚▒╩í╠⌡╝■╜√╓╣(OFF) ╫┤╠¼íú╚τ╣√set softseek ┤ª╙┌╘╩╨φ╫┤╠¼, ╟╥SEEK ╤░╒╥╝╟┬╝
  13436. ╩º░▄, ╘≥╝╟┬╝╓╕╒δ╜½▒╗╢¿╬╗╡╜┬·╫π╧┬├µ╠⌡╝■╡─╝╟┬╝
  13437. ╢°▓╗╩╟╬─╝■╡─╜ß╬▓, ╒Γ╕÷╠⌡╝■╩╟╝╟┬╝╡─╦≈╥²╝ⁿ╓╡┤≤
  13438. ╙┌SEEK ╓╨▒φ┤∩╩╜╡─╓╡íú
  13439. └²╫╙: use my index name
  13440.     seekexp: ="ye"
  13441.     seek &seekexp
  13442.     ? found(), eof() // ╖╡╗╪.F.,.T. (╤░╒╥╝╟┬╝╩º░▄)
  13443.     set softseek on
  13444.     seek &seekexp
  13445.     ? found(), eof() // ╖╡╗╪.F.,.F.
  13446.     
  13447. ▓╬╝√: @3134[seek], set(), @3141[set relation]
  13448.  
  13449. .3406
  13450. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13451. @34[╝ⁿ┼╠├ⁿ┴ε]
  13452.  
  13453. set typeahead to
  13454. ╙∩╖¿: set typeahead to <nBufferSize>
  13455. ╙├═╛: ╓╕╢¿│¼╟░╝ⁿ╚δ╗║│σ╟°╡─┤≤╨ííú
  13456. ▓╬╩²: 
  13457.     <nBufferSize>     │¼╟░╝ⁿ╚δ╗║│σ╟°╡─┤≤╨í(0=<nBuffersize<=4096)
  13458. ╦╡├≈:     ╜½│¼╟░╝ⁿ╚δ╗║│σ╟°│ñ╢╚╔Φ╓├╬¬0 ╜½╗ß╡╝╓┬ALT-C ├ⁿ┴ε
  13459. ║═ALT-D ├ⁿ┴ε▓╗─▄▒╗╒²╚╖╩╢▒≡íú
  13460. └²╫╙: set typeahead to 512 // ╓╕╢¿│¼╟░╝ⁿ╚δ╗║│σ╟°╬¬512 ╕÷╫╓╜┌
  13461.  
  13462. ▓╬╝√: set(), @3403[keyboard], @1507 [lastkey](), @3405[set key], @3402[input], @3007[accept... to]
  13463.  
  13464. .3142
  13465. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13466. @31[╩²╛▌┐Γ├ⁿ┴ε]
  13467.  
  13468. set unique
  13469. ╙∩╖¿: set unique ON|OFF|<xlToggle>
  13470. ╙├═╛: ╘┌╔·│╔╦≈╥²╬─╝■╞┌╝Σ, ╙├└┤╜√╓╣╗≥╘╩╨φ╛▀╙╨╓╪╕┤
  13471. ╝ⁿ╓╡╡─╝╟┬╝íú
  13472. ▓╬╩²:     
  13473. <xlToggle>     ╠ß╣⌐╥╗╕÷┬▀╝¡▒φ┤∩╩╜└┤┐╪╓╞╠⌡╝■, ╕├▒φ┤∩╩╜▒╪╨δ╙├
  13474. └¿║┼└¿╞≡íú
  13475. ╦╡├≈:     ╚▒╩í╠⌡╝■╜√╓╣(OFF) ╫┤╠¼íú╚τ╣√unique ┤ª╙┌╘╩╨φ╫┤╠¼(on), ╘≥╜÷╩╢▒≡
  13476. ╦≈╥²╝ⁿ╓╨╛▀╙╨─│╠╪╢¿╓╡╡─╡┌╥╗╕÷╝╟┬╝, ╢°║≤├µ╛▀╙╨
  13477. ╧α═¼╦≈╥²╝ⁿ╓╡╡─╝╟┬╝╢╝╜½▒╗║÷┬╘íú╥╗╡⌐╦≈╥²▒╗╔·│╔, ╘≥
  13478. ▓╗╣▄set unique ├ⁿ┴ε╔Φ╓├╚τ║╬, ╕├╦≈╥²╢╝╜½▒ú│╓╦ⁿ╘¡└┤╡─unique ╩⌠╨╘íú
  13479. └²╫╙: use my
  13480.     set unique on // ╜√╓╣╛▀╙╨╓╪╕┤╝ⁿ╓╡╡─╝╟┬╝
  13481.     index on name+age to new
  13482.     set unique off
  13483.     
  13484. ▓╬╝√: @3116[find], @3134[seek], @3131[reindex], set()
  13485.  
  13486. .3030
  13487. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13488. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  13489.  
  13490. set wrap
  13491. ╙∩╖¿: set wrap ON|OFF|<xlToggle>
  13492. ╙├═╛:     ╙├╙┌╘╩╨φ╗≥╜√╓╣╜÷═¿╣²╥╗┤╬╗≈╝ⁿ╛═╩╣▓╦╡Ñ╓╨
  13493. ╡─╤í╘±┴┴╠⌡┤╙╡┌╥╗╕÷╤í╘±╠°╡╜╫ε║≤╥╗╕÷╤í╘±, ╗≥┤╙
  13494. ╫ε║≤╥╗╕÷╤í╘±╠°╡╜╡┌╥╗╕÷╤í╘±íú
  13495. ▓╬╩²:     
  13496. <xlToggle>    ╠ß╣⌐╥╗╕÷┬▀╝¡▒φ┤∩╩╜└┤┐╪╓╞╠⌡╝■, ▒φ┤∩╩╜▒╪╨δ╙├└¿
  13497. ║┼└¿╞≡íú
  13498. ╦╡├≈:     ╚▒╩í▓╬╩²╩╟OFF (╜√╓╣╫┤╠¼)íúset wrap ├ⁿ┴ε╢╘ACHOICE() ║»╩²├╗╙╨╙░╧∞íú
  13499. └²╫╙:/* ╔·│╔╥╗┴┴╠⌡▓╦╡Ñ, ╘╩╨φ▓╦╡Ñ╓╨╡─╤í╘±┴┴╠⌡┤╙╡┌╥╗
  13500. ╕÷╤í╘±╠°╡╜╫ε║≤╥╗╕÷╤í╘±, ╗≥┤╙╫ε║≤╥╗╕÷╤í╘±╠°╡╜
  13501. ╡┌╥╗╕÷╤í╘±*/
  13502.  set wrap on
  13503. set message to 24, center // ╘┌24 ╨╨╛╙╓╨╧╘╩╛message
  13504.     ú└ 10, 20 prompt " ╘÷╝╙: " message " ╘÷╝╙╥╗╕÷╨┬╝╟┬╝"
  13505.     ú└ 11, 20 prompt " ▒α╝¡: " message " ▒α╝¡╥╗╕÷╝╟┬╝"
  13506.     ú└ 12, 20 prompt " ╔╛│²: " message " ╔╛│²╥╗╕÷╝╟┬╝"
  13507.     menu to temp
  13508.     
  13509. ▓╬╝√: @3012[menu to], set(), ¬└... prompt
  13510.     
  13511. .3144
  13512. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13513. @31[╩²╛▌┐Γ├ⁿ┴ε]
  13514.  
  13515. skip
  13516. ╙∩╖¿: skip [<nRecords>] [ALIAS <idALias>|<nWorkArea>]
  13517. ╙├═╛: ╙├╙┌╜½╝╟┬╝╓╕╒δ╥╞╢»╡╜┴φ╥╗╕÷╝╟┬╝╔╧íú
  13518. ▓╬╩²: 
  13519. <nRecords>         ╥╞╢»╡─┤╬╩²íú╕║╩²▒φ╩╛═∙╗╪╥╞╢»╓╕╒δ, ╒²╩²╧≥╟░╥╞╢»íú▓╗
  13520. ┤°▓╬╩²╡─SKIP ├ⁿ┴ε═∙╟░╥╞╢»╥╗╕÷╝╟┬╝íú
  13521. ALIAS <idALias>|<nWorkArea> ╓╕╢¿╣ñ╫≈╟°╡─▒φ┤∩╩╜, SKIP ├ⁿ┴ε╜½╢╘╕├▓╬╩²╦∙╓╕╢¿╣ñ╫≈
  13522. ╟°╓╨╡─╝╟┬╝╓╕╒δ╜°╨╨╥╞╢»íú
  13523. ╦╡├≈:     ╚τ╣√╜½╓╕╧≥╩²╛▌┐Γ╓╨╡┌╥╗╕÷╝╟┬╝╡─╝╟┬╝╓╕╒δ
  13524. ═∙╗╪╥╞╢»╥╗╕÷╝╟┬╝, ╘≥BOF() ╖╡╗╪.T.íú╜½╝╟┬╝╓╕╒δ╥╞╡╜╩²╛▌┐Γ╓╨
  13525. ╫ε║≤╥╗╕÷╝╟┬╝╓«║≤╜½╩╣EOF() ▒Σ╬¬.T.íúSKIP 0 ┐╔╙├└┤╜½WINBASE ─┌▓┐╗║│σ╟°
  13526. ╓╨╡─╨┼╧ó╤╣╚δDOS ╗║│σ╟°╓╨, ╡½▓╗╗ß╥²╞≡DOS ╜½╗║│σ╟°─┌╚▌
  13527. ╨┤╚δ┤┼┼╠íú
  13528. └²╫╙: use my
  13529.     go bottom
  13530.     skip
  13531.     ? eof() // ╖╡╗╪.T.
  13532.     
  13533. ▓╬╝√: go, @2421 [dbgoto](), @2412 [dbcommit](), @2403 [bof](), @2441 [eof]()
  13534.  
  13535. .3145
  13536. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13537. @31[╩²╛▌┐Γ├ⁿ┴ε]
  13538.  
  13539. sort to
  13540. ╙∩╖¿: sort to <xcDatabase> on <idField> [/A|D] [/C] <idField2> [/A|D] [/C];
  13541.     <scope> [while <lCondition>] [for <lCondition>]
  13542. ╙├═╛:     ╙├╙┌╘┌╬∩└φ╔╧╢╘╝╟┬╝╓╪╨┬┼┼╨≥ú¼▓ó╜½┼┼╨≥╜ß╣√
  13543. ╨┤╡╜┴φ╥╗╕÷╬─╝■╓╨íú
  13544. ▓╬╩²:
  13545. <xcDatabase>     ╙├└┤┤µ╖┼┼┼╨≥╜ß╣√╡─╬─╝■├√íú╚τ╣√├╗╙╨╓╕╢¿└⌐╒╣
  13546. ├√, ╘≥╥■║¼╩╣╙├. DBFíú╕├▓╬╩²┐╔╥╘╩╟╥╗╕÷╬─╫╓┤«, ╗≥╩╟╥╗╕÷╙├└¿
  13547. ║┼└¿╞≡╡─╫╓╖√▒φ┤∩╩╜íú
  13548. <idField>     ╙├╫≈┼┼╨≥╡─╣╪╝ⁿ╫╓╢╬íú
  13549.  [/A|D] [/C]     ┼┼╨≥┐¬╣╪íú╙├└┤╓╕╢¿┼┼╨≥├ⁿ┴ε░┤╔²╨≥(╚▒╩í╦│╨≥), ╜╡╨≥
  13550. ╗≥▓╗┐╝┬╟┤≤╨í╨┤╡─╖╜╩╜╜°╨╨┼┼╨≥íú╡▒╓╕╢¿╢α╕÷┐¬╣╪
  13551. ╗≥╢α╕÷╫╓╢╬╩▒, ╕≈┐¬╣╪║═╫╓╢╬╓«╝Σ╨Φ╙├╢║║┼╖╓┐¬íúí
  13552. <scope>     ╜°╨╨┼┼╨≥╡─╝╟┬╝╖╢╬ºíú
  13553. while <lCondition>     ╓╕╢¿╓╒╓╣╕├├ⁿ┴ε╡─┬▀╝¡╠⌡╝■íú╕├╠⌡╝■╗∙╙┌<lCondition> ╦∙╓╕╢¿
  13554. ╫╓╢╬╡─╓╡íú
  13555. for <lCondition>     ╢╘<scope> ╦∙╓╕╢¿╖╢╬º╓╨╝╟┬╝╡──┌╚▌╓╕╢¿╥╗╕÷┬▀╝¡▓Γ╩╘íú
  13556. ╦╡├≈:     │²╖╟╔Φ╓├┴╦/C ┐¬╣╪, ╖±╘≥SORT ├ⁿ┴ε╜½╥└╛▌ASCII ┬δ╓╡╢╘╫╓╖√╫╓
  13557. ╢╬╜°╨╨┼┼╨≥íú╚τ╣√╔Φ╓├┴╦/C ┐¬╣╪, ╘≥╫╓╖√╫╓╢╬╓╨╦∙╙╨╫╓─╕
  13558. ╢╝░┤┤≤╨┤╫╓─╕╢╘┤²íú╢╘╚╒╞┌╫╓╢╬╡─┼┼╨≥╜½░┤─Ω┤·╦│
  13559. ╨≥; ╢╘╩²╫╓╫╓╢╬░┤╩²╫╓╓╡╡─╦│╨≥íú
  13560. └²╫╙:
  13561. /* ╢╘┬·╫π╠⌡╝■╡─╝╟┬╝, ╜½░┤age ┤╙┤≤╡╜╨í, no ┤╙╨í┤≤╡╜┤≤╨┤╡╜╬─
  13562. ╝■newfile ╓╨*/
  13563.     use my
  13564.     sort on age/D, no/A to newfile for name<>"xieping"
  13565.     
  13566. ▓╬╝√: @3118[index], @1814 [asort]()
  13567.  
  13568. .3606
  13569. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13570. @36[─┌┤µ▒Σ┴┐├ⁿ┴ε]
  13571.  
  13572. store
  13573. ╙∩╖¿: store <Exp> to <idVar List>
  13574.     ╗≥<idVar>=<Exp>
  13575.     ╗≥<idVar>: = [<idVar>: =...] <Exp>
  13576.     ╗≥<idVar>: =<Exp> [, <idVar>: =<Exp>...]
  13577. ╙├═╛: ╜¿┴ó─┌┤µ▒Σ┴┐║═╩²╫Θ╗≥╒▀╕°─┌┤µ▒Σ┴┐║═╩²╫Θ
  13578. ╕│╓╡
  13579. ▓╬╩²:     
  13580.     <idVar>    ▒╗╕│╓╡╡─▒Σ┴┐├√
  13581.     <Exp>        ▒Σ┴┐║═╩²╫Θ╡─╕│╓╡
  13582. ╦╡├≈:     ╕│╓╡▓┘╫≈╖√║═store ├ⁿ┴ε▓╗╥¬╟≤<idVar> ▓╬╩²╥╗╢¿╩╟▒Σ┴┐, <idVar> ╥▓┐╔
  13583. ╥╘╩╟╩²╛▌┐Γ╓╨─│╕÷╫╓╢╬íú▒Σ┴┐├√╓«╝Σ╙┼╧╚╚¿┤╙╕▀╡╜
  13584. ╡═╡─┤╬╨≥╬¬: ╫╓╢╬▒Σ┴┐, PRIVATE ╨═▒Σ┴┐, PUBLIC ╨═▒Σ┴┐, ┴╜╕÷▒Σ┴┐├√╓«╝Σ╬▐┬█
  13585. ║╬╩▒│÷╧╓│σ═╗, ╫▄╩╟╙┼╧╚┐╝┬╟╛▀╙╨╫ε╕▀╙┼╧╚╚¿╡─▒Σ
  13586. ┴┐└α╨═íú
  13587.     store ├ⁿ┴ε╝░╕│╓╡▓┘╫≈▓╗─▄╙├└┤╢╘╒√╕÷╩²╫Θ╕│╓╡íú
  13588. └²╫╙:
  13589.  store 100 to num //num ╩╟╥╗╕÷╡╚╙┌100 ╡─╩²╓╡▒Σ┴┐
  13590. num: =100 // ╙δ╔╧├µ╡╚╝█
  13591.  
  13592. ▓╬╝√: @3601[clear memory], @1807 [afill]()
  13593.  
  13594. .3146
  13595. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13596. @31[╩²╛▌┐Γ├ⁿ┴ε]
  13597.  
  13598. sum
  13599. ╙∩╖¿: sum <exp List> to <idVar List> <scope>;
  13600.      [while <lCondition>] [for <lCondition>]
  13601. ╙├═╛: ╙├╙┌╚╖╢¿╩²╛▌┐Γ╓╨╩²╓╡╨═╫╓╢╬╡─╫▄║═íú
  13602. ▓╬╩²:
  13603. <exp List>         ╨Φ└█╝╙╡─╫╓╢╬▒φ║═/ ╗≥╝╞╦π╓╡íú
  13604. <idVar List>         ▒ú┤µ╝╞╦π╜ß╣√╡─▒Σ┴┐▒φíú<exp List> ▓╬╩²╓╨╡─├┐╕÷╘¬╦╪╘┌<idVar List> ▓╬
  13605. ╩²╓╨▒╪╨δ╙╨╥╗╕÷╙δ╓«╧α╢╘╙ª╡─╘¬╦╪┤µ╘┌íú╚τ▒Σ┴┐▓╗
  13606. ┤µ╘┌╗≥╢╘╣²│╠▓╗┐╔╝√, ╘≥╥╘PRIVATE └α╨═╜¿┴ó╦ⁿ├╟íú
  13607. <scope>         ╘┌╥¬═│╝╞╡─╬─╝■╓╨╓╕╢¿╥╗╕÷╝╟┬╝╖╢╬ºíú╚τ╣√╓╕╢¿
  13608. NEXT<n> ╫≈╬¬╖╢╬º▓╬╩², ╘≥FOR/WHILE ╫╙╛Σ╜½▒╗╫╘╢»╖╧│²íúALL ╩╟╚▒╩í╖╢╬ºíú
  13609. while <lCondition>     ╓╕╢¿╓╒╓╣╕├├ⁿ┴ε╡─┬▀╝¡╠⌡╝■íú╕├╠⌡╝■╗∙╙┌<lCondition> ╦∙╓╕╢¿
  13610. ╡─╫╓╢╬╓╡íú
  13611. for <lCondition>     ╢╘<scope> ╦∙╓╕╢¿╖╢╬º╓╨╝╟┬╝╡──┌╚▌╓╕╢¿╥╗╕÷┬▀╝¡▓Γ╩╘íú
  13612. ╦╡├≈:     ╘┌╢α╙├╗º╗╖╛│╓╨╓┤╨╨average ├ⁿ┴ε╩▒, ╘┌average ├ⁿ┴ε╓┤╨╨╞┌╝Σ, ╫╓╢╬
  13613. ╓╡┐╔─▄▒╗╞Σ╦√╙├╗º╕─▒Σ, ╒Γ╔⌡╓┴┐╔╥²╞≡╘┌╕├├ⁿ┴ε═Ω
  13614. │╔┤ª└φ╓«╟░, ╜ß╣√╛═▒Σ╡├▓╗╛½╚╖íú
  13615. └²╫╙:
  13616. /*═│╝╞┬·╫π╠⌡╝■age<40. and. age>20 ╡─╣ñ╫╩(wage) ╫▄║═, ▓ó┤µ╚δ▒Σ┴┐sumwage ╓╨*/
  13617.  use my
  13618. sum wage to sumwage for age<40. and. age>20
  13619.  
  13620. ▓╬╝√: @3103[average], @3111[count], @3147[total]    
  13621.  
  13622. .3031
  13623. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13624. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  13625.  
  13626. text
  13627. ╙∩╖¿:  text [to printer] [to <xcFile>] <text> ENDTEXT
  13628. ╙├═╛:     ╙├╙┌╧╘╩╛, ┤≥╙í╥╗╨╨╗≥╢α╨╨╒²╬─, ╗≥╒▀╜½╒Γ╨⌐╒²╬─╝┘
  13629. ═╤╗·╦═╚δ╬─╝■íú
  13630. ▓╬╩²: 
  13631. <xcFile>    ╓╕╢¿╥╗╕÷╬─╝■, ╩Σ│÷╜½╝┘═╤╗·╦═╚δ┤╦╬─╝■╓╨, ╚τ▓╗╓╕╢¿
  13632. └⌐╒╣├√, ╘≥╥■║¼╩╣╙├. TXTíú
  13633. <text>         ▒╗╧╘╩╛, ┤≥╙í╗≥╝┘═╤╗·╦═╚δ╬─╝■╡─╒²╬─▓┐╖▌íú
  13634. ╦╡├≈:     WINBASE ╓º│╓╒²╬─┐Θ╓╨╡─│÷╧╓╡─║Ω╠µ╗╗, ╡½├╗╙╨╠ß╣⌐╜½╨╨
  13635. ╬▓╡─│ñ┤╩╚╞╡╜╧┬╥╗╨╨╡─╣ª─▄íú
  13636. └²╫╙:    text         // ╜½╘┌╞┴─╗╔╧╧╘╩╛
  13637.     1: add         // 1: add
  13638.     2: edit         // 2: edit
  13639.     3: del         // 3: del
  13640.     endtext
  13641.     
  13642. ▓╬╝√: [? /??], @2233 [mlcount](), menoline()
  13643.  
  13644. .3147
  13645. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13646. @31[╩²╛▌┐Γ├ⁿ┴ε]
  13647.  
  13648. total
  13649. ╙∩╖¿: total on <expkey> [FIELDS <idField List>] to <xcDataBase>;
  13650.     <scope> [while <lCondition>] [for <lCondition>]
  13651. ╙├═╛:     ╙├╙┌╜¿┴ó╥╗╕÷╙δ╘┤╩²╛▌┐Γ╛▀╙╨╧α═¼╜ß╣╣╡─╬─
  13652. ╝■, ▓ó░╤╢╘╓╕╢¿╩²╫╓╫╓╢╬╡─═│╝╞┤µ╚δ╕├╬─╝■╓╨íú
  13653. ▓╬╩²:
  13654. <expkey>         ┐╪╓╞╝╟┬╝╖╓╫Θ╡─╝ⁿ▒φ┤∩╩╜íú╘┌═│╝╞╜ß╣√╬─╝■╓╨, ├┐╥╗
  13655. ╕÷╬¿╥╗╡─╝ⁿ▒φ┤∩╩╜╢╝╙╨╥╗╕÷═│╝╞╝╟┬╝╙δ╓«╢╘╙ªíú
  13656. <idField List>        ╥¬═│╝╞╡─╩²╫╓╫╓╢╬▒φíú╚τ├╗╙╨╓╕╢¿▓╬╩², ╘≥═│╝╞╜ß╣√
  13657. ╝╟┬╝╜½▓╗║¼╘┤╬─╝■╓╨╩²╫╓╫╓╢╬╡─└█╝╞╓╡, ╢°╩╟╙δ╞Ñ
  13658. ┼Σ╝ⁿ▒φ┤∩╩╜╡─╥╗╫Θ╝╟┬╝╓╨╡─╡┌╥╗╕÷╝╟┬╝║¼╙╨╧α
  13659. ═¼╡─╩²╫╓╫╓╢╬╓╡íú
  13660. <scope>         ╥¬═│╝╞╡─╝╟┬╝╖╢╬º, ╚▒╩í╬¬ALLíú
  13661. while <lCondition>     ╓╕╢¿╓╒╓╣╕├├ⁿ┴ε╡─┬▀╝¡╠⌡╝■íú╕├╠⌡╝■╗∙╙┌<lCondition> ╦∙╓╕╢¿╫╓
  13662. ╢╬╡─╓╡íú
  13663. for <lCondition>     ╢╘<scope> ╦∙╓╕╢¿╖╢╬º╓╨╝╟┬╝╡──┌╚▌╓╕╢¿╥╗╕÷┬▀╝¡▓Γ╩╘íú
  13664. ╦╡├≈:     ▒╗═│╝╞╡─╬─╝■▒╪╨δ╘┌total ├ⁿ┴ε╓╨<expkey> ▓╬╩²╓╕╢¿╡─╝ⁿ╔╧
  13665. ╜¿┴ó┴╦╦≈╥²╗≥╒▀░┤╒Γ╕÷╝ⁿ╜°╨╨┴╦┼┼╨≥íú╚τtotal ├ⁿ┴ε╓╨
  13666. ├╗╙╨╓╕╢¿╫╓╢╬▒φ, ╓┤╨╨╜ß╣√╜÷╩╟╜½├┐╕÷╝ⁿ╓╡╦∙╢╘╙ª
  13667. ╡─╡┌╥╗╕÷╝╟┬╝┐╜▒┤╡╜─┐▒Ω╬─╝■╓╨íú
  13668. └²╫╙:/* ═│╝╞┬·╫π╠⌡╝■age<40. and. age>20 ╡─╣ñ╫╩(wage) ╫▄║═, ▓ó┤µ╚δ╬─╝■sumwage ╓╨*/
  13669.  use my index wage
  13670. sum on wage to sumwage for age<40. and. age>20
  13671.  
  13672. ▓╬╝√: @3103[average], @3111[count], @3146[sum]    
  13673.  
  13674. .3031
  13675. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13676. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  13677.  
  13678. type
  13679. ╙∩╖¿: type <xcFile> [to printer] [to file <xcOutfile>]
  13680. ╙├═╛:     ╘┌╞┴─╗╔╧╧╘╩╛╗≥╒▀╘┌┤≥╙í╗·╔╧┤≥╙í╥╗╕÷ASCII ┬δ╬─
  13681. ▒╛╬─╝■╡──┌╚▌╗≥╒▀╜½╥╗╕÷ASCII ┬δ╬─▒╛╬─╝■╢¿╧≥╡╜┴φ
  13682. ╥╗╕÷╬─╝■╓╨íú
  13683. ▓╬╩²:     
  13684. <xcFile>         ╥¬╧╘╩╛╡─╬─╝■├√íú▓╬╩²╓╨┐╔░ⁿ└¿┬╖╛╢╗≥╟²╢»╞≈╨┼
  13685. ╧óíú╕├▓╬╩²┐╔▓╔╙├╬─╫╓┤«╨╬╩╜╗≥╫╓╖√▒φ┤∩╩╜╨╬╩╜, ▒φ┤∩
  13686. ╩╜▒╪╨δ╙├└¿║┼└¿╞≡íú
  13687. [to printer]         ╜½╦∙╙╨╩Σ│÷╢¿╧≥╡╜╡▒╟░┤≥╙í╔Φ▒╕╔╧íú
  13688. to file <xcOutfile>     ╩Σ│÷╜ß╣√╬─╝■├√íú╚τ▓╗╓╕╢¿└⌐╒╣├√, ╘≥╥■║¼╩╣╙├. TXTíú▓╬╩²╓╨
  13689. ┐╔░ⁿ└¿┬╖╛╢╗≥╟²╢»╞≈╨┼╧óíú╕├▓╬╩²┐╔▓╔╙├╬─╫╓┤«╨╬
  13690. ╩╜╗≥╙├└¿║┼└¿╞≡╫╓╖√▒φ┤∩╩╜íú
  13691. ╦╡├≈:     ╛÷╢¿╙┌╙├╗º╩╣╙├╡─DOS ░µ▒╛, CTRL-S ╗≥CTRL-NUM ┐╔╙├└┤╘▌═ú╧╘╩╛, ╙├CTRL-T ╗≥ESC ▓╗─▄
  13692. ╓╒╓╣╧╘╩╛íú
  13693. └²╫╙:
  13694.  type c: \winbase\readme. txt to printer // ╘┌┤≥╙í╗·╔╧╩Σ│÷╬─╝■readme. txt
  13695. type c: \winbase\readme. txt to screen // ╘┌╞┴─╗╔╧╧╘╩╛╬─╝■readme. txt
  13696.  
  13697. ▓╬╝√: @2222 [memoedit] ║»╩²
  13698.  
  13699. .3148
  13700. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13701. @31[╩²╛▌┐Γ├ⁿ┴ε]
  13702.  
  13703. unlock
  13704. ╙∩╖¿: unlock [all]
  13705. ╙├═╛:     ╙├╙┌╩═╖┼▒╗╡▒╟░╙ª╙├│╠╨≥╦°╢¿╡─╬─╝■╗≥╝╟┬╝, ╡½
  13706. ▓╗─▄╩═╖┼▒╗╞Σ╦√╙├╗º╦°╢¿╡─╬─╝■╗≥╝╟┬╝íú
  13707. ▓╬╩²: 
  13708. all    ╩═╖┼╦∙╙╨╣ñ╫≈╟°╓╨╦∙╙╨╦°╢¿╡─╬─╝■╗≥╝╟┬╝, ╚τ╚▒╩í, ╜÷
  13709. ╩═╖┼╡▒╟░╣ñ╫≈╟°╓╨╦°╢¿╡─╬─╝■╗≥╝╟┬╝íú
  13710. └²╫╙: if rlock()
  13711.         replace name with "ye"
  13712.         unlock
  13713.     else
  13714.         ... // ╝╟┬╝▒╗╦°╩▒╥¬▓╔╚í╡─╢»╫≈
  13715.     endif
  13716.     
  13717. ▓╬╝√: @3137[set exclusive], @2477 [rlock], @2449 [flock](), @2460 [lockfile]()
  13718.     
  13719. .3149
  13720. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13721. @31[╩²╛▌┐Γ├ⁿ┴ε]
  13722.  
  13723. update
  13724. ╙∩╖¿: update from <xAlias> on <expkey> [RANDOM];
  13725.     REPLACE <idField1> with <exp> [, <idField> with <exp>...]
  13726. ╙├═╛: ╙├╘┤╩²╛▌┐Γ╡──┌╚▌╕ⁿ╨┬╡▒╟░╩²╛▌┐Γíú
  13727. ▓╬╩²:
  13728. <xAlias>     ░ⁿ║¼╕ⁿ╨┬▓┘╫≈╓╨╘┤╩²╛▌┐Γ╡─╣ñ╫≈╟°íú
  13729. <expkey>     ┴╜╕÷╬─╝■╡─╣▓═¼╝ⁿíú╜÷╡▒╝ⁿ╞Ñ┼Σ╩▒, ▓┼╓┤╨╨╕ⁿ╨┬▓┘╫≈íú
  13730. <idField> with <exp>     ╨Φ╨▐╕─╡─╫╓╢╬╫Θ│╔╡─▒φ, ╫╓╢╬╓«╝Σ╙├╢║║┼╖╓╕⌠┐¬íú╨▐
  13731. ╕─╩▒╜½╥╘▒φ┤∩╩╜╡─╓╡╫≈╬¬╕∙╛▌íú
  13732. RANDOM     ╘┌╬─╝■╓«╝Σ╓╕╢¿╥╗╕÷╥╗╢╘╢α╣╪╧╡íú╚τ╓╕╢¿RANDOM, ╘≥╦╤╦≈
  13733. ╘┤╬─╝■╓╨╦∙╙╨╞Ñ┼Σ<expkey> ╡─╝╟┬╝, ▓ó╙├╒Γ╨⌐╝╟┬╝╚Ñ╕ⁿ╨┬╡▒
  13734. ╟░╩²╛▌┐Γ╓╨╡▒╟░╝╟┬╝└∩├µ╡──╟╨⌐╙╔├ⁿ┴ε╦∙╓╕╢¿╡─
  13735. ╫╓╢╬íú
  13736. └²╫╙:// ╕∙╛▌╫╓╢╬itemcode ╕ⁿ╨┬╡▒╟░╩²╛▌┐Γ╡─weight ╫╓╢╬    
  13737.     use invent index inv_item // ┤≥┐¬╡▒╟░╩²╛▌┐Γ
  13738.     select 2
  13739.     use invc_itm index invc_itm// ┤≥┐¬╘┤╩²╛▌┐Γ
  13740.     select 1
  13741.     update on itemcode from invc_itm replace weight with weight-;
  13742.     b->old RANDOM
  13743.     
  13744. ▓╬╝√: set seleted, @3132[replace]
  13745.  
  13746. .3150
  13747. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13748. @31[╩²╛▌┐Γ├ⁿ┴ε]
  13749.  
  13750. use
  13751. ╙∩╖¿: use [<xcDatabase>] [INDEX <xcIndex LIst>];
  13752.      [ALIAS <idAlias>] [EXCLUSIVE|SHARED] [NEW] [READONLY]
  13753. ╙├═╛: ╙├╙┌╘┌╡▒╟░╣ñ╫≈╟°╓╨┤≥┐¬╩²╛▌┐Γ║═╚╬║╬╓╕╢¿
  13754. ╡─╦≈╥²╬─╝■íú
  13755. ▓╬╩²:
  13756. <xcDatabase>     ╥¬┤≥┐¬╡─╩²╛▌┐Γ├√íú
  13757. INDEX <xcIndex LIst>     ═¼╩▒┤≥┐¬╡─╦≈╥²╬─╝■▒φ, ╢╘├┐╕÷╩²╛▌┐Γ╫ε╢α    ┐╔═¼╩▒┤≥
  13758. ┐¬15 ╕÷╦≈╥²╬─╝■íú▒φ╓╨╡─╡┌╥╗╕÷╦≈╥²╬─╝■╬¬╓≈╦≈╥²
  13759. ╬─╝■íú
  13760. ALIAS <idAlias>     ╙├└┤╠ß╣⌐╥╗╕÷╡Ñ┤╩╫≈╬¬▒≡├√└┤╥²╙├╬─╝■╢°▓╗╩╟
  13761. ═¿╣²╬─╝■├√└┤╥²╙├╬─╝■íú
  13762. EXCLUSIVE     ╙├╘┌═°┬τ╗╖╛│╓╨╢╘╥╗╕÷╬─╝■╥¬╟≤╗Ñ│Γ╖├╬╩íú╚τ╘┌═°
  13763. ┬τ╓╨░┤╣▓╧φ╖╜╩╜(SHARED) ┤≥┐¬╬─╝■, ╘≥╘╩╨φ╢α╕÷╙├╗º═¼╩▒╩╣
  13764. ╙├╕├╬─╝■íú
  13765. NEW     ╘┌╧┬╥╗╕÷┐╒╧╨╣ñ╫≈╟°╓╨┤≥┐¬╩²╛▌┐Γíú
  13766. READONLY     ░┤╓╗╢┴╖╜╩╜┤≥┐¬╬─╝■íú
  13767. ╦╡├≈:     ▓╗┤°╚╬║╬▓╬╩²╡─USE ├ⁿ┴ε╜½╘┌╡▒╟░╣ñ╫≈╟°╓╨╣╪▒╒
  13768. ╥╗╕÷┤≥┐¬╩²╛▌╬─╝■╥╘╝░╦ⁿ╡─╦∙╙╨╦≈╥²╬─╝■íú╘┌═°┬τ
  13769. ╓╨, ╓╪╨┬┤≥┐¬╥╗╕÷╥╤░┤EXCLUSIVE ╖╜╩╜┤≥┐¬╗≥▒╗╞Σ╦√╙├╗º╙├FLOCK() ╦°
  13770. ╢¿╡─╬─╝■╜½╗ß╩╣╡├NETERR() ╖╡╗╪.T. ╓╡íú
  13771. └²╫╙: use my index name
  13772.     select 2
  13773.     use he index no
  13774.     
  13775. ▓╬╝√: @2438 [dbusearea](), @2472 [netuse]()    
  13776.  
  13777. .3033
  13778. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13779. @30[╧╘╩╛╩Σ│÷╩Σ╚δ├ⁿ┴ε]
  13780.  
  13781. wait
  13782. ╙∩╖¿: wait [<expPrompt>] [to <idVar>]
  13783. ╙├═╛:     ╙├╙┌╘▌═ú╙ª╙├│╠╨≥╡─╓┤╨╨╓▒╡╜▓┘╫≈╒▀╙├╗≈╝ⁿ
  13784. ╧∞╙ªíú╩Σ╚δ╡─╝ⁿ╓╡▒╗╖┼╚δ╓╕╢¿╡─▒Σ┴┐╓╨íú
  13785. ▓╬╩²:     
  13786. <expPrompt>     ╘┌╞┴─╗╔╧╧╘╩╛╡─╠ß╩╛╫╓╖√
  13787. <idvar>     ▒ú┤µ╝ⁿ╚δ╓╡╡─╫╓╖√▒Σ┴┐íú╚τ╣√─┌┤µ▒Σ┴┐<idvar> ▓╗┤µ╘┌╗≥╢╘
  13788. ╡▒╟░▓╗┐╔╝√, ╘≥╜¿┴ó╥╗╕÷PRIVATE ╨═▒Σ┴┐íú
  13789. └²╫╙: wait " ░┤╚╬╥╗╝ⁿ╝╠╨°... " // ╞┴─╗╧╘╩╛"░┤╚╬╥╗╝ⁿ╝╠╨°..."
  13790.                     // ╙├╗º╚╬╟├╥╗╝ⁿ│╠╨≥╜½╝╠╨°╓┤╨╨
  13791.  
  13792. ▓╬╝√: @3007[accept... to], @3402[input]
  13793.  
  13794. .3151
  13795. winbase╝╝╩⌡▓╬┐╝╩╓▓ß
  13796. @31[╩²╛▌┐Γ├ⁿ┴ε]
  13797.  
  13798. zap
  13799. ╙∩╖¿: zap
  13800. ╙├═╛: ╙├╙┌╘┌╩²╛▌┐Γ╓╨┐∞╦┘╔╛│²║═╤╣╦⌡╦∙╙╨╝╟┬╝íú
  13801. ▓╬╩²: ╬▐
  13802. ╦╡├≈:     ╕├├ⁿ┴ε╘┌╟σ┐╒╩²╛▌┐Γ╡─═¼╩▒╜½╟σ┐╒╙δ╩²╛▌┐Γ
  13803. ╢╘╙ª╡─╦≈╥²╬─╝■║═▒╕╫ó╬─╝■íú╘┌═°┬τ╓╨, ╙ª▒ú╓ñ░┤EXCLUSIVE ╖╜╩╜
  13804. ╩╣╙├╬─╝■íú
  13805. └²╫╙: use my index name, age
  13806.     zap
  13807.     ? eof() // ╖╡╗╪.T.
  13808.     
  13809. ▓╬╝√: @3114[delete], @3129[pack], @3131[reindex]    
  13810.  
  13811. .700
  13812.             Winbase ╜Γ╩═╞≈╓º│╓╚τ╧┬├ⁿ┴ε
  13813.  
  13814.             
  13815. ú└ <nRow>, <nCol> [say <exp> [picture <clause>]] [get <exp> [picture <clause>];
  13816.      [range <exp, exp>] [valid <exp>]] [clear];
  13817.  
  13818. ú└ t, l, b, r BOX <string>
  13819.  
  13820. ! or RUN <DOS command or file>
  13821.  
  13822. ? [<exp>]
  13823.  
  13824. ?? [<exp>]
  13825.  
  13826. <var>: = <exp>
  13827.  
  13828. accept [<string>] to <memvar>
  13829.  
  13830. append blank
  13831.  
  13832. call <procedure> [with <param1> [, <parameter list>]]
  13833.  
  13834. clear
  13835.  
  13836. cls
  13837.  
  13838. copy [structure] to <cFilename>
  13839.  
  13840. dir [<drive>] [<path>] [<skeleton>]
  13841.  
  13842. display [<exp> [, <expression list>]]
  13843.  
  13844. delete [<scope>] [FOR/WHILE <expression>].
  13845.  
  13846. do <procedure> [with <param1> [, <parameter list>]]
  13847.  
  13848. erase <file name>. <extension>
  13849.  
  13850. exit
  13851.  
  13852. go [to] <exp>/TOP/BOTTOM
  13853.  
  13854. index on <key expression> to <ntxfile>
  13855.  
  13856. input [<string>] to <var>
  13857.  
  13858. list [<exp> [, <expression list>]]
  13859.  
  13860. pack
  13861.  
  13862. quit
  13863.  
  13864. read
  13865.  
  13866. recall [<scope>] [FOR/WHILE <expression>].
  13867.  
  13868. release <var>
  13869.  
  13870. replace <fieldname> with <expression>
  13871.  
  13872. return ** Returns to previous level **
  13873.  
  13874. seek <exp>
  13875.  
  13876. select <exp>/<alias> ** variables not usable **
  13877.  
  13878. set color to <expression>
  13879.  
  13880. set decimals to <expression>
  13881.  
  13882. set default to <drive>
  13883.  
  13884. set delimiters <ON/OFF>
  13885.  
  13886. set delimiters to [<string>] / [DEFAULT]
  13887.  
  13888. set filter to [<filter expression>]
  13889.  
  13890. set escape <ON/OFF>
  13891.  
  13892. set exact <ON/OFF>
  13893.  
  13894. set exclusive <ON/OFF>
  13895.  
  13896. set fixed <ON/OFF>
  13897.  
  13898. set function <function key number> to <string>
  13899.  
  13900. set intensity <ON/OFF>
  13901.  
  13902. set index to [<ntxfile> [, <ntxlist>]]]
  13903.  
  13904. set key <ascii key number> to <string>
  13905.  
  13906. set path to [<path expression>]
  13907.  
  13908. set order to [<expN>]
  13909.  
  13910. set relation to [<key expression> into <alias>]
  13911.  
  13912. skip [<exp>]
  13913.  
  13914. type <file name>. <extension>
  13915.  
  13916. unlock [ALL]
  13917.  
  13918. use [<cFilename> [index <ntxfile> [, <ntxlist>]]] [alias <alias name>]
  13919.  
  13920. exclusive
  13921.  
  13922. wait [ [<string>] [to <var>]]
  13923.  
  13924. zap
  13925.  
  13926.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  13927.  
  13928. ╕╜┬╝A     Winbase  ▒α╝¡╞≈▓┘╫≈
  13929.  
  13930. .699
  13931.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  13932.  
  13933. óσ╬─╝■▓┘╫≈
  13934. <F2>             ┤µ╓ⁿ╡▒╟░╬─╝■▓ó╝╠╨°▒α╝¡
  13935. <F3>             ╡≈╚δ╨┬╡─╬─╝■
  13936. <F8>             ═¼╩▒▒α╝¡┴φ═Γ╥╗╕÷╬─╝■
  13937. <Ctrl_F10>         ┤µ┼╠▓ó═╦│÷
  13938. <ESC>         ═╦│÷╡▒╟░▒α╝¡╬─╝■, ╚⌠╬─╝■╬┤┤µ┼╠, ╘≥╗ß╠ß╨╤─π┤µ┼╠
  13939.  
  13940. óµ╝≥╡Ñ▒α╝¡▓┘╫≈
  13941. <Ins>             ╘┌▒α╝¡╞≈╡─▓σ╚δ╙δ╕▓╕╟╫┤╠¼╓«╝Σ╜°╨╨╫¬╗╗
  13942. <Del>             ╔╛│²╡▒╟░╫╓╖√╗≥╥╤▒Ω╝╟╡─╬─▒╛┐Θ
  13943. <BackSpace>         ╧≥╫≤╔╛│²╥╗╕÷╫╓╖√
  13944. <Tab>             ▓σ╚δTAB ╓╡(4 ╕÷╫╓╖√│ñ)
  13945. <Enter>         ▓σ╚δ╥╗╨╨
  13946. <Ctrl_Y>         ╔╛│²╡▒╟░╨╨
  13947.  
  13948. óτ╣Γ▒Ω╥╞╢»▓┘╫≈
  13949. <Up>             ╔╧╥╞╥╗╨╨
  13950. <Down>         ╧┬╥╞╥╗╨╨
  13951. <Left>             ╫≤╥╞╥╗╕÷╫╓╖√
  13952. <Right>         ╙╥╥╞╥╗╕÷╫╓╖√
  13953. <Home>         ╥╞╡╜▒╛╨╨╡┌╥╗╕÷╫╓╖√
  13954. <End>             ╥╞╡╜▒╛╨╨╫ε║≤╥╗╕÷╫╓╖√
  13955. <Ctrl_Left>         ╫≤╥╞╥╗╕÷┤╩
  13956. <Ctrl_Right>         ╙╥╥╞╥╗╕÷┤╩
  13957. <PgDn>         ╧┬╖¡╥╗╥│
  13958. <PgUp>         ╔╧╖¡╥╗╥│
  13959. <Ctrl_PgDn>         ╖¡╡╜╬─╝■╫ε║≤╥╗╥│
  13960. <Ctrl_PgUp>         ╖¡╡╜╬─╝■╡┌╥╗╥│
  13961. <Ctrl_G>         ╫¬╡╜╓╕╢¿╡─╨╨
  13962. <Ctrl_W>         ╔Φ╢¿╫≤╙╥╖¡╥│┐φ╢╚(╚▒╩í╬¬40)
  13963. <F5>            ╦ó╨┬╞┴─╗
  13964. <F6>             ░┤╒╒╓╕╢¿╖¡╥│┐φ╢╚╙╥╖¡╥╗╥│
  13965. <F7>             ░┤╒╒╓╕╢¿╖¡╥│┐φ╢╚╫≤╖¡╥╗╥│
  13966.  
  13967. óΦ▓Θ╒╥╠µ╗╗
  13968. <Ctrl_S>         ╩Σ╚δ┤²▓Θ╫╓╖√┤«▓ó╧≥║≤▓Θ╒╥
  13969. <Ctrl_O>         ╝╠╨°╧≥║≤▓Θ╒╥
  13970. <Ctrl_L>         (╝╠╨°) ╧≥╟░▓Θ╒╥
  13971. <Ctrl_R>        ▓Θ╒╥╠µ╗╗íú░┤╠ß╩╛╩Σ╚δ╘¡╫╓╖√┤«╝░╨┬╫╓╖√┤«║≤, ┤╙╡▒
  13972. ╟░╬╗╓├┐¬╩╝╧≥║≤╜°╨╨╠µ╗╗íú┐╔╥╘╙╨╤í╘±╡╪╠µ╗╗, ╥▓┐╔
  13973. ╥╘╚½▓┐╥╗┤╬╠µ╗╗
  13974.  
  13975. óΘ┐Θ╤í╘±╙δ▓┘╫≈
  13976. <Shift_Left>         ╧≥╫≤╤í╘±╥╗╕÷╫╓╖√
  13977. <Shift_Right>         ╧≥╙╥╤í╘±╥╗╕÷╫╓╖√
  13978. <Shift_Up>         ╧≥╔╧╤í╘±╥╗╨╨
  13979. <Shift_Down>         ╧≥╧┬╤í╘±╥╗╨╨
  13980. <Shift_PgUp>         ╧≥╔╧╤í╘±╥╗╥│
  13981. <Shift_PgDn>         ╧≥╧┬╤í╘±╥╗╥│
  13982. <Ctrl_C>     ╔Φ╢¿╛╪╨╬┐Θ╤í╘±╖╜╩╜, ┐╔╥╘═¿╣²╕≈╓╓▒α╝¡╝ⁿ, ╤í╘±╥╗╕÷
  13983. ╛╪╨╬╖╜┐Θ╡──┌╚▌
  13984. <Ctrl_H>         ╖┼╞·╦∙╙╨┐Θ╤í╘±╖╜╩╜
  13985. <Ctrl_Enter>         ╜½╤í╘±║├╡─┐Θ╦═╚δ▓├╝⌠░σ, ╘¡┐Θ▓╗▒Σ
  13986. Shift_Del>         ╜½╤í╘±║├╡─┐Θ╦═╚δ▓├╝⌠░σ, ╘¡┐Θ▒╗╔╛│²
  13987. <Ctrl_BackSpace>     ╜½╤í╘±║├╡─┐Θ╔╛│²╡⌠, ▓╗╦═╚δ▓├╝⌠░σ
  13988. <Shift_Ins>         ╜½▓├╝⌠░σ╓╨╡──┌╚▌╒│╠∙╡╜╡▒╟░╬╗╓├
  13989.  
  13990.     @1[WinBase╝╝╩⌡▓╬┐╝╩╓▓ß]
  13991.  
  13992.  
  13993.  
  13994.