Ã»Æ¢Æø2x
Email: notemper@hoolee.com
QQ: 20250
Password: **************

ÏëÃ»Æ¢ÆøµÄ×¢Ò⣬×öÃ»Æ¢ÆøµÄÊÂ
×öÃ»Æ¢ÆøÎ´Íê³ÉµÄÖ÷Ò³
¡¡ÍøÕ¾µ¼º½£ºÊ×Ò³ > ÎĵµÊÕ²Ø > ÎÝÀï´ý×Å > ¼¼Êõ
 
  2 Delphi 6 ÐÂÌØÐÔ

±¾ÕÂÖ÷Òª½²½â Delphi 6 µÄÐÂÔöÌØÐÔ£¬¼°ÆäÓëÒÔǰ°æ±¾µÄ±ä»¯¡£

2.1 IDE ÐÂÌØÐÔ

2.1.1 Object TreeView£¨¶ÔÏó¹ØÏµÊ÷£©

µÚÒ»´ÎÔËÐÐ Delphi 6£¬Äú¾Í»á·¢ÏÖÔÚ Delphi 6 Óë Delphi 5 ÓÐÁËÒ»¸ö×îÃ÷ÏԵı仯¡£ÔÚ IDE Öжà³öÁËÒ»¸ö"Object TreeView"´°¿Ú£¬Õâ¸ö"Object TreeView"ÄúÔÚ Delphi 5 µÄÊý¾ÝÄ£¿é£¨Data Module£©ÖпÉÄÜÒѾ­¼ûµ½¹ý¡£ÏÖÔÚ£¬Delphi 6 µÄ"Object TreeView"ÒѾ­¿ÉÒÔä¯ÀÀForm¡¢Data Module ¼° Frame ÖÐËùÓÐ×é¼þ£¨°üÀ¨¿ÉÊÓ×é¼þºÍ²»¿ÉÊÓ×é¼þ£©µÄÁÐ±í¼°ÆäÂß¼­¹ØÏµ£¨¼ûͼ2-1£©¡£

ͼ2-1

"Object TreeView"ÖеÄÄÚÈݽ«Óë"Object Inspector"ºÍ"´°ÌåÉè¼ÆÆ÷"ͬ²½£¬Èç¹ûÄúÔÚÕâÈý¸ö¹¤¾ßÖÐÈκÎÒ»¸ö¸Ä±äÁ˽¹µã¶ÔÏ󣬯äËüÁ½¸ö¹¤¾ßÒ²»áÓÐÏàÓ¦±ä»¯¡£

2.1.2 Object Inspector£¨¶ÔÏóÊôÐԱ༭Æ÷£©

ÔÚ Delphi6 µÄ Object Inspector ÖУ¬Äú¿ÉÒÔ·¢ÏÖ£¬ÓÐһЩÊôÐÔÏî±ä³ÉÁËÉîºìÉ«¡£Õâ±íʾ´ËÏîÊôÐÔµÄÀàÐÍÊÇÒ»¸ö×é¼þ£¬µ±ÕâÏîÊôÐÔ±»Á¬½Óµ½Ò»Ð©×é¼þÉÏʱ¡£ÕâÏîÊôÐÔ½«¿ÉÕ¹¿ª£¬³öÏÖÁ¬½Ó×é¼þµÄÊôÐÔ£¨¼ûͼ2-2£©¡£

ͼ2-2

ÁíÍ⣬ÔÚ Object Inspector ´°¿ÚµÄÓÒ¼ü²Ëµ¥ÖÐÔö¼ÓÁË Properties£¨ÊôÐÔ£©Ï¿ÉÒÔ¶Ô Object Inspector ½øÐÐÏÔʾѡÏîÉ趨¡£
2.1.3 ´úÂë±à¼­Æ÷µÄ"ͼ½âÒ"£¨Diagram page£©£¨½öרҵ°æºÍÆóÒµ°æÓÐЧ£©
ÔÚ Delphi6 µÄ´úÂë±à¼­Æ÷ÖгöÏÖÁË"ͼ½âÒ³"£¬Çë¿´´úÂë±à¼­Æ÷Ï·½£¨¼ûͼ2-3£©¡£

ͼ2-3

µ¥»÷ Diagram£¬½øÈëͼ½âÒ³£¨¼ûͼ2-4£©¡£

ͼ2-4

ͼ½âÒ³ÓÉ Delphi 5 Êý¾ÝÄ£¿éÖеÄͼ½âÒ³ÑÝ»¯¶øÀ´¡£Í¼½âÒ³ÔÚ´úÂë±à¼­Æ÷ÖгöÏÖ£¬Òâζ×ÅÄú¿ÉÒÔ¶Ôÿ¸öµ¥Ôª±à¼­ºÍ±£´æÍ¼½âÐÅÏ¢£¬¶ø²»ÊÇÖ»ÄܸøÊý¾ÝÄ£¿é×öͼ½â¡£
Äú¿ÉÒÔ½«¶ÔÏóʵÀý´Ó"Object TreeView"ÖÐÖ±½ÓÍÐ×§ÖÁ"´úÂë±à¼­Æ÷"µÄ"ͼ½âÒ³"ÖС£

2.1.4 Êý¾ÝÄ£¿é£¨Data module£©

Êý¾ÝÄ£¿éÉè¼Æ´°¿ÚÔÚ Delphi 6 ÖÐÓֻص½ÁË Delphi 4 ʱÑù×Ó£¬ÔÚ Delphi 5 ÖÐÔö¼Óµ"¶ÔÏó¹ØÏµÊ÷"ºÍ"ͼ½âÒ³"ÔÚ Delphi 6 Öж¼ÒÑÑÝ»¯ÎªÍ¨ÓÃÄ£¿é£¬Ç°ÃæÒÑÓÐËù½éÉÜ¡£

2.1.5 ×é¼þ³Ø£¨Component Palette£©

×é¼þ³ØÖпɹ©Ñ¡ÔñµÄ×é¼þ½«¸ù¾Ýµ±Ç°Éè¼ÆµÄ´°ÌåÀàÐͶø±ä»¯£º
ÀýÈ磬ÔÚÉè¼Æ Form¡¢Data Module ºÍ CLXApplication µÄ Form ʱ×é¼þ³ØÖеÄÄÚÈÝÊDz»Í¬µÄ£ºÔÚÉè¼Æ Data Module ʱ£¬×é¼þ³ØÖÐÖ»Áгö²»¿É¼û×é¼þ£»ÔÚÉè¼Æ CLXApplication µÄ Form ʱ£¬×é¼þ³ØÖÐÖ»Áгö CLX ×é¼þ£¨Óë VCL Ïà±È£¬CLX ÊÇ¿çÆ½Ì¨µÄ£¬¶ø VCL ÔòÖ»¿ÉÓÃÓÚ Windows ƽ̨£©¡£

2.2 ¿çƽ̨¿ª·¢£¨Cross-platform development£©£¨×¨Òµ°æ¡¢ÆóÒµ°æ£©

2.2.1 CLX

Delphi 6 ͨ¹ý¼¯³É¿çƽ̨×é¼þ¿â CLX£¨Borland Component Library for Cross-platform£©¼¼ÊõʵÏÖÁË¿çÆ½Ì¨¿ª·¢¡£CLX ÓÉ VCL ÑÝ»¯¶øÀ´£¬Óë VCL ²»Í¬µÄÊÇ£¬VCL Ö»ÄÜÔÚ Windows ƽ̨ÏÂʹÓ㬶ø CLX ¿ÉÒÔʹÓÃÓÚ Windows ºÍ Linux ƽ̨£¨ÔÚ Linux ƽ̨ÏÂÐèÒª Kylix ±àÒ룩¡£Î´À´£¬CLX ¼¼Êõ¿ÉÄÜ»áÔÚ¸ü¶àµÄϵͳƽ̨ÏÂÓ¦Óá£

ͼ2-5

CLX ×é¼þĿǰ°üÀ¨ BaseCLX¡¢VisualCLX¡¢DataCLX¡¢NetCLX

2.2.2 CLXApplication

ÏÖÔÚ£¬ÎÒÃÇ¿ÉÒÔ¿ª·¢Ò»Ì× CLX Ó¦ÓóÌÐò£¬È»ºó·Ö±ðÓÃDelphi 6ºÍKylix±àÒ룬¾Í¿ÉÒԵõ½Ó¦ÓóÌÐòÔÚ Windows ºÍ Linux ÉÏÔËÐеÄÁ½¸ö°æ±¾¡£
Ñ¡Ôñ Delphi 6 ²Ëµ¥"File | New | CLXApplication"£¬Äú¿ÉÒÔ´´½¨Ò»¸ö CLXApplication¡£Õâʱ£¬ÔÚ×é¼þ³ØÖн«³öÏÖ CLX ×é¼þ¹©Ñ¡Ôñ£¬Ó¦Óà CLX ×é¼þµÄ CLXApplication ½«¿ÉÒÔ²»×÷Ð޸ĵÄÔÚ Linux Ï嵀 Kylix ÖбàÒë¡£ÔÚ±àд CLXApplication ³ÌÐòʱҪעÒ⣬²»ÒªÊ¹ÓÃÈκΠWindows רÓú¯Êý£¬ÕâЩº¯ÊýÔÚ Linux Öн«²»ÄÜʹÓá£

2.3 ÐÂÒ»´úÊý¾ÝÓ¦Óÿª·¢¿ò¼Ü

2.3.1 WebServices¡¢SOAP Ö§³Ö

Delphi 6 ÊÇĿǰΨһ֧³ÖËùÓÐÕýÔÚÁ÷ÐеĹ¤Òµ±ê×¼£ºXML¡¢SOAP¡¢WSDL ¼° XSL µÄ RAD »·¾³¡£Ò²¾ÍÊÇ˵£¬Delphi 6 Ö§³Ö»ùÓÚ¹©·½Æ½Ì¨£¨Vendor Platforms£©µÄ WebServices£¬Èç Microsoft.Net¡¢BizTalk¡¢Sun One£¬Í¬Ê±ÌṩÆóÒµºÍ Web ¿ª·¢ÕßÐèÒªµÄÉìËõÐԺͿɿ¿ÐÔ¡£
Delphi 6 ͨ¹ýÒ»Ì×ȫеĿò¼Ü¶Ô WebServices ½øÐÐÁËÕûÌåʵÏÖ£¬½«°ïÖúÓû§´´½¨Ö§³Ö WebServices ¹æ·¶µÄ·þÎñÆ÷¶ËºÍ¿Í»§¶ËÓ¦ÓÃÈí¼þ¡£Õâ¸ö¿ò¼ÜÖаüÀ¨BizSnap¡¢DataSnap ºÍ WebSnap¡£
Delphi 6 ʵÏÖ WebServices µÄÔ­ÀíÏ൱ÓÚ Delphi 5 µÄ InternetExpress ¼ÓÉÏ¶Ô WSDL ±àÂë½âÂëµÄÖ§³Ö£¬²¢´¦Àí½Ó¿ÚµÄÓ³ÉäµÈ¡£

2.3.2 BizSnap£ºµç×ÓÉÌÎñ¿ª·¢Æ½Ì¨£¨ÆóÒµ°æ£©

BizSnap--ͨ¹ý±ã½ÝµÄ²Ù×÷£¬¿ÉÒÔÇáËɵĴ´½¨¼°Ê¹ÓûùÓÚ XML/SOAP µÄ WebServices£¬¼ò»¯ÁË B2B¡¢B2C µÈµç×ÓÉÌÎñ¼¯³É¡£

2.3.3 WebSnap£ºWeb Ó¦Óÿª·¢Æ½Ì¨

WebSnap--»ùÓÚ×é¼þµÄÓ¦Óÿª·¢¿ò¼Ü£¬Ö§³ÖÖ÷Á÷µÄ Web Óû§·þÎñÆ÷£¬°üÀ¨ Apache¡¢Netscape¡¢IIS¡£
Delphi 6 ÖÐµÄ WebSnap ÓÉ Delphi 5 ÖÐµÄ WebBroker ÑÝ»¯¶øÀ´£¬¶¼ÊÇ ISAPI »ò CGI Ö®ÀàµÄÓ¦Óá£WebSnap ÓÐÐí¶àÖ÷ÒªÌØµã£º
- еÄÏòµ¼·½Ê½
- ·þÎñÆ÷¶Ë½Å±¾ÒýÇæµÄÖ§³Ö£¨JavaScript¡¢VBScript£©
- Ð嵀 WebSnap Ó¦ÓÃ×é¼þ£¨ºÜ¶à£©
- Óë½çÃæÉè¼Æ¹¤¾ßÎÞ·êÁ¬½Ó£¨Dreamweaver¡¢Frontpage µÈ£©

2.3.3.1 WebSnap Ó¦ÓóÌÐòµÄ½á¹¹

WebSnap Ó¦ÓóÌÐò¿ÉÄÜÓÐËÄÀàÄ£¿é£ºTWebAppPageModule¡¢TWebAppDataModule¡¢TWebPageModule¡¢TWebDataModule¡£ÆäÖÐÆäÖÐ TWebAppPageModule Óë TWebAppDataModule ÔÚÒ»¸öÓ¦ÓóÌÐòÖÐÖ»Äܰüº¬Ò»¸ö£¬ÊÇÔÚ WebSnap Ó¦ÓóÌÐò´´½¨Ê±Éú³ÉµÄ£¬×öΪ WebSnap Ó¦ÓóÌÐòµÄÖ÷³ÌÐò£»TWebAppPageModule Óë TWebPageModule ÓÃÓÚÉú³ÉÒ³ÃæÄÚÈÝ£»TWebAppDataModule¡¢TWebDataModule£¬ÊÇÓ¦ÓóÌÐò¹²ÏíʹÓõĹ¹¼þµÄÈÝÆ÷¡£
WebSnap Ó¦ÓóÌÐòͨ¹ý WebAppDataModule »ò WebAppPageModule »á¸ú¾ÝÇëÇóÐÅÏ¢£¬×Ô¶¯´ÓÓ¦ÓóÌÐòÖÐµÄ WebPageModule ÖлñÈ¡Ò³ÃæÄÚÈÝ¡£ÆäÒ³ÃæÄÚÈÝÉú³É¹ý³ÌºÍÇëÇóÏìÓ¦¹ý³ÌÈçÏ£º

ͼ2-6

2.3.3.2 Web App Debugger

ÄúµÄ Web Ó¦ÓÿÉÄÜÒÔ ISAPI¡¢CGI¡¢WinCGI¡¢Apache Share Module ¸÷ÖÖÐÎʽ³öÏÖ¡£ÎªÁË·½±ãµÄµ÷ÊÔÄúµÄ Web Ó¦Óã¬Delphi 6 ÌṩÁË WebAppDebugger ÐÍ·½Ê½£¬Äú¿ÉÒÔÔÚ´´½¨Ò»¸ö WebAppDebugger ÐÍÓ¦ÓóÌÐò£¬²¢ÎªÄúÒªµ÷ʽµÄÕâ¸öÓ¦ÓÃÆðÒ»¸ö CoClass Ãû£¬È»ºó¼ÓÈëÒªÕýʽÔËÐеÄÓ¦ÓóÌÐòÖеÄËùÓе¥Ôª£¬±àÒëÖ´ÐС­¡­£¬ÕâʱÕâ¸öµ÷ÊÔ³ÌÐòÒѾ­×¢²áµ½Á˿ɵ÷Ê﵀ Web Ó¦ÓóÌÐòÁбíÖС£
Ñ¡Ôñ Delphi 6 ²Ëµ¥"Tools | Web App Debugger"½«´ò¿ª Web Ó¦ÓóÌÐòµ÷ÊÔÆ÷´°¿Ú£¬µ¥»÷ Default URL ºóÃæµÄÁ´½Ó¡£µ¯³öµÄÕâ¸öÒ³Ãæ¼´ÎªÄúµÄ¿ª·¢ÏµÍ³ÖÐËùÓеÄÒÑ×¢²áµÄ WebAppDebugger ÐÍ WebÓ¦ÓóÌÐò¡£Ñ¡ÔñÄú¸Õ¸Õ½¨ºÃ²¢Ö´ÐÐµÄ WebAppDebugger ³ÌÐò CoClassÃû²¢µ¥»÷"Go"£¬¼´½øÈë³ÌÐòµÄÖ´ÐÐÖС£

2.3.4 DataSnap£ºÊý¾Ý·ÃÎÊ·þÎñÖмä¼þ

DataSnap--ÔÊÐí¿Í»§´´½¨¸ßÐÔÄܵġ¢¿ÉÒÔ½øÐÐ Web ·þÎñµÄÖмä¼þ£¬Õâ¸öÖмä¼þ¿ÉÒÔʹÈκοͻ§¶Ë»ò·þÎñÆ÷¶Ëͨ¹ý WebServices ºÍ XML¡¢DCOM »ò CORBAµÈºÜÈÝÒ×µØÁ¬½Óµ½ÈκÎÖ÷Á÷Êý¾Ý¿â£¬Èç Oracle¡¢MS-SQL Server¡¢Informix¡¢IBM DB2¡¢SyBase¡¢InterBase¡£
Delphi 6 µÄ DataSnap Óɾɰ汾 Delphi ÖÐµÄ Midas ÑÝ»¯¶øÀ´¡£
DataSnap µÄ¼Ü¹¹ÈçͼËùʾ£º

ͼ2-7

ʹÓà DataSnap ¿ÉÒÔʹ WebServices ʹÓÃÈκιØÏµÐÍÊý¾Ý¿â

ͼ2-8

2.4 VCL ÐÂÔöÄÚÈÝ

ÐÂÔö TLabeledEdit¡¢TValueListEditor¡¢TCombBoxEx¡¢TColorBox ×é¼þ¡£
ºÜ¶à¿ÉÊӿؼþ¼ÓÈëÁËһϵÁб߿ò·ç¸ñÊôÐÔ£ºBevelEdges¡¢BevelInner¡¢BevenOuter¡¢BevelKind¡¢BevelWidth¡£ÀýÈ磬±È½Ï³£ÓÃµÄ TTreeView¡¢TListView¡£
CheckLst.pas
TCheckListBox£¬¼ÓÈë AutoComplete¡¢HeaderColor ¼° HeaderBackgroundColor ÊôÐÔ¡£
Classes.pas
TList£¬¼ÓÈë Assign ·½·¨£¬²»½ö¿ÉÒÔ½øÐе¥´¿¸´ÖÆ£¬¶øÇÒ¿ÉÒÔ½øÐмòµ¥µÄ¼¯ºÏÔËËã¡£
TCollection£¬¼ÓÈë Added ºÍ Deleting Á½¸ö protected ·½·¨£¬ÓÃÓÚÀ©Õ¹´¦ÀíÕýÔÚÌí¼ÓºÍÕýÔÚɾ³ýµÄÏȱʡÇé¿öÏ£¬ÕâÁ½¸ö·½·¨¶¼Ã»Óб»ÊµÏÖ£¬Óû§ÐèÒªÔÚ×Ô¼ºµÄÅÉÉúÀàÖи²¸ÇÕâÁ½¸ö·½·¨¡£
TStringList£¬¼ÓÈë CaseSensitive ÊôÐÔ£¬Ê¹ÄúÔÚʹÓà TStringList ½øÐÐÖîÈçÅÅÐò¡¢±È½ÏµÈ²Ù×÷ʱ¿ÉÒÔÇø·Ö´óСд¡£
TDataModule£¬´Ó Forms.pas µ¥ÔªÒƵ½ÁËÕâÀ´Ó¶øÊ¹Æä²»ÔÙÒÀ¿¿¿ÉÊÓ×é¼þ£¬Ê¹Óû§¿ÉÒÔ±àдÌå»ý¸üСµÄûÓÐÓû§½çÃæµÄ·þÎñ³ÌÐò¡£
TThread£¬¼ÓÈë FatalException ÊôÐÔ£¬µ±Ï̺߳¯Êý·¢ÉúÒ쳣ʱ£¬Ó¦ÓóÌÐò»á×Ô¶¯ÖÕÖ¹Ïß³ÌÔËÐУ¬²¢°ÑÒì³£¶ÔÏóʵÀý¼Ç¼ÔÚ FatalException ÖУ¬Óû§¿ÉÒÔÔÚÏß³ÌµÄ OnTerminate ʼþÖвⶨ²¢´¦ÀíÕâ¸öÒì³££¨FatalException Ϊ¿Õ±íʾÕý³£½áÊø£©¡£
TStream£¬ÖØÔØ Seek º¯ÊýʹÆä¿ÉÒÔ°´ÕÕ Int64 Öµ¶¨Î»¡£
TInterfacedPersistent£¬ÎªÊµÏÖ½Ó¿ÚÖÐµÄ Persistent ¶ÔÏóµÄеĻùÀ࣬
ComCtrls.pas
TTreeView£¬¼ÓÈë CreateTreeNodes ·½·¨£»¼ÓÈë AddNode ·½·¨Ê¹Óû§¿ÉÒÔ¼ÓÈë×Ô¼º½¨Á¢µÄ½áµã£¬½áµã¿ÉÓÉ TTreeNode µÄÅÉÉúÀཨÁ¢£»¼ÓÈëÁË OnAddition ʼþ£¬µ±Ìí¼Ó½áµãʱÏìÓ¦£»ÅÅÐò¹¦Äܱ»À©³äºÍ¼ò»¯£ºÄú¿ÉÒԵݹéÅÅÐò×ÓÊ÷»ò˳ÐòÅÅÐò¶¥¼¶½áµã£¬TCustomTreeView ºÍ TTreeNode£»¼ÓÈë¹ØÓÚ MultiSelect µÄËĸöÊôÐԺͰ˸ö·½·¨¡£
TListView£¬¼ÓÈë CreateListItems º¯Êý¡£
TStatusBar£¬¼´Ê¹µ± StatusBar ²»Ö±½ÓÒÔ´°ÌåΪ¸¸¶ÔÏóʱ SizeGrip Ò²»á³öÏÖ£¨SizeGrip£º´øÓÐ״̬À¸µÄ¿É±ä´óСµÄ Windows ´°¿ÚÓÒϽÇÍùÍù»á³öÏÖµÄÈý½ÇÐ±ÎÆÍ¼°¸¡££©£¬Ö»ÒªÕâ¸öStatusBar µÄÓÒϽÇÓë´°ÌåµÄÓÒϽDz¢ÔÚÒ»Æð¼´¿É¡£
TDateTimePicker£¬¼ÓÈë Format ÊôÐÔ£¬¿ÉÒÔÓùý±ê×¼µÄÈÕÆÚ/ʱ¼ä¸ñʽ´®¿ØÖÆÈÕÆÚ/ʱ¼äÖµµÄÏÔʾ¹æÔò¡£
THeaderControl£¬¼ÓÈëһЩ֧³ÖÀ¸Ä¿ÍÏ×§µÄÊôÐÔºÍʼþ£»¼ÓÈëÁË HotTrack ÊôÐÔ¡£
TToolBar£¬¼ÓÈëÁË Menu ÊôÐÔ£¬¿ÉÒÔÓà Menu ÖеÄÏîÀ´Ìî³ä¹¤¾ßÀ¸¡£
Contnrs.pas
TObjectList¡¢TComponentList¡¢TClassList£¬¼ÓÈë Last ºÍ First ·½·¨¡£
TStack¡¢TQueue¡¢TObjectStack¡¢TObjectQueue£¬Push·½·¨±äΪÁËÒ»¸öÓзµ»ØÖµµÄ·½·¨£¬µ± Push Ò»¸öÖ¸Õëºó£¬½«ÔÙ°ÑÕâ¸öÖ¸Õë·µ»Ø£¬¿ÉÒÔÈÏΪÊÇ Push ºóÔÙ½øÐÐ Peek ²Ù×÷¡£ÕâÔÚÐèÒªÔÚ Push ²Ù×÷ʱ´´½¨¶ÔÏóÊ®·ÖÓÐÓã¬È磺
myobj := aObjectStack.Push( TMyObject.Create );
¼ÓÈëÁË TBucketList Óë TObjectBucketList£¬¼òµ¥µÄ¹þÏ£±íÀà¡£
Controls.pas
TDragObjectEx¡¢TDragControlObjectEx Óë TDragDockObjectEx£¬ÕâÈý¸öеÄÍÏ×§¶ÔÏñÒÔ×Ô¶¯×ÔÓɵÄÔÚÍÏ×§²Ù×÷¡£
TControl£¬¼ÓÈë ClientToParent Óë ParentToClient Á½¸öз½·¨£¬¿ÉÒÔʹÄúÔÚ¸¸¶ÔÏóºÍ×Ó¶ÔÏó¼äÓ³ÉäÏñËØÎ»Öá£ËüÃǵÄʹÓ÷½·¨½üËÆÓÚ ClientToScreen Óë ScreenToClient¡£
TWinControl£¬ÖØÔØ PaintTo ·½·¨£¬Óà Canvas ´úÌæÁË HDC¡£
TModalResult ´Ó Forms.pas µ¥ÔªÒÆÖÁ´Ë¡£ÁíÍ⣬»¹ÔöÁËÏÂÃæÕâЩº¯Êý£º
function IsPositiveResult(const AModalResult: TModalResult): Boolean;
function IsNegativeResult(const AModalResult: TModalResult): Boolean;
function IsAbortResult(const AModalResult: TModalResult): Boolean;
function IsAnAllResult(const AModalResult: TModalResult): Boolean;
function StripAllFromResult(const AModalResult: TModalResult): TModalResult;
DBCtrls.pas
TDBLookupListBox Óë TDBLookupComboBox£¬¼ÓÈë NullValueKey ÊôÐÔ£¬Ê¹Óû§¿ÉÒÔ¸³Óè¿ÕÖµ£¨NULL£©¡£
TDBComboBox ¼ÓÈë AutoComplete ºÍ AutoDropDown ÊôÐÔ¡£
TDBListBox ¼ÓÈë AutoComplete ÊôÐÔ¡£
Dialogs.pas
TOpenDialog£¬¼ÓÈë OptionsEx ÊôÐÔ¡£
ExtCtrls.pas
TImage£¬¼ÓÈë Proportional ÊôÐÔ£¬¿ÉÒÔ°´³¤¿í³É¹Ì¶¨±ÈÀýµÄËõ·ÅͼÏñ¡£
Forms.pas
TApplication£¨Óë TApplicationEvents£©£¬¼ÓÈë OnSettingChange ʼþ£¬Ê¹Äú¿ÉÒÔÏìӦϵͳÉèÖõĸı䡣
TForm£¬¼ÓÈë¶Ô·Ö²ã´°¿Ú£¨Layered form£©Ö§³ÖµÄËĸöÊôÐÔ£ºAlphaBlend¡¢AlphaBlendValue¡¢TransparentColor ¼° TransparentColorValue£¬¿ÉÒÔÇáËÉʵÏÖ´°¿ÚµÄ°ë͸Ã÷ºÍ¾Ö²¿Í¸Ã÷¡£
TScreen£¬¼ÓÈë¹ØÓÚ×ÀÃæ¹¤×÷ÇøµÄÊôÐÔ¼¯£ºWorkAreaRect¡¢WorkAreaTop¡¢WorkAreaLeft¡¢WorkAreaHeight ¼° WorkAreaWidth£»¼ÓÈëͨ¹ýµã¡¢¾ØÐÍ¿ò¡¢´°¿ÚÀ´È·¶¨ Monitor µÄһϵÁз½·¨¡£
TMonitor£¬Îª¶àÏÔʾÆ÷±à³ÌÀ©Õ¹ Primary ÊôÐÔ£¬ÅжÏÊÇ·ñΪÖ÷ÏÔʾÆ÷£»¼ÓÈë WorkareaRect ºÍ BoundRect ÊôÐÔ¡£
TModalResult ÒÆµ½ÁË Controls.pas ÖС£
Graphics.pas
¼ÓÈëÓÃÓÚ¿ìËÙ´æÈ¡ Font¡¢Pen¡¢Brush µÄ TFontRecall¡¢TPenRecall¡¢TBrushRecall¡£ËüÃǶ¼ÅÉÉúÓÚ TRecall£¬¶ø TRecall ÓÖÓÉ TPersistent ÅÉÉú¡£
ϵͳÑÕÉ«¸Ä±äÁËÅÅÁÐ˳Ðò£¬Ê¹Óû§¿ÉÒÔ¸ü·½±ãµÄÕÒµ½¡£
ÔÚ±ê×¼µÄÊ®ÁùÉ«ÒÔÍâ¼ÓÈëÏÂÃæËĸö£ºclMoneyGreen¡¢clSkyBlue¡¢clCream¡¢clMedGray¡£
ImgList.pas
ÖØÔØÒÑÔö¼ÓµÄ Draw¡¢DrawOverlay Óë GetIcon ·½·¨£¬ÒÔ¸²¸Ç ImageList µÄÊôÐÔÉèÖá£
IniFiles.pas
TIniFile£¬Ö§³Ö¶Áд¶þ½øÖÆÊý¾ÝÁ÷¡£
TMemIniFile£¬¿ÉÒÔÇø·Ö´óСд¡£
THashedStringList£¬Ò»¸öÐ嵀 TStrings ×ÓËïÀ࣬ËüʹÓÃÄÚ²¿µÄ¹þÏ£±í¹ÜÀí×Ö·û´®Áбí¸ÄÉÆÁË TStringList µÄÐÔÄÜ¡£
Masks.pas
EditMask ºÍ Text ʹÓÃ×Ô¶¨ÒåÀàÐÍ£¬ËüÃǵÄÊôÐÔ±àÒëÆ÷¸üÓÐÓô¦¡£
Menus.pas
TMenuItem£¬¼ÓÈëÁË AutoCheck ÊôÐÔ£¬µ±Óû§Ñ¡ÔñËüÃÇʱ£¬ËüÃǽ«×Ô¶¯Çл»ÆäÑ¡ÖÐ״̬¡£
Registry.pas
TRegistry£¬Ö§³Ö¶Áд¶þ½øÖÆÊý¾ÝÁ÷¡£
StdCtrls.pas
TCustomComboBox£¬¼ÓÈëÁË OnCloseUp Óë OnSelect ʼþ£ºOnCloseUp ʼþÔÚ ComboBox µÄÏÂÀ­ÁÐ±í¹Ø±ÕʱÏìÓ¦£¨Óë OnDropDown Ïà·´µÄ¶¯×÷£©£»OnSelect ʼþÔڸıä ComboBox ÏÂÀ­ÁбíµÄÑ¡ÏîʱÏìÓ¦¡£
TListBox ÐÂÔöÖ§³ÖÁ½¸öÑùʽ£ºlbVirtual Óë lbVirtualOwnerdraw£¬ÕâЩÑùʽÓÃÓÚ²»´æÖüÁбíÄÚÈݵÄÐéÄâÁбí¿ò£¬Äú¿ÉÒÔ×ÔÐÐÖ¸¶¨ Count ÊôÐÔÀ´Ö¸¶¨ËüµÄÁбíÏî¸öÊý²¢Í¨¹ýÐÂÔöµÄ OnData¡¢OnDataFind¡¢OnDataObject ʼþ¸øÆäÌṩÁбíÏîÄÚÈÝ¡£

2.5 RTL ÐÂÔöÄÚÈÝ

Variants.pas
ÓÃÓÚ¶Ô±äÌåÀàÐÍ´¦ÀíµÄе¥Ôª£¬Õâ¸öµ¥ÔªµÄÐí¶à´úÂëÀ´Ô´ÓÚÒÔǰµÄ system µ¥Ôª¡£Òò´Ë£¬´Ó Delphi 6 ÒÔºó£¬Èç¹ûÄúµÄ´úÂëÖÐÓõ½Á˱äÌåÀàÐÍ£¬Äú±ØÐëÔÚÄúµÄÒýÓÃÁбíÖмÓÈë Variants¡£
ΪÁËÖ§³Ö¿çƽ̨¿ª·¢£¬Variants µ¥ÔªÖв»ÔÙÖ±½Óµ÷Óà Windows API£¬È¡¶ø´úÖ®µÄÊÇÁíÒ»¸öе¥Ôª VarUtils.pas£¬Õâ¸öµ¥Ôª×¨ÓÃÓÚΪ Variants.pas ½â¾öÓëÆ½Ì¨Î޹صķ½°¸¡£
ConvUtils.pas
¶ÈÁ¿ºâת»»º¯Êý¼¯
StdConvs.pas
Ó¦Óà ConvUtils.pas£¬²¢ÉèÖÃÈô¸ÉÖÖ¶ÈÁ¿ºâµ¥Î»¡£
DateUtils.pas
ÈÕÆÚÓëʱ¼ä´¦Àíº¯Êý¼¯¡£
StrUtils.pas
×Ö·û´®´¦Àíº¯Êý¼¯¡£
FMTBCD.pas
BCD Âë´¦Àíº¯Êý¼¯¡£
Math.pas
¼ÓÈëÁËÐí¶à³£Á¿ÉùÃ÷Ó뺯Êý£¬²¢¸ø extended ÐͲÎÊý¼ÓÒÔ const ÒýÓÃÒԼӿ캯ÊýµÄ´¦ÀíËÙ¶È¡£
System.pas
System µ¥Ôª¼ÓÈëÁËÐí¶àеÄÀý³Ì£¬Ö÷ÒªÓÃÓÚÖ§³Ö¿çƽ̨¿ª·¢ºÍÔÚ²»Í¬×Ö·û±àÂëϵͳ¼äת»»¡£Àý³ÌÖÐÓÃÓÚÖ§³Ö±äÌåÀàÐ͵IJ¿·ÖÒÆµ½ÁË Variants µ¥ÔªÖС£
¼ÓÈëÁË IInterface ×öΪ Object Pascal ½Ó¿ÚµÄ»ùÀ࣬¶øÒÔǰµÄ COM ½Ó¿Ú»ùÀà IUnknown ÔòÖ»ÊÇ IInterface µÄÒ»¸öÅÉÉú½Ó¿Ú¡£
SysUtils.pas
SysUtils µ¥ÔªÏÖÔÚÈ«ÃæÖ§³Ö¿çƽ̨£¬Ò»Ð©¹ýÈ¥ÐèÒªµ÷Óà Windows API ʵÏֵķþÎñ£¬ÏÖÔÚÈ«²¿¸ÄÓÉ SysUtils ÄÚ²¿Àý³ÌʵÏÖ¡£

2.6 Êý¾Ý¿âÐÂÌØÐÔ£¨×¨Òµ°æ¡¢ÆóÒµ°æ£©

2.6.1 dbExpress£º¸ßÐÔÄÜÊý¾Ý¿â·ÃÎÊ×é¼þ

ÔÚ Delphi 4 ÒÔǰ£¬Delphi ÄÚ²¿Ö§³ÖµÄÊý¾Ý¿â·ÃÎÊ;¾¶Ö»ÓÐ BDE¡£
ÔÚ Delphi 5 ÖУ¬¼ÓÈëÁË¶Ô ADO µÄÖ§³Ö£¬ÓëÊý¾Ý¿â¹ØÁªµÄ¿ÉÊÓ×é¼þ Data Controls ³ÉΪͨÓÃ×é¼þ²¢Öð½¥Óë BDE ·ÖÀë¡£¼ÓÈëÁËÒÔ Express ·½Ê½¶Ô Interbase Êý¾Ý¿âµÄÁ¬½ÓÓë·ÃÎʽӿڡ£
ÔÚ Delphi 6 ÖУ¬Êý¾Ý¿â·ÃÎʽӿڽøÒ»²½ÑÝ»¯³ÉΪ dbExpress¡£dbExpress Ö±½ÓʹÓÃÊý¾Ý¿â³§ÉÌÇý¶¯³ÌÐò£¬Ê¹Êý¾Ý´¦ÀíËÙ¶ÈÐÔÄÜ´ó·ùÌá¸ß¡£

ͼ2-9

2.6.2 Êý¾Ý¼¯£¨DataSet£©Ö§³ÖµÄÐÂ×Ö¶ÎÀàÐÍ

TFMTBCDField£¬Ëü±íʾһ¸öÕæÕýµÄ BCD Âë×ֶΡ£ÔÚÖ§³Ö TFMTBCDField µÄͬʱ£¬È«¾Öº¯Êý CurrToBCD ºÍ BCDToCurr ´Ó db µ¥ÔªÒÆÖÁ FMTBCD µ¥ÔªÖС£
TSQLTimeStampField£¬ÓÃÓÚ¶Ô dbExpress Çý¶¯ÖÐÈÕÆÚ/ʱ¼ä±í´ïʽµÄÖ§³Ö¡£

2.7 ±àÒëÆ÷ÐÂÌØÐÔ

2.7.1 ±äÌåÀàÐÍ£¨Variants£©

ÔÚ Delphi 6 ÖУ¬ËùÓÐÓë±äÌåÀàÐÍÓйصÄÉùÃ÷´ÓϵͳÄÚ¶¨µ¥Ôª£¨System£©ÒƵ½ÁËеĵ¥Ôª Variants ÖУ¨ËäÈ»Èç´Ë£¬µ«ÄúÈԾɿÉÒÔÔÚ²»°üº¬ Variants µ¥ÔªµÄÇé¿öÏÂʹÓñäÌåÀàÐÍ£©¡£
´Ó Delphi 6 ¿ªÊ¼£¬±äÌåÀàÐÍÖ§³Ö Int64£¬¿ÉÒÔ×Ô¶¨ÒåÖ§³Ö±äÌåµÄÊý¾ÝÀàÐÍ¡£

2.7.2 ö¾ÙÀàÐÍ£¨Enumerated£©

ÔÚ Delphi 6 ÖУ¬Ã¶¾ÙÀàÐÍ¿ÉÒÔÖ¸¶¨Ò»¸öÌØ¶¨µÄÖµ¡£
ÀýÈç:
type
TInfo = (iZero, iOne, iTwo, iFour = 4);

2.7.3 Consts µ¥ÔªµÄ±ä»¯

ÔÚ Delphi6 ÖУ¬´«Í³µÄ Consts µ¥Ôª±»·ÖΪ Consts ºÍ RTLConsts Á½¸ö¡£

2.7.4 ±àÒëÆ÷Ö¸ÁCompiler Directive£©

2.7.4.1 ±àÒëÆ½Ì¨Ô¤¶¨ÒåÖµ

Èç¹ûÄúÏ£ÍûÄúµÄ´úÂë½öÔÚ Windows ƽ̨ϱàÒ룬Äã¿ÉÒÔʹÓà MSWINDOWS ¼ì²â Windows ƽ̨¡£ÀýÈç:
{$IFDEF MSWINDOWS}
// ±àÐ´ÃæÏò Windows ƽ̨´úÂ룬ÔÚ Linux ƽ̨Ͻ«²»»á±»±àÒë
{$ENDIF}

2.7.4.2 $IF Ô¤±àÒëÖ¸Áî

Delphi 6 µÄ $IF Ô¤±àÒëÖ¸ÁîÒý½øÁËÌõ¼þµÄÐÂÌØÐÔ£¬¾ÙÒ»¸öÀý×Ó£º
{$DEFINE CLX}
const
LibVersion = 2.1;

{$IF Defined(CLX) and (LibVersion > 2.0) }
// Õâ¶Î´úÂë±»±àÒë
{$ELSE}
// Õâ¶Î´úÂë²»±»±àÒë
{$IFEND}

{$IF Defined(WIN32) and (SomeConst > 12.0) }
//...
{$ENDIF}
ÔÚ Pascal µÄ const ¶ÎÖж¨ÒåµÄ³£Á¿±êʶ·û¿ÉÒÔÔÚ $IF Ö¸ÁîÖнøÐÐÌõ¼þÅжϣ¬¾É°æ±¾ Delphi ÖеÄÔ¤±àÒë·ÖÖ§Ö¸Áî {$IFDEF}£¬¿ÉÒÔÔÚ $IF ÖÐʹÓà Define() Ô¤±àÒ뺯Êý´úÌæ£¬Pascal ³£Á¿±êʶ·û¿ÉÒÔÓà Declared Ô¤±àÒ뺯ÊýÅжÏÊÇ·ñÒѱ»¶¨Òå¡£
ÀýÈ磺
{$IF Defined(WIN32) and Declared(MyConst)}
//...
{$ENDIF}

2.7.4.3 $ALIGN Ô¤±àÒëÖ¸Áî

Delphi 6 µÄ $ALIGN ÓÐÁËеÄÑ¡Ï{$A1}¡¢{$A2}¡¢{$A4}¡¢{$A8}¡£
ÓÃÓÚÉ趨±àÒëÆ÷±àÒë´úÂëʱµÄ¶ÔÆë×Ö½ÚÊý¡£

2.7.4.4 PE ±êʶ
Microsoft µÄÿ¸ö .exe Îļþ¶¼ÓÐÒ»¸ö PE (portable executable) ÎļþÍ·£¬Microsoft µÄ²Ù×÷ϵͳͨ¹ý PE ÎļþÍ·Öеıê־λÀ´ÅжÏÒ»¸öÓ¦ÓóÌÐòÓëϵͳµÄ¼æÈÝÐÔ¡£µÄϵͳ·þÎñ¼æÈÝÐÔ»òÇëÇóÒ»¸ö¸ß¼¶ÏµÍ³·þÎñ¡£Delphi 6 ±àÒëÆ÷Ö§³ÖÁ½¸öеÄÔ¤±àÒëÖ¸Áî¿ÉÒÔ×ÔÐÐÉ趨 PE ÎļþÍ·±êÖ¾À´Ð­µ÷×îÐ嵀 NT ϵͳ£º
{$SetPEFlags <ÕûÐͱí´ïʽ>}
{$SetPEOptFlags <ÕûÐͱí´ïʽ>}
ÕâЩԤ±àÒë·ûÓÃÓڸ߼¶¿ª·¢Õߣ¬ÐèÒª²Î¿¼ PE£¨Portable Executable£©Îļþͷ˵Ã÷¡£
2.7.5 ǶÈëʽ»ã±àÓïÑÔ£¨built-in assembler£©
Delphi 6 ÒýÈëÁËÒ»Ì×ȫеÄǶÈëʽ»ã±àÓïÑÔ£º
еıêʶ·û VMTOFFSET ºÍ DMTINDEX¡£
еĴ¦ÀíÆ÷ÌØÐÔÖ§³Ö£ºMMX£»SIMD£»Enhanced MM£»Pentium Pro¡¢Pentium III ¼° Pentium 4 CPU µÄIntel SSE£»AMD K7 CPU µÄ AMD Enhanced 3D¡£
Ö§³Ö DQ£¨Define Quadword£©Î±²Ù×÷·ûÓÃÓÚËÄ×Ö½Ú×Ö³¤¶¨Ò壨ÒÔÍùÖ»ÓÐ DB Óë DW£©¡£

2.7.6 Linux Îı¾ÎļþÀàÐÍ

ΪÁ˸üºÃ¶Ô¿çƽ̨µÄÖ§³Ö£¬±àÒëÆ÷¿ÉÒÔ´¦Àí Linux µÄÎı¾Îļþ¡£ÕâÖÖÎı¾ÎļþÿһÐеÄĩβ½öÓÐÒ»¸ö"»»Ðзû<ASCII 10>"×öΪ½áÊø·û£¨Windows ´«Í³µÄÎı¾ÎļþµÄÐнáÊø·ûÊÇ"»Ø³µ·û<ASCII 13>"+"»»Ðзû<ASCII 10>"£©

2.7.7 ÖØÔØ£¨Overload£©

ÓÉ Delphi ±àÒëÆ÷´¦ÀíµÄ£¬ÒÀÕÕº¯Êý²ÎÊýÁбí¾ö¶¨Ê¹ÓÃÄÄÒ»¸ö overload ÖØÔØº¯ÊýµÄ±àÒë¼¼ÊõÔÚ Delphi 6 ÖÐÓèÒÔ¸üС£Delphi 6 ±àÒëÆ÷¿ÉÒÔÔÚ¶à¸ö overload ÖØÔØµÄº¯ÊýÖÐÇø·ÖÔÚ²ÎÊýÁбíµÄͬһ¸öλÖÃµÄ AnsiString Óë PChar£¬WideString Óë WideChar ¡£±äÌåÀàÐÍÏÖÔÚÒ²¿ÉÒÔÓÃÓÚÖØÔØº¯Êý¡£
ÔÚµ÷ÓÃÖØÔØº¯Êýʱ£¬nil ½«±»ÈÏΪÊÇ interface ÐͲÎÊýµÄÓÐЧֵ¡£

2.8 ÆäËüÐÂÔöÄÚÈÝ

2.8.1 Indy Internet ×é¼þ¿â£¨×¨Òµ°æ¡¢ÆóÒµ°æ£©

ÖøÃûµÄ Indy Internet ×é¼þ°üÄÚǶÓÚ Delphi 6 ÖУ¬Æä±¾È¡´úÁË FastNet µÄ×÷Óã¬ËäÈ» Delphi 6 ÖÐÈԾɱ£Áô FastNet£¬µ« Indy µÄÔ´´úÂ뿪·ÅʹÄú¿ÉÒÔ¸ü¼ÓÁ˽â Winsock ºÍ Delphi ÍøÂç±à³Ì»ù´¡¡£

2.8.2 °ïÖúϵͳÀ©Õ¹ÐÔ

Delphi 6 ÖУ¬Äú¿ÉÒÔ½«Ó¦ÓóÌÐò·¢Ë͸ø±ê×¼°ïÖúÔĶÁÆ÷£¨Èç Windows Help Viewer£©µÄ°ïÖúÇëÇ󽨻ñ¶ø×ª·¢¸ø×Ô¼º±àдµÄ°ïÖúÓ¦ÓóÌÐò¡£ÐµÄÌØÐÔ°üÀ¨£º
ÔÚÐ嵀 HelpIntfs.pas µ¥ÔªÖУ¬ÉùÃ÷ÁËÈô¸ÉÓÃÓÚÓ¦ÓóÌÐòÓë°ïÖúÔĶÁÆ÷Ö®¼äͨѶµÄ½Ó¿Ú£¬°üÀ¨£ºIExtendedViewer¡¢ISpecialHelpWinViewer¡¢IHelpManager¡¢IHelpSystem¡¢IhelpSelector ¼° ICustomHelpViewer¡£
VCL ÌṩʵÏÖÁËÒ»¸ö ICustomHelpViewer ½Ó¿Ú£¬ÓÃÓÚÓë WinHelp ½»»»ÐÅÏ¢¡£

2.8.3 ·Ö·¢·½Ê½

Delphi 6 ÏòÓû§Ìṩ»ùÓÚ Windows Installer (MSI) ¼¼ÊõµÄ InstallShield Express 3.0 ×÷Ϊ·Ö·¢¹¤¾ß¡£

2.9 Éý¼¶ Delphi 5 µÄ×é¼þ¿âµ½ Delphi 6

ÓÉÓÚ Delphi 6 ½ÏÒÔÃæ°æ±¾µÄ Delphi ¸Ä¶¯±È½Ï´ó£¬ËùÒÔʹ×é¼þ¿âµÄÉý¼¶»á±È½Ï·³Ëö¡£ÏÂÃæÁоÙһЩÉý¼¶¹ý³ÌÖеÄÒªµã£¬Ï£Íû¿ÉÒÔΪÄú¸øÄú×Ô¼ºÊÕ¼¯µÄ×é¼þ¿âÉý¼¶Ê±Ö¸µãÃÔ½ò¡£
´ò¿ª¾É°æ±¾µÄ .dpk Îļþ£¬Delphi 6 »á¾­Ñ¯Îʺó×Ô¶¯½« .dpk ת»¯ÎªÐµĸñʽ£¬ÆäÖÐÒª½«¾É°æÖÐ requires ÖÐµÄ vcl50¡¢vcldb50¡¢vclx50 µÈµÈ¸ÄΪ vcl¡¢vcldb¡¢vclx µÈ¡£Èç¹ûÄúÔÚ×é¼þ¿âÖÐÓõ½ÁË DesignEditors µ¥ÔªÄúÐèÒªÔÚ requires ÁбíÖмÓÈë DesignIDE¡£
¾É°æÖÐµÄ DesignIntf ÔÚ Delphi 6 ÖзָôΪ DesignIntf¡¢DesignEditors¡¢DesignEditors£»¾É°æÖÐδ¹«¿ªµÄ DsgnWnds µÈµ¥ÔªÔÚ Delphi 6 ÖÐÒ²±»¹«¿ª£¬¸ÄÃûΪ DesignWindows µÈ¡£
TDesignWindow ÖеÄһЩ³ÉÔ±º¯ÊýµÄ±ä»¯£º
procedure FormClosed( Form: TCustomForm ); override;
// ¸ÄΪ
procedure DesignerClosed(const Designer: IDesigner; AGoingDormant: Boolean); override;

procedure FormModified; override;
// ¸ÄΪ
procedure ItemsModified(const Designer: IDesigner); override;

procedure EditAction(Action: TEditAction); override;
// ¸ÄΪ
function EditAction(Action: TEditAction): Boolean; override;

procedure ComponentDeleted(Component: IPersistent); override;
// ¸ÄΪ
procedure ItemDeleted(const ADesigner: IDesigner; Item: TPersistent); override;

procedure ComponentInserted(Component: IPersistent); override;
// ¸ÄΪ
procedure ItemInserted(const ADesigner: IDesigner; Item: TPersistent);

DesignWindow.Form ÊôÐÔÈ¡Ïû£¬¼ÓÈëÁË DesignWindow.Designer ÊôÐÔ£¬¿ÉÒÔÓà DesignWindow.Designer.Root ´úÌæ DesignWindow.Form¡£
IFormDesigner ¸ÄΪ IDesigner¡£
TDesignerSelectList ¸ÄΪ IDesignerSelections£¬¿ÉÒÔͨ¹ý CreateSelectionList ½¨Á¢¡£
TIModuleNotifier.ComponentRenamed µÄÉùÃ÷¸Ä±ä£º
procedure ComponentRenamed(ComponentHandle: Pointer; const OldName, NewName: string);
// ¸ÄΪ
procedure ComponentRenamed(const AComponent: TComponent; const OldName, NewName: string);

TDefaultEditor.EditProperty µÄÉùÃ÷¸Ä±ä£º
procedure EditProperty(PropertyEditor: TPropertyEditor; var Continue, FreeEditor: Boolean);
// ¸ÄΪ
procedure EditProperty(const Prop: IProperty; var Continue: Boolean);

TCustomForm ÖÐµÄ Designer ÊôÐÔµÄÀàÐÍÓÉ IDesigner ¸ÄΪ IDesignerHook£¬¿ÉÒÔÓÉ TCustomForm.Designer.Query( IDesigner, MyOldDesigner ); µÄ·½·¨µÃµ½ÒÔǰµÄ IDesigner ÀàÐÍ¡£

 

°æÈ¨ËùÓÐ: Ã»Æ¢Æø2x, 1998-2003
Copyright by Notemper2x, 1998-2003