«á¤@¶ «e¤@¶ ¦^¥Ø¿ý ¦^º¶ |
5¡B§ïÅÜÄæ¦ìªºÅã¥Ü¶¶§Ç¡C«ö¤@¤ULastInvoiceDate Äæ¦ì¨Ã±N¥¦©ì©ñ¨ìÄæ¦ì¦C¥Ü¤è¶ô¤¤ªº²Ä¤T¦æ¡A§Y³B©óCompany©MPhoneÄæ¦ì¤§¶¡¡C¦¹®Éµ¡Å餤Åã¥ÜCustomer.DB ªí¤¤°O¿ýªºÄæ¦ì±N«ö·sªº¶¶§ÇÅã¥Ü¡C ¢µ¡B¿ï¾ÜClose«ö¶s¡AÃö³¬Äæ¦ì½s¿è¾¹Fields Editor¡C ¢¶¡B«öF9¡A°õ¦æ¤Wzµ{¦¡¡C 14.4.2 Äæ¦ìª«¥óªºÄݩʳ]©w¡@ ÁöµMÄæ¦ìª«¥ó¬O¤£¥i¨£ªºª«¥ó¡A¦ý¬O¥¦¦P¼Ë¨ã¦³«Ü¦hªºÄÝ©Ê¡C¦bµ{¦¡³]p¶¥¬q¡A§Ú̳q¹L¤@©wªº¤è¦¡¥i¥H³]©w¥¦ªº¦³ÃöÄÝ©Ê¡A¤U±¬O³]©wÄæ¦ìª«¥óªºÄݩʪº¤èªk©M¨BÆJ¡C ¢°¡B¿ï¾Üµ¡Å餤ªºtable1¡C ¢±¡B³sÄò«ö¨â¤Utable1¡A¥´¶}Äæ¦ì½s¿è¾¹Fields Editor¡C ¢²¡B¿ï¾Ün³]©wÄݩʪºÄæ¦ì¡C ¢³¡B¦bObject Inspector¤¤×§ïÄæ¦ìª«¥óªºÄÝ©Ê¡C §ÚÌ¥i¥H«ö¤Wz¤èªk³]©wTable1¤¤¦UÄæ¦ìª«¥óªº¦³ÃöÄÝ©Ê¡A·í§ÚÌ¿ï¾ÜCustnoÄæ¦ì¨Ãקï¨äÄÝ©Ê¡Aµ¡Å餺·|¥X²{¹ï¸Ü Äæ¦ìª«¥óªºÄÝ©Ê ×§ïÄæ¦ìCustNoªºAlignmentÄݩʬ°taCenter¡A¦¹®Éºô®æ¤¤Åã¥ÜªºCustNo Äæ¦ìÈ¥Ñì¨Óªº¥k¹ï»ôÅܦ¨¤F©~¤¤¡C ªí14.5¤¤¦C¥X¤FÄæ¦ìª«¥ó¦b³]p¶¥¬q¥i¥Hק諸ÄÝ©Ê¥H¤ÎÄݩʱÔz¡@ ªí14.5 Äæ¦ìª«¥óªº«nÄÝ©Ê ¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w ÄÝ ©Ê ª` ÄÀ ¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X Alignment ±ÔzÄæ¦ìȪºÅã¥Ü¤è¦¡¡G¥ª¹ï»ô¡B¥k¹ï»ô¡B©~¤¤ ¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X Calculated ·í¸ÓÄÝ©ÊȬ°True®É¡Aªí©ú¸ÓÄæ¦ìªºÈ¬O®Ú¾Ú¨ä¥¦¦r ¬qªºÈpºâ±o¨Óªº¡C§_«h¸ÓÄæ¦ì¬O¸ê®Æ®wªí¤¤ªºÄæ¦ì ¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X DisplayLabel ±ÔzÄæ¦ì¦bºô®æ³¡¥ó¤¤Åã¥Ü®Éªº¼ÐÃD¡A¯Ê¬Ù±¡ªp¤U¦r ¬qªº¼ÐÃD´N¬OÄæ¦ì¦W ¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X DisplayWidth ±ÔzÄæ¦ì¦bºô®æ¤¤Åã¥Ü®É©ÒÂIªº¦C¼e«×¡A§Y¦r¤¸¼Æ ¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X DisplayFormat ±ÔzÄæ¦ì¦bÅã¥Ü©M½s¿èª¬ºA¤UªºÅã¥Ü®æ¦¡©M¿é¤Jªº¹L and EditMask Âo±ø¥ó(©w¥Î¤á¿é¤JÄæ¦ìȪº½d³ò)¡C ¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X FieldName ¦b¸ê®Æ®wªí¤¤¹ïÀ³©ó¸ÓÄæ¦ìª«¥óªºÄæ¦ì¼Ðñ ¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X Index «ü©w¸ÓÄæ¦ìª«¥ó¦b¼Æ¾Ú¶°³¡¥ó¤¤ªºÅÞ¿è¦ì¸m¡A¦pTable1 ¤¤ªº²Ä¤@ÓÄæ¦ìª«¥óªºIndexȬ°¢¯ ¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X Name Äæ¦ìª«¥óªº¼Ðñ¡A¯Ê¬Ù±¡ªp¤U¡A¥¦¬OTTable¡BTQuery ³¡¥óªº¼Ðñ¥[¤WÄæ¦ìªº¼Ðñ¡C¦p¤W¨Ò¤¤ªºCUSTNOÄæ¦ì ª«¥óªºNameÄÝ©ÊȬ°Table1CUSTNO¡A³q¹LÄæ¦ìª«¥óªº NameÄÝ©Ê¥i¥H¦s¨ú¸ÓÄæ¦ìªºÈ¡A¦pTable1CUSTNO.Value ¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X ReadOnly ±Ôz¸ÓÄæ¦ì¬O§_¯à³Qקï¡A·í¸ÓÄÝ©ÊȬ°True®É¡A¸Ó Äæ¦ìªº¤£¯à³Q×§ï ¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X Visible ·í¸ÓÄÝ©ÊȬ°True®É¡A¦b»P¤§¬Û³sªººô®æ³¡¥ó¤¤±N¤£ Åã¥Ü¸ÓÄæ¦ì ¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w ®Ú¾Úªí14.5¤¤ªºÄÝ©Ê¡A §ÚÌ¥i¥Hקï¤W¨Ò¤¤¤@¨ÇÄæ¦ìªº¬Y¨ÇÄÝ©Ê¡A ¨Ïºô¸ô¤¤Åã¥ÜªíCustomer.DB¤¤ªº°O¿ý§ó²Å¦X§Ú̪º¤u§@²ßºD¡Cק諸Äݩʦpªí14.6©Ò¥Ü¡A ¸g¹Lקï«áªºµ{¦¡°õ¦æµ²ªG¦p¹Ï14.10©Ò¥Ü¡C ªí14.6 קï«áªºÄæ¦ìª«¥óªºÄÝ©Ê ¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w ¦r ¬q ÄÝ ©Ê ÄÝ ©Ê È ¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X CustNo DisplayLabel ¥Î¤á½s¸¹ ¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X Company DisplayLabel ¤½¥q¼Ðñ ¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X Phone DisplayLabel ¹q¸Ü¸¹½X ¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X LastInvoiceDate DisplayLabel ÁʶR¤é´Á ¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w קïÄæ¦ìª«¥óªºÄÝ©Ê ¡@ 14.4.4 Äæ¦ìª«¥óªº¦s¨ú ¡@ Äæ¦ìª«¥ó¦bÀ³¥Îµ{¦¡¤¤¦³°ÊºA²£¥Íªº¡A¤]¦³³q¹LÄæ¦ì½s¿è¾¹Fields Editor «Ø¥ßªº¥Ã¤[©Êªº¡A¥¦ÌÁöµM¦b³]p©M°õ¦æ¶¥¬q³£¬O¤£¥i¨£¡A¦ý¬O¥¦Ì¸ò¨ä¥Lªºª«¥ó¤@¼Ë³£¾Ö¦³¦Û¤vªºÄÝ©Ê¡B¤èªk©M¨Æ¥ó¡A¦]¦¹§Ú̦bÀ³¥Îµ{¦¡¤¤¬O¥i¥H¹ïÄæ¦ìª«¥ó¶i¦æ±±¨î©M¦s¨úªº¡C ¦]¬°°ÊºAÄæ¦ìª«¥ó¬O¨S¦³¦Û¤vªº¦W¦rªº¡A¥Ã¤[©ÊªºÄæ¦ìª«¥ó¦³¦Û¤vªº¦W¦r¡A©Ò¥H¹ï³o¨âºØÄæ¦ìª«¥óªº¦s¨ú¤èªk¬O¤£¤@¼Ëªº¡C 14.4.4.1 °ÊºAÄæ¦ìª«¥óªº¦s¨ú °ÊºAÄæ¦ìª«¥ó¦s¦b©ó¼Æ¾Ú¶°³¡¥óTTable©MTQuery³¡¥ó¤¤¡A¥¦Ì¬OÀHµÛºÏºÐ¤Wªº¸ê®Æ®w¤å¥óªº¥´¶}¦Ó°ÊºA²£¥Íªº¡A¨Ã¥B¨C¤@ÓÄæ¦ìª«¥ó¹ïÀ³©ó¸ê®Æ®wªí¤¤ªº¤@ÓÄæ¦ì¡]§Y°O¿ýªº¤@¦C¡^¡ATTable©ÎTQrery³¡¥ó¤¤©Ò¦³ªºÄæ¦ìª«¥ó¦s¦bÄÝ©ÊFields²M³æ¤¤¡AFields²M³æ¤¤ªºÄæ¦ìª«¥ó´N¹³¼Æ¸s¸s²Õ¤¸¯À¤@¼Ë¾Ö¦³¦Û¤vªº¯Á¤Þ¸¹¡A§ÚÌ¥i¥H¥Î³oÓ¯Á¤Þ¸¹¨Ó¦s¨úÄæ¦ìª«¥ó¡C¯Á¤Þ¸¹¦bµ{¦¡°õ¦æ®É½áÈ¡A±q0¶}©l¡Aªí¤¤³Ì¥ªÃ䪺¤@¦C¡]²Ä¤@ÓÄæ¦ì¡^ªº¯Á¤Þ¸¹¬°0¡Aºò±µµÛ¥kÃä¤@Ó¬°1¡A¥H¦¹Ãþ±À¡C¦s¨ú³o¨ÇÄݩʪº¤èªk©M³B²z¨ä¥Lª«¥ó¤@¼Ë¡C¡@ Table1.Fields[0].DisplayLabel:='¼ÐÃѲÅ'¡@ ¤Wz¥N½XÅý§Ú̦s¨ú»PTable1¬Û³sªº¸ê®Æ®wªí¤¤ªº²Ä¤@ÓÄæ¦ì¡A¨Ã¬°¸ÓÄæ¦ì«ü©w¤@Ó¼ÐÃD¡A³o¬O³q¹L³]©w¥¦ªºDisplayLabelÄÝ©ÊȬ°¤@Ó¯S©wªº¼ÐÃѲŨӹê²{ªº¡C ³q¹L¯Á¤Þ¸¹¨Ó¦s¨úFieldsÄݩʤ¤ªºÄæ¦ì¦b¨Ï¥ÎFor¦^°é¹ï¦C¸¹¶i¦æ¡¥N®É·|«D±`¦³¥Î¡C¦ý¬O¦b¤j¦h¼Æ²³æÀ³¥Îµ{¦¡¤¤¡A³q¹L¦C¦W¡]Äæ¦ì¦W¡^¨Ó¦s¨úÄæ¦ì·|§ó¥[©ú¥Õ¦Ó¥B©öŪ¡C¦bTTable³¡¥ó¤¤¡A´£¨Ñ¤F¤@Ó¦W¬°FieldByNameªº¤èªk¥H«KÅý§Ú̳q¹L¦C¦W¦s¨úÄæ¦ìª«¥ó¡C Table1.FieldByName('CustNo').DisplayLabel:='¼ÐÃѲÅ' ³q¹L³oºØ³~®|¦P¼Ë¥i¥H¦s¨úCUSTOMER.DBªí¤¤ªºCustNoÄæ¦ì¡A ¨Ã¬°¸ÓÄæ¦ì«ü©w¤@Ó¼ÐÃD¸ê°T¡C ²{¦b§ÚÌ¥i¥H«Ø¥ß¤@Ó¤¹³\¥Î¤á³q¹LÄæ¦ì¦W©M¯Á¤Þ¸¹¨Ó¦s¨úCustomer.DB ªí¤¤ªºÄæ¦ìª«¥óªºÂ²³æµ¡Åé¡C Äæ¦ìª«¥óªº¦s¨ú ¦b¸ÓÀ³¥Îµ¡Å骺°õ¦æ¹Lµ{¤¤¡A§Ú̳q¹Lµ{¦¡¨Ó¦s¨ú¨ä¤¤ªºÄæ¦ìª«¥ó¨Ã³]©w¦³ÃöªºÄÝ©Ê¡A³o¤@±±¨î¹Lµ{§ÚÌ©ñ¦bµ¡Å骺OnCreate¨Æ¥ó³B²z¹Lµ{¤¤¡C ¨Ò14.1 ¦bµ¡Å骺Oncreate¨Æ¥ó³B²z¹Lµ{¤¤¦s¨úÄæ¦ìª«¥ó¡C¡@ procedure TForm1.FormCreate(Sender:TObject); Begin with Table1 Do begin {³q¹L¯Á¤Þ¸¹¦s¨úÄæ¦ìª«¥ó} Field[0].DisplayLabel:='¥Î¤á½s¸¹'; {³q¹LÄæ¦ì¦W¦s¨úÄæ¦ìª«¥ó} FieldByName('Company').DisplayLabel:='¤½¥q¼Ðñ'; FieldByName('Phone').DisplayLabel:='¹q¸Ü¸¹½X'; FieldByName('LastInvoiceDate').DisplayLabel:='ÁʶR¤é´Á'; end; end;¡@¡@ ¦bµ{¦¡°õ¦æ¹Lµ{¤¤¦s¨úÄæ¦ìª«¥ó¡@ 14.4.4.2 ¥Ã¤[©ÊÄæ¦ìª«¥óªº¦s¨ú¡@ ³q¹LÄæ¦ì½s¿è¾¹Fields Editor «Ø¥ßªº¥Ã¤[©ÊÄæ¦ìª«¥óªº¦s¨ú¬Û¹ï©ó°ÊºAÄæ¦ìª«¥óªº¦s¨ún²³æ±o¦h¡A§Ú̦bµ{¦¡¤¤¥i¥Hª½±µ³q¹LÄæ¦ìª«¥óªº¼Ðñ¡]§YNameÄÝ©Ê¡^¶i¦æ¦s¨ú¡C ¨Ò¦p¡G Table1CustNo.DisplayLabel:='¥Î¤á½s¸¹'; Table1CustNo.DisplayWidth:=12; 14.4.4.3 Äæ¦ìª«¥óªºÅª¨ú©M½áÈ¡@ ³q¹LÄæ¦ìª«¥óªºValueÄÝ©Ê¡A§ÚÌ¥i¥HŪ¨úÄæ¦ìª«¥óªºÈ¡A¨Ò¦p¦b¦p¹Ï14.13©Ò¥Üªºµ¡Å餤¡A«ö¤@¤URead«ö¶s«K¥i¥H±NCustomer.DBªí¤¤¥Ø«e°O¿ýªºCOMPANYÄæ¦ìªºÈŪ¨ú¨ì½s¿è®ØEdit1¤¤¡C¡@ Ū¨úÄæ¦ìª«¥óªºÄæ¦ìÈ µ¡Å餤¦U³¡¥óªºÄݩʦpªí14.7©Ò¥Ü¡@ ªí14.7 ¦U³¡¥óªºÄÝ©Ê ¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w ³¡¥óªºÄÝ©Ê ÄÝ ©Ê È ¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X¡X Button1.Caption &Read Button1.Name Button1 Label1.Caption Äæ¦ìÈ Label1.Name Label1 Edit1.Text Edit1.Name Edit1 ¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w ¡@ ¨ä¥¦³¡¥óªºªºÄݩʸò«e±ªº¨Ò¤l¤@¼Ë¡C ¬°Read«ö¶s½s¿èªºOnClick¨Æ¥ó³B²z¹Lµ{¦p¤U¡G¡@ procedure Form1.TButton1Click(Sender:TObject); begin Edit1.Text:=Table1Company.Value; end; ¦b³oùØnª`·Nªº¬O¡G±qÄæ¦ìª«¥ó¤¤Åª¨úÄæ¦ìȮɥ²¶·n±N¥¦½áµ¹»P¤§¼Æ¾Ú«¬¦¡¬Û¤Ç°tªºÅܼơA§_«h·|¥X¿ù¡C¦b¤W±ªºµ{¦¡¥N½X¤¤¡ATable1Companyªº«¬¦¡¬OTStringField §Y¬O¦r¤¸¦ê«¬¦¡ªºÄæ¦ì¡A¦Ó½s¿è®ØEdit1ªºÄÝ©ÊTextªº«¬¦¡¤]¬O¦r¤¸¦ê«¬ªº¡A ¦]¦Ó¥¦Ì¬O¤Ç°tªº¡C¦pªG«¬¦¡¤£¤Ç°t¡A«hn¸g¹L¤@©wªºÂà´«¤~¯à°÷¬Û¤¬½áÈ¡C¦p¡G¡@ Edit1.Text:=Table1CustNo.Value¡@ ³o±ø¥N½X¦b°õ¦æ¹Lµ{¤¤±N·|¥X¿ù¡A¦]¬°TablelcustNo¬OTFloatField «¬¦¡§Y¬O¼ÆÈ«¬¼Æ¾Ú¡An¦b½s¿è®ØEdit1¤¤Åã¥Ü¼ÆÈ«¬¼Æ¾Ún¸g¹L¤U¦CÂà´«¡G¡@ Edit1.text:=Table1CustNo.AsString;¡@ AsString¬OÄæ¦ìª«¥óªºÄÝ©Ê¡A³q¹LÄæ¦ìª«¥óªºAsStringÄÝ©Ê¥i¥HŪ¨úÄæ¦ìȨåB±N¥¦Âà´«¦¨¦r¤¸¦ê«¬¦¡¡CÄæ¦ìª«¥óªºÄæ¦ìÈ¥i¥HÂà´«¦¨¥H¤U´XºØ«¬¦¡ªº¼Æ¾Ú: AsString: ±NÄæ¦ìÈÂà´«¦¨¦r¤¸¦ê¼Æ¾Ú AsBoolean: ±NÄæ¦ìÈÂà´«¦¨¥¬º¸«¬¼Æ¾Ú AsDateTime: ±NÄæ¦ìÈÂà´«¦¨¤é´Á®É¶¡¼Æ¾Ú AsFloat: ±NÄæ¦ìÈÂà´«¦¨¼ÆÈ«¬¼Æ¾Ú AsInteger: ±NÄæ¦ìÈÂà´«¦¨¾ã¼Æ«¬¼Æ¾Ú ¤U±ªºµ{¦¡¥N½X¬O±qÄæ¦ìª«¥ó¤¤Åª¨úÄæ¦ìȨñN¥¦Åã¥Ü¦b½s¿è®ØEdit1¤¤¡A ©ÎªÌ±NÄæ¦ìȽᵹ¬Û¤Ç°tªºÅܼơC¡@ CustNoDouble: Double; CustNoInt: Integer; CustNoString: String; {¦bEdit1¤¤Åã¥ÜÄæ¦ìÈ} Edit1.Text:=Table1Company;{«¬¦¡¬Û¤Ç°t¡A¤£»ÝnÂà´«} Edit1.Text:=Table1CustNo.AsString;{«¬¦¡¤£¤Ç°t¡A»ÝnÂà´«} {±NÄæ¦ìȽᵹÅܼÆ} CustNoDouble:=Table1CustNo.Value;{«¬¦¡¬Û¤Ç°t¡A¤£»ÝnÂà´«} CustNoInt:=Table1CustNo.AsInteger;{«¬¦¡¤£¤Ç°t¡A»ÝnÂà´«} CustNoString:=Table1CustNo.AsString;{«¬¦¡¤£¤Ç°t¡A»ÝnÂà´«} 14.4.5 ³]©wÄæ¦ìª«¥óªºÅã¥Ü®æ¦¡¡@ §Ú̧Y¥i¥H¦b³]p¶¥¬q³]©wÄæ¦ìª«¥óªºÅã¥Ü®æ¦¡¡A¤]¥i¥H¦b°õ¦æ¹Lµ{¤¤³q¹Lµ{¦¡¥N½X¨Ó³]©wÄæ¦ìª«¥óªºÅã¥Ü®æ¦¡¡C ¨Ò14.2 ¦b¦p¹Ï14.10©Ò¥Üªºµ¡Å餤¡A¦A¼W¥[¤@ÓTaxRateÄæ¦ì¡A ¨Ã¦bµ{¦¡³]p¹Lµ{¤¤³]©w¥¦ªºÅã¥Ü®æ¦¡¬°0.00%¡A§Y³]©wTaxRateÄæ¦ìª«¥óªºDisplayFormatÄݩʬ°0.00% ¡A YTaxRateªºÈ¬°0.085¨º»ò¦bºô®æ³¡¥ó¤¤¨äÅã¥Üªº®æ¦¡¬°8.50%¡C ¦b°õ¦æ¹Lµ{¤¤§Ú̳q¹Lµ{¦¡¥N½X¨Ó³]©wÄæ¦ìPhoneªºÅã¥Ü®æ¦¡¡A ¬ü°êªº¹q¸Üªí¥Ü§Î¦¡»P¤¤°êªºªí¥Ü§Î¦¡¤£¤@¼Ë¡]¦p¬ü°ê808-555-0269,¤¤°ê(808) 5550269 ¡^¡A ¬°¦¹§Ú̱Nphone Äæ¦ìªºÈªí¥Ü¦¨¤¤°ê¦¡ªº§Î¦¡¡C ¨ãÅé¤èªk¬O¡G¦b Object Inspector ¤¤¿ï¨úTable1phoneª«¥ó¡A¨Ã¬°¦¹ª«¥óªºOnGetText¨Æ¥ó½s¼g¦p¤Uµ{¦¡¥N½X¡G TForm1.Table1PhoneGetText(Sender:TField; Text:OpenString;DisplayText:Boolean); begin If DisplayText then begin Text:=Table1Phone.Value; Delete(Text,4,1); Delete(Text,7,1); Insert('(',Text,1); Insert(')',Text,1); end; end; ¹Ï14.14 ³]©wÄæ¦ìª«¥óªºÅã¥Ü®æ¦¡ 14.4.6 ¦Û©w¸qÄæ¦ì¥H¤ÎpºâÄæ¦ìª«¥óªº«Ø¥ß¡@ ¦³®ÉÔ¬°¤F¨ÏÀ³¥Îµ{¦¡§¹¦¨©Ò´Á±æªº¤u§@¡A§ÚÌn¦b¸ê®Æ®wªí²{¦³Äæ¦ìªº°ò¦¤W¼W¥[¤@¨Ç¦Û©w¸qªºÄæ¦ì¡A³o¨ÇÄæ¦ì¨Ã¤£¬O¸ê®Æ®wªí¤¤¹ê»Ú¦s¦bªºÄæ¦ì¡A¥¦Ì±`±`¬O®Ú¾Ú¸ê®Æ®wªí¤¤ªº¨ä¥¦ªºÄæ¦ì°ÊºA¦apºâ¥X¨Óªº¡A¦]¦Ó¥¦Ì±`±`³QºÙ¬°pºâÄæ¦ì¡C ¨Ò¦p§Ú̫إߤ@ÓÂsÄýORDERS.DBªí¤¤°O¿ýªºÀ³¥Î¦p¹Ï14.15©Ò¥Ü¡C ÂsÄýORDERS.DBªí¤¤ªº°O¿ý ¡@ º¥ý¡A§ÚÌ·Q¦bÅã¥ÜOREDRES.DBªíªººô®æ¤¤¼W¥[¤@Ó¦Û©w¸qªºÄæ¦ìª«¥ó¡A§¹¦¨¥H¤U¨BÆJ¡G ¢°¡B³sÄò«ö¨â¤Uµ¡Å餤ªºTable1¡A¥´¶}Äæ¦ì½s¿è¾¹Fields Editor¡C ¢±¡B¦bFields Editorµøµ¡¤¤¡A«ö¤@¤U·Æ¹«¥kÁä¡A¿ï¾ÜNew Fields¿ï¾Üªí¶µ¡C ¢²¡BDelphiÅã¥ÜNew Fields¹ï¸Ü¤è¶ô¡C¿ï¾ÜField Type¦C¥Ü¤è¶ô¤¤ªºCurrency ¶µ¡A ¨Ã¦bField Name¤åÅé®Ø¤¤¿é¤JBalance ¡A ³o¼Ë§Ú̦۩w¸q¤F¤@Ó CurrencyField «¬¦¡ªºÄæ¦ìBalance¡CDelphi·|¦Û°Ê¦a¶ñ¤J¬ÛÀ³ªºÄæ¦ìª«¥ó¦W¡A¨ä¯Ê¬ÙȬ°Table1Balance¡C¦p¹Ï14.16©Ò¥Ü¡C¡@ ¹Ï14.16 New Field ¹ï¸Ü¤è¶ô ¡@ ¢³¡B«ö¤@¤UOk«ö¶s¡AÃö³¬New Field¹ï¸Ü¤è¶ô¡C·íFields Editor µøµ¡«·s¥X²{®É¡A ª`·NBalance¤w¸g¥X²{¦bFields¦C¥Ü¤è¶ô¤¤¡C ¢´¡B¦bFields Editor µøµ¡¤¤«ö¤@¤U·Æ¹«¥kÁä¡A ¨Ã¿ï¾Ü Add Fields ¿ï¾Üªí¶µ¡A ¥´¶}AddFields¹ï¸Ü¤è¶ô¡C ¢µ¡B±qAvailable Fields ¦C¥Ü¤è¶ô¤¤¡A «ö¦í Ctrl Áä¨Ã«ö¤@¤U·Æ¹«¥ªÁä¡A ¿ï¾ÜÄæ¦ì¡G OrderNo¡BCustNo¡BSaleDate¡BShipData¡BItemsTotal¡BAmountpaid¥H¤ÎBalance. ¢¶¡B«ö¤@¤UOK«ö¶s¡AÃö³¬Add Fields¹ï¸Ü¤è¶ô¡A±o¨ì¦p¹Ï14.17©Ò¥ÜªºFields Editorµøµ¡¡C¡@ ¹Ï14.17 Äæ¦ì½s¿è¾¹Fields Editor ¢·¡B³sÄò«ö¨â¤UFields Editorªº±±¨î²°Ãö³¬Äæ¦ì½s¿è¾¹Fields Editor¡C ¦Ü¦¹§Ṳ́w¸g¬°Table1«Ø¥ß¤F¤@Ó¦Û©w¸qªºÄæ¦ìª«¥óBalance¡A¤U±§Ú̧âBalanceÄæ¦ì³]©w¦¨pºâÄæ¦ìª«¥ó¡A¨Ï¨äÅã¥Ü¨C¤@ӥΤ᪺²{ª÷¾lÃB¡A§Y¦¹Äæ¦ìªºÈ¬O¥ÑORDERS. DBªí¤¤ItemsTotal©MAmountpaidÄæ¦ìªºÈpºâ¦Ó¨Óªº¡C¬°¨ÏÀ³¥Îµ{¦¡¹ê²{³oºØpºâ¥\¯à¡A§¹¦¨¥H¤U¨BÆJ¡G ¢°¡B¦bObject Inspector¤¤¿ï¾Ü¦Û©w¸qÄæ¦ìª«¥óTable1Balance¡Aקï¨ä CalculatedÄÝ©ÊȬ°True¡C§Y©w¸qBalanceÄæ¦ì¬°pºâÄæ¦ì¡C ¢±¡B¦bObject Inspectorµøµ¡¤¤¡A¿ï¾ÜTable1³¡¥óªºEvent¶¡C ¢²¡B³sÄò«ö¨â¤UOnCalcField¨Æ¥ó¡A¬°Table1OnCalcField½s¼g¨Æ¥ó³B²z¹Lµ{¦p¤U¡G procedure TForm1.Table1OnCalcFields(DataSet:TDataSet); begin Table1Balance.Value:=Table1ItemsTotal.Value-Table1AmountPaid.Value; end; ¡@ ÂsÄýORDERS.DB ¤¤ªº°O¿ý ¡@ 14.5 ¬d¸ß¸ê®Æ®w¤¤ªº°O¿ý ¡@ ¸ê®Æ®w¤¤Àx¦sµÛ¤j¶qªº¼Æ¾Ú¸ê°T¡A¦p¦ó¥R¤À¦³®Ä¦a¬d¸ß¨ä¤¤ªº¼Æ¾Ú¡A¹ï¥Î¤á¦Ó¨¥¬O¦ÜÃö«nªº¡C¦pªG·Q¬d¸ß¸ê®Æ®w¡Aº¥ýn½T©wn¬d¸ßªºÄæ¦ìn»ò¬O¸ê®Æ®wªí¤¤ªºÃöÁäÄæ¦ì¡An»ò¬O»²§U¯Á¤Þ¡C¦pªG§Ú̬d¸ßªº¬OParadox©ÎdBASE¸ê®Æ®w¨t²Î¤¤ªºªí¡A³o¬O°ß¤@ªº¿ï¾Ü¡C ¤@¯ë¦Ó¨¥¡A¬d¸ß¸ê®Æ®w¤¤ªº°O¿ýªº¤èªk¦³¨âºØ¡GGotokey¤èªk©MFindkey¤èªk¡C¨âºØ¤èªk¤Q¤À¬Û¦ü¡A¥Dn°Ï§O¦b©ó§Ú̦p¦ó«ü©w§ä¨ìÈ¡C³o¨âºØ¤èªkªº«ä·Q¬O¦b«ü©w¦C¡]Äæ¦ì¡^¤¤´M§ä«ü©wªº§ä¨ìÈ¡A¦pªG¦b¸ê®Æ®wªí¤¤§ä¨ì¤F³oÓÈ¡Aªí¤¤ªº°O¿ý«ü¼Ð«K«ü¦V¸Ó°O¿ý¡A³o¼Ë§ÚÌ«K¬d¸ß¨ì¤F§ÚÌ»Ýnªº°O¿ý¡A¶i¦Ó¥i¥H¦s¨ú§ä¨ìªº°O¿ý¤¤ªº¦U¶µ¼Æ¾Ú¡C¡@ 14.5.1 ¨Ï¥ÎGotoKey¤èªk§ä¨ì¼Æ¾Ú°O¿ý¡@ ¨Ï¥ÎGotokey¤èªk¬d¸ß¸ê®Æ®w¤¤ªº°O¿ýªº¨ãÅé¨BÆJ¦p¤U¡G ¢°¡B½T«On§ä¨ìªºÄæ¦ì¬OÃöÁä¦r©Î¤w¸g¬°¥¦©w¸q¤F»²§U¯Á¤Þ¡A¨Ã«OÃÒTTable³¡¥óªºÄݩʲM³æ¤¤¦³ÃöÁäÄæ¦ì¦W©Î»²§U¯Á¤Þ¦W¡C ¢±¡B³q¹L©I¥sGotoKey¤èªk¡A§ân§ä¨ìªºTTable³¡¥ó¸m¦¨§ä¨ì¼Ò¦¡¡C ¢²¡B§â§ä¨ìÈ°e¶i³Q§ä¨ìªºFieldªº§ä¨ì½w½Ä°Ï¡C ¢³¡B©I¥sTTable³¡¥óªºGotoKey¤èªk¡A¨Ã´ú¸Õ¥¦ªºªð¦^ȧPÂ_§ä¨ì¬O§_¦¨¥\¡C ¦pªG§ä¨ì¦¨¥\¡AGotoKeyªð¦^¤@ÓTrueÈ¡A¨Ã¥Bªí¤¤ªº°O¿ý«ü¼Ð«ü¦V§ä¨ìªº°O¿ý¡C ¦pªG§ä¨ì¥¢±Ñ¡AGotoKeyªð¦^False¡Aªí¤¤ªº°O¿ý«ü¼Ð¤£µo¥ÍÅܤơC ¦b³oùØnª`·Nªº¬O¦p¦óµ¹Fieldªº§ä¨ì½w½Ä°Ï½áÈ¡A §Ú̪¾¹DÄæ¦ìª«¥ó¬O¤£¥i¨£ªºª«¥ó¡A¥¦Ì¨S¦³¦Û¤vªº¦W¦r¡A¦b¤j¦h¼Æ±¡ªp¤U¡An¨Ï¥ÎTTable³¡¥óªºFieldByName ¤èªk¨ìÄæ¦ì²M³æ¤¤§ä¨ìÄæ¦ìª«¥ó¥H«K¬°¥¦½áÈ¡C¦ýÄæ¦ì½w½Ä°Ï¤]¬O¨S¦³¦W¦rªº¡A·íTTable³¡¥ó³B©ó§ä¨ì¼Ò¦¡®É¡A§ÚÌ¥un§â§ä¨ìȽᵹÄæ¦ìª«¥óªºAsStringÄÝ©Ê´N¥i¥H¤F¡CAsStringªº§@¥Î¤£¥u¬O¥¦ªºªí±·N«ä¡C¥¦¬O¤@ÓÂà´«ÄÝ©Ê¡A¥ô¦ó½áµ¹Äæ¦ìª«¥óªºAsStringÄݩʪº¦r¤¸¦ê³£±NÂà´«¦¨¸ÓÄæ¦ìª«¥óÀ³©ó¸ê®Æ®wªí¤¤ªºÄæ¦ìªº¼Æ¾Ú«¬¦¡¡C·íµMAsString¤£¯à±N§ä¨ìÈÂà´«¦¨BLOB¡BBytes¡BMemo©MGraphic«¬¦¡ªº¼Æ¾Ú¡A¥Î¤á¤@¯ë¤]¤£·|§ä¨ì³oºØ¼Æ¾Ú«¬¦¡ªºÄæ¦ì¡C ¤U±«K¬O±Ôz¨Ï¥ÎGotokey¤èªk§ä¨ì¼Æ¾Ú°O¿ýªº¨Ò¤l¡C ¨Ò14.3 ·í¥Î¤á¦bEdit1³¡¥ó¤¤¿é¤J¥Î¤á¸¹½X¨Ã«ö¤@¤U§ä¨ì«ö¶s¡Aµ{¦¡«K¶}©l¦bTable1¤¤§ä¨ì³oӥΤḹ¡C¦pªG§ä¨ì¦¨¥\¡A§ä¨ì¸ê°T¡§§ä¨ì¦¨¥\¡¨«K·|Åã¥Ü¦b¼ÐÅÒLabel1¤W¡A³Q¬d¸ß¨ìªº¥Î¤áªº¹q¸Ü¸¹½XÅã¥Ü¦b¼ÐÅÒLabel2¤W¡Cªí¤¤ªº°O¿ý«ü¼Ð±NÂಾ¨ì¸Ó¥Î¤á°O¿ý³B¡C¨Ã¥B¦bºô®æDBGrid1¤¤¥H°ª¥ú«×Åã¥Ü³o¤@±ø°O¿ý¡C¡@¡@ ¬d¸ß¸ê®Æ®w¤¤ªº°O¿ý ¤U±ªºµ{¦¡²M³æ¬O¬d¸ß«ö¶s¤WªºOnClick¨Æ¥óªº³B²zµ{¦¡¡A¥¦¬O¨Ï¥ÎGotokey¤èªk§ä¨ì¸ê®Æ®w¤¤ªº°O¿ýªº¡C procedure TForm1.Button1OnClick(Sender:TObject); begin with Table1 do begin Label1.Caption:=' '; Label1.Caption:=' '; IndexFieldName:='CustNo'; setkey; FieldByName('CustNo').AsString:=Edit1.Text; If GotoKey then begin Label1.Caption:='§ä¨ì¦¨¥\'; Label1.Caption:=FieldByName('Phone').AsString; end; else Label1.Caption:='§ä¨ì¥¢±Ñ'¡F end; ¡@ ¬d¸ß¸ê®Æ®w¤¤ªº°O¿ý¡@ 14.5.2 ¨Ï¥ÎFindKey¤èªk§ä¨ì¸ê®Æ®w¤¤ªº°O¿ý¡@ ÁöµM¨Ï¥Î¤W±ªºGotokey¤èªk¦b¸ê®Æ®w¤¤§ä¨ì°O¿ý®ÄªG¤£¿ù¡A¦ý¬ODelphi ÁÙ´£¨Ñ¤F¤@ºØ§ó¥[®e©öªº§ä¨ì¤èªk¡A³o´N¬OFindkey¤èªk¡A¨âºØ¤èªkÁöµM«Ü¬Û¦ü¡A¦ý¬OFindkey¤èªk§ó²³æ©ú¤F¤@¨Ç¡C ¨Ò14.4 §ÚÌ¥i¥H¨ÏFindkey¤èªk¥N´À¤W±¨Ò¤l¤¤ªº³B²zµ{¦¡¡A¤U±¬Oµ{¦¡¥N½X¡G procedure TForm1.Button1OnClick(Sender:TObject); var SeekValue:string; begin with Table1 do begin Label1.Caption:=' '; Label1.Caption:=' '; IndexFieldName:='CustNo'; SeekValue:=Edit1.Text; If FindKey([SeekValue]) then begin Label1.Caption:='§ä¨ì¦¨¥\'; Label1.Caption:=FieldByName('Phone').AsString; end; else Label1.Caption:='§ä¨ì¥¢±Ñ'¡F end; Findkey¤èªk©MGotokey¤èªkªº®Ú¥»°Ï§O¦b©ó§ä¨ìÈn§@¬°°Ñ¼Æ¶Ç»¼µ¹Findkey ¨ç¼Æ¡C¦ÓGOtokey¬O¤£±a°Ñ¼Æªº¡A ¥¦°²©w¥Î¤á¤w¸g§â§ä¨ìȽᵹ¤F¥NªíµÛ³Q§ä¨ì¨ìªºÄæ¦ìªº§ä¨ì½w½Ä°Ï¡C Findkey±µ¨üªº°Ñ¼Æ¬O©ñ¦b¤è¬A¸¹¤¤ªº¡A¬O¥Î³r¸¹¤À¶}ªº§ä¨ìȼƸs¸s²Õ¡C ¼Æ¸s¸s²Õ¤¤ªº¨C¤@Óȳ£¹ïÀ³©ó¯S©w¦Cªº§ä¨ìÈ¡A§Y°Ñ¼Æ¤¤¤¹³\¦³¦hÓ§ä¨ìÈ¡AFindkey ¤¹³\¥Î¤á¦P®É§ä¨ì¸ê®Æ®wªí¤¤ªº¦hÓ¦C¡C¤W±ªºµ{¦¡²M³æ¤¤ªºFindkey¨ç¼Æ¥u±µ¨ü¤FÅܼÆSeekvalue³o¤@Ó§ä¨ìÈ¡A³oÓ§ä¨ìȹïÀ³ªí¤¤ªºÄæ¦ìCustNo¡ACustNo¬Oªí¤¤ªºÃöÁäÄæ¦ì¡C¦pªGn¦P®É§ä¨ìªí¤¤ªº¦hÓÄæ¦ì¡A¥²¶·§ân§ä¨ìªº¦hÓÄæ¦ì¦W½áµ¹TTable³¡¥óªºIndexFieldNameÄÝ©Ê¡A¨Ã¥Î³r¸¹¤À¶}¦UÄæ¦ì¡AµM«á§â¨CÓÄæ¦ìªº§ä¨ìȽᵹFindkeyªº°Ñ¼Æ¼Æ¸s¸s²Õ¤¤¡C¡@ 14.5.3 §Q¥ÎGotoNearest©MFindNearest°õ¦æ¤£ºë½T§ä¨ì¡@ ¦b§Ṳ́W±°Q½×ªº§ä¨ì¤¤¡An»ò§ä¨ì¦¨¥\n»ò§ä¨ì¥¢±Ñ¡A¦]¬°§Ú̧ä¨ìªº¬O¯S©w§ä¨ìȪº¤@Óºë½T¤Ç°tÈ¡CDelphiÁÙ´£¨Ñ¤F¤@ºØ§ä¨ì¤èªk¡A§Y¤£ºë½T§ä¨ì¡A³o¼Ëªº§ä¨ìµ´¹ï¤£·|¥¢±Ñ¡A¥¦Á`¬Oµ¹¥Î¤á§ä¨ì¥X¤@Óµ²ªG¨Ó¡A¤]³\³oµ²ªG¨Ã¤£¬O¥Î¤á»Ýnªº¡A¦ý³oÓ§ä¨ì¥X¨Óªºµ²ªG¬O³Ì±µªñ¥Î¤án¨Dªº¡C¦bDelphi¤¤¬O§Q¥ÎGotoNearest©MFineNearest¨âºØ¤èªk¨Ó°õ¦æ¤£·Ç½T§ä¨ìªº¡A¥¦ÌÁ`¬O±q¸ê®Æ®w¤¤§ä¨ì¥X»P§ä¨ìȳ̱µªñªº¤Ç°tÈ¡C¦pªG¥¦Ì§ä¨ì¨ì»P§ä¨ìȺë½T¤Ç°tªºÈ¡A¨º·íµM³Ì¦n¤£¹L¤F¡A¦pªG¥Ļ䤣¨ìºë½T¤Ç°tªºÈ¡A¥¦Ì´N·|§â»P¥Î¤á«ü©wªº§ä¨ìȳ̱µªñªº°O¿ý´£¥æµ¹¥Î¤á¡C GotoNearestªº¨Ï¥Î¤èªk©MGotokey¤@¼Ë¡AFindNearestªº¨Ï¥Î¤èªk©MFindkey¤@¼Ë¡C¸òGotokey¤@¼Ë¡A¨Ï¥ÎGotoNearest®É¥²¶·n§â§ä¨ìȽᵹÄæ¦ìªº§ä¨ì½w½Ä°Ï¡A¨âªÌªº¤£¦P¤§³B¦b©ó§ä¨ìȪº±Ôz¤è¦¡¤£¤@¼Ë¡A¨Ï¥ÎGotoNearest®É¡A ±Ôzªº§ä¨ìÈ¥i¥H¬O§¹¾ãªº¤]¥i¥H¬O¤£§¹¾ãªº¡A¦pªGn¹ï'Dunteman'¶i¦æ¤£ºë½T§ä¨ì¡A¦bµ¹Äæ¦ìªº§ä¨ì½w½Ä°Ï½á§ä¨ìȮɡA¥i¥H¨Ï¥Î'Dunteman'¡B'Dun'©ÎªÌ`Du'§@¬°§ä¨ìÈ¡A ³o¼Ë§ä¨ì¥X¨Óªºµ²ªG·|ºÉ¥i¯à¦a±µªñ³oÓȪº¡C ¦pªG¨S¦³§ä¨ì»P¥Î¤á«ü©wªº§ä¨ìȺë½T¤Ç°tªº°O¿ý¡ADelphi·|½Õ¾ã°O¿ý«ü¼Ð¨Ã°±¯d¦b»P§ä¨ìȳ̱µªñªº²Ä¤@Ó°O¿ý¤W¡C¨Ò¦p¦pªG§ä¨ì`Dunteman'®É¡A¨S¦³§ä¨ìºë½T¤Ç°tªºÈ¡A°O¿ý«ü¼Ð¥i¯à·|°±¯d¦b`Dunwoody'¤W©ÎªÌ°±¯d¦b§ó»·¤@¨Çªº'Event'¤W¡F¦pªG§ä¨ì'Du' ¨S¦³§ä¨ìºë½T¤Ç°tªºÈ¡A°O¿ý«ü¼Ð¥i¯à°±¯d¦b¡¥Duncan¡¦¤W¡A¬Æ¦Ü¡¥Dunteman'¤§«e¡A Á`¤§Delphi·|¦Û¤v¦a½Õ¾ã°O¿ý«ü¼Ð¡A¨Ï¤§«ü¦V³Ì±µªñ§ä¨ìȪº°O¿ý¨Ã±N¸Ó°O¿ý§@¬°§ä¨ìªºµ²ªG´£¥æµ¹¥Î¤á¡C GotoNearest©MFindNearest³£ªð¦^¤@ÓBooleanÈ¥Hªí©ú§ä¨ì¬O§_¦¨¥\¡C ¥¦Ì¤@¯ë³£¬O¦¨¥\ªº¡A¥¦ÌÁ`¬On§â°O¿ý«ü¼Ð²¾¨ì¬Y³B¡C ¤U±ªº¨Ò¤l¬O¥ÎGotoNearest¤èªk¶i¦æ¤£ºë½T§ä¨ì¡C ¨Ò14.5 «Ø¥ß¦nªºµ¡Åé,¦b½s¿è®Ø¤¤¿é¤J¤@Ó¤£§¹¾ãªº¥Î¤á©Ò¦bªº¤½¥q¼Ðñ¡A¨Ã¥B«ö¡§¤£ºë½T§ä¨ì¡¨«ö¶s¡AµM«áÆ[¹î¤@¤U§ä¨ìªºµ²ªG¨Ãª`·N°O¿ý«ü¼Ð«ü¦V¨º¤@±ø°O¿ý¡C¤Ï´_¸ÕÅç´X¦¸«K·|²z¸ÑGotoNearest¬O¦p¦ó¤u§@ªº¡C ¡@ |
«á¤@¶ «e¤@¶ ¦^¥Ø¿ý ¦^º¶ |