ÊÖ»úÕ¾
ÍøÍ¨·ÖÕ¾
µçÐÅÖ÷Õ¾
ÃÜ¡¡Âë:
Óû§Ãû£º
µ±Ç°Î»Öà : Ö÷Ò³>³ÌÐòÉè¼Æ>delphi>Áбí

»ùÓÚDelphiµÄ×é¼þÉè¼ÆÖ®¸ÅÄî

À´Ô´£º»¥ÁªÍø ×÷Õߣºwest263.com ʱ¼ä£º2008-02-23
Î÷²¿ÊýÂë-È«¹úÐéÄâÖ÷»ú10Ç¿£¡40ÓàÏîÐéÄâÖ÷»ú¹ÜÀí¹¦ÄÜ,È«¹úÁìÏÈ!Ë«Ïß¶àÏßÐéÄâÖ÷»úÄϱ±·ÃÎʳ©Í¨ÎÞ×è!Ãâ·ÑÔùËÍÆóÒµÓʾÖ,.CNÓòÃû,×ÔÖú½¨Õ¾480ÔªÆð,Ãâ·ÑÊÔÓÃ7Ìì,ÂúÒâÔÙ¸¶¿î! P4Ö÷»ú×âÓÃ799Ôª/ÔÂ.Ô¸¶Ãâѹ½ð!
×÷Ϊ×é¼þÖÆ×÷µÄ¿ªÊ¼£¬Ó¦¸ÃÁ˽âһЩ¸ÅÄÎÒÒÔΪÕâЩ¸ÅÄîÊǷdz£ÖØÒªµÄ£¬½«¿ÉÒÔ×÷ΪÒÔºóʵ¼ùµÄÀíÂÛ»ù´¡¡£

¡¡¡¡Ò»¡¢×é¼þµÄ¼òÒª²ã´Î½á¹¹

¡¡¡¡Ò»°ãÇé¿öÏ£¬VCLµÄ×é¼þ¿ÉÒÔ´ÓTcomponentΪ¿ªÊ¼¡£Æä×îÃ÷ÏÔµÄÌØÕ÷¾ÍÊÇËüµÄÊôÐÔ¿ÉÒÔÔÚÉè¼ÆÊ±Í¨¹ý¶ÔÏó²ì¿´Æ÷À´²Ù×Ý£¬ÁíÍ⣬Ëû»¹ÄÜÓµÓÐÆäËû×é¼þ¡£

¡¡¡¡´ÓTcomponentÏ£¬·Ö³ö·Ç¿ÉÊÓ×é¼þºÍ¿ÉÊÓ×é¼þ¡£

¡¡¡¡·Ç¿ÉÊÓ×é¼þÈçTOPenDialog,TTimer,TTableµÈ£¬ÕâЩ×é¼þÒòΪ¼Ì³Ð×ÔTomponent£¬ËùÒÔÒ²¾Í¼Ì³ÐÁËÔÚÉè¼ÆÊ±¿ÉÒÔ±»²Ù×ݵÄÌØÐÔ¡£

¡¡¡¡¿ÉÊÓ»¯×é¼þʼ×ÔTControl,ÊÇËüÒýÈëÁË¿ÉÊÓ»¯ÊôÐԺͷ½·¨£¬Ê¹¼Ì³Ð×ÔËüµÄÀà¶¼ÓÐÁËÕâЩ¿ÉÊÓ»¯ÌØÐÔ¡£

¡¡¡¡TControlÓÖ·Ö³öÁ½Àà×é¼þÀàÐÍ£º´ÓTWinControl£¨´°¿Ú¿Ø¼þ£©×ÔϵĿؼþ£¬ºÍ´ÓTGraphicControl£¨Í¼Ðοؼþ£©×ÔϵĿؼþ¡£¼Ì³Ð×ÔTWinControlµÄ¿Ø¼þ½«Windows¿Ø¼þ½øÐзâ×°£¬ËùÒÔÓµÓÐwindows¿Ø¼þµÄºÜ¶àÌØÐÔ£¬±ÈÈç¿ÉÒԵõ½½¹µã£¬ÓÐΨһµÄ¾ä±ú£¬Óû§¿ÉÒÔͨ¹ý·¢ËÍÏûÏ¢ÓëÕâЩ¿Ø¼þ½øÐн»»¥µÈ¡£¶ø¼Ì³Ð×ÔTGraphicControlµÄ¿Ø¼þ£¬Ò²ÊǿɼûµÄ£¬µ«Ã»Óоä±ú£¬¿ÉÒÔ³ÆÖ®ÎªÍ¼Ðοؼþ£¬±ÈÈçTLabel,TBevel,¶¼ÊÇDelphi»­³öÀ´µÄ£¬²¢²»Õ¼ÓÃϵͳ×ÊÔ´¡£

¡¡¡¡¶þ¡¢ÊôÐÔ

¡¡¡¡ÏÈ¿´Ò»¸ö¼òµ¥µÄÊôÐÔ¶¨Ò壺

TsomeObj=class

Private

FCount:integer;

Protected

Procedure SetCount(value:Integer);

published

Property count:integer read FCount write SetCount default 0;//ÊôÐÔ¶¨Òå

End;
¡¡¡¡¸ÃÊôÐÔ´Ó˽ÓгÉÔ±FCount¶Á³öÖµ£¬¶ø¿¿SetCount·½·¨ÉèÖÃÖµµ½Ë½ÓгÉÔ±FCount¡£

¡¡¡¡ÊôÐÔµÄÓÅÊÆÔÚÓÚ¿ÉÒÔºÜÖ±¹Û½øÐжÁд£¬¶øÓÖ²»Í¬ÓÚ˽ÓгÉÔ±¡£ÒòΪÊôÐÔ¿ÉÒÔͨ¹ýд·ÃÎÊ·½·¨À´±£»¤Ë½ÓгÉÔ±£º

Procedure TsomeBoj.SetCount(value:Integer);

Begin

If FCount<>value then

FCount:=value;

End;
¡¡¡¡ÆäÖÐÊôÐÔ¶¨ÒåÖеÄDefault¡¡0²¢²»ÊÇĬÈÏÖµ£¨¼´¶ÔÏó²ì¿´Æ÷ÏÔʾµÄÖµ£©£¬Ä¬ÈÏÖµÒªÔÚ×é¼þÀàµÄ¹¹Ô캯ÊýÖÐÉ趨¡£¶øDefaultÓÐÕâÑùµÄ×÷Ó㬾ö¶¨DFMÎļþÖÐÊÇ·ñÒª±£´æ¸ÃÊôÐÔµÄÖµ£¬±ÈÈçÉÏÃæÎªDefault 0,¼´µ±¸ÃÊôÐÔֵΪ0ʱ£¬Ôò¸ÃÊôÐÔ²»»á±»±£´æµ½DFMÖУ¬Èç¹û¸ÃÊôÐÔÖµ²»Îª0£¬Ôò¸ÃÊôÐԻᱻ±£´æµ½DFMÖС£ÁíÍâÊôÐÔ¶¨Ò廹ÓÐÒ»¸ö¹Ø¼ü×ÖΪ

¡¡¡¡NoDefault£¬ÉèÖÃÁËÕâ¸ö¹Ø¼ü×Ö£¬±ÈÈç

Property count:integer read FCount write SetCount NoDefault;¡¡¡¡
¡¡¡¡ÔòÎÞÂÛËüµÄÖµÊÇʲô£¬¶¼»á±»Ð´µ½DFMÎļþÖС£

¡¡¡¡ÊôÐÔ¿ÉÒÔÓÐÈçϼ¸ÖÖÀàÐÍ£¬ÏÂÃæÖ»¸ø³ö¼òµ¥½éÉÜ£¬¶øÕâЩÀàÐ͵ÄÊôÐÔ£¬»áÔÚ×é¼þÖÆ×÷ʱÏêϸµÄÔËÓãº

¡¡¡¡¼òµ¥ÀàÐÍÊôÐÔ£ºÈçÉÏÃæ¶¨ÒåµÄ£¬¼ÓÒ»¸öÀý×Ó

Property text:string read Ftext write SetText;
¡¡¡¡Ã¶¾ÙÀàÐÍÊôÐÔ£º

TEnumtype=(Enum1,Enum2,Enum3);

FEnumtype:TEnumtype;

Property Enumtype:TEnumtype read FEnumtype write FEnumtype;
¡¡¡¡ÔÚ¶ÔÏó²ì¿´Æ÷Öп´À´¾ÍÊÇÏÂÀ­ÁпòÑ¡ÔñÖµ¡£

¡¡¡¡¼¯ºÏÀàÐÍÊôÐÔ£º

Tset=(set1,set2,set3);

Tsets=set of Tset;

Fsets:Tsets;

Property sets:Tsets read Fsets write Fsets;
¡¡¡¡ÔÚ¶ÔÏó²ì¿´Æ÷Öп´À´£¬¾ÍÊÇÁгö¼¸¸öÑ¡Ïî·Ö±ðÉèÖÃÕæ¼Ù¡£±ÈÈçTFormµÄBorderIconsÊôÐÔ¼´ÊÇ¡£

¡¡¡¡¶ÔÏóÀàÐÍÊôÐÔ£ºÒ»¸öÊôÐÔÊÇÒ»¸ö¶ÔÏ󣬶øÕâ¸ö¶ÔÏó±ØÐëÅÉÉú×ÔTpersistent»òÕßËû֮ϵÄÀà,²ÅÄÜÔÚ¶ÔÏó²ì¿´Æ÷ÖпÉÒÔÕ¹¿ªËü£¬²¢ÉèÖÃËüÀïÃæµÄÊôÐÔ¡£

¡¡¡¡Êý×éÀàÐÍÊôÐÔ£ºÊý×éÊôÐÔÈç¹ûÒªÔÚ¶ÔÏó²ì¿´Æ÷Öп´¼û£¬ÐèÒªÓÐ×Ô¼ºµÄÊôÐԱ༭Æ÷£¨Èç¹û²»ÏëÔÚ¶ÔÏó²ì¿´Æ÷¿´µ±È»¾Í²»ÓÃÀ²£©£¬ÊDZȽϸ߼¶µÄ×é¼þ£¬ÔÚºóÀ´µÄ×é¼þÖÆ×÷ÔÙÀ´½éÉÜ£¬»á¸üÖ±¹ÛһЩ¡£ÕâÀïÖ»¸ø³öËüµÄ¶¨ÒåÐÎʽ£º

property Selected[Index: Integer]: Boolean read GetSelected write SetSelected;
¡¡¡¡Èý¡¢Ê¼þ

¡¡¡¡Ê¼þÆäʵÊÇÒ»ÖÖÌØÊâµÄÊôÐÔ£¬ËûÊÇÖ¸ÕëÀàÐÍ£¬Ö¸ÏòÒ»¸öʼþ·½·¨ÀàÐÍ¡£µ±ÓÐÌØ¶¨µÄʼþ·¢Éúʱ£¬Ëü¾Í»á¹ØÁªµ½Ò»¶ÎÖ´ÐдúÂë¡£

¡¡¡¡ÏÂÃæÒÔÒ»¸öÀý×ÓÀ´½²½âʼþÊÇÔõô·¢ÉúµÄ¡£

¡¡¡¡ÎÒÃÇÏȶ¨ÒåÒ»¸öÊó±êµãÏÂʼþµÄÊó±êʼþÀàÐÍ£¬ËüÆäʵ¾ÍÊÇ·½·¨Ö¸Õ룺

type TMouseEvent = procedure (Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer) of object;
¡¡¡¡ÓÖ¶¨ÒåÒ»¸ö˽ÓгÉÔ±£ºÊó±êʼþÀàÐ͵쬼´Ò»¸ö·½·¨Ö¸ÕëÀàÐÍ

FonMouseDown:TMouseEvent
¡¡¡¡×îºó¶¨ÒåÒ»¸öÊôÐÔ£ºÀàҪͨ¹ýÕâ¸öÊôÐÔ½«ÍⲿµÄʼþ´¦Àíº¯ÊýºÍFonMouseDown¹ØÁªÔÚÒ»Æð£º

onMouseDown:TMouseEvent read FonMouseDown write FonMouseDown;
¡¡¡¡µ±ÓÐÊó±ê×ó¼üµã»÷µÄ£¬ÏµÍ³»áÏò´°¿Ú»á·¢ËÍWM_LBUTTONDOWN;ÏûÏ¢

¡¡¡¡Delphi¿ÉÒԽػñÕâ¸öÏûÏ¢£¬Èç϶¨ÒåÏûÏ¢º¯Êý£º

procedure WMLButtonDown(var Message: TWMLButtonDown);
message WM_LBUTTONDOWN;
¡¡¡¡ÔÚÕâ¸öÏûÏ¢´¦Àíº¯ÊýÖе÷DOMouseDown,DoMouseDownÓÖµ÷ ÓÃÁËMouseDown

¡¡¡¡ÔÚÕâ¸öº¯ÊýÀïÃæ²Åµ½ÁË×îÖØÒªµÄ²¿·Ö

¡¡¡¡¸Ãº¯ÊýÊÇÕâÑùµÄ£º

procedure TControl.MouseDown(Button: TMouseButton;Shift: TShiftState; X, Y: Integer);

begin

if Assigned(FOnMouseDown) then FOnMouseDown(Self, Button, Shift, X, Y);

end;
¡¡¡¡¶øÎÒÃÇÏÈÀ´¿´¿´Óû§ÍⲿÊÇÔõô²Ù×÷µÄ£¬

¡¡¡¡Ëû×Ô¼º¶¨ÒåÒ»¸öSomeobjMouseDown; ÊÇÒ»¸öʼþ´¦Àíº¯Êý£¬±ØÐëºÍTMouseEventµÄÐÎʽһÑù£º

Procedure SomeobjMouseDown(Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);
¡¡¡¡È»ºóËûÕâÑù¸³Öµ£º

someobj.onMouseDown:=SomeobjMouseDown;
¡¡¡¡µ±¸³ÖµÒÔºó£¬ÀàÄÚ²¿ÆäʵÊÇͨ¹ýonMouseDownÊôÐÔ£¬½«SomeobjMouseDown;ÓëFonMouseDwon¹ØÁªÔÚÒ»Æð£¬Ò²¾ÍÊÇ˵£¬MouseDown·½·¨Öе÷ÓÃÁËFOnMouseDown(Self, Button, Shift, X, Y);Æäʵ¾ÍµÈÓÚµ÷ÓÃÁËProcedure SomeobjMouseDown(Sender: TObject; Button: TMouseButton;Shift: TShiftState; X, Y: Integer);

ÎÄÕÂÕûÀí£ºÎ÷²¿ÊýÂë--רҵÌṩÓòÃû×¢²á¡¢ÐéÄâÖ÷»ú·þÎñ
http://www.west263.com
ÒÔÉÏÐÅÏ¢ÓëÎÄÕÂÕýÎÄÊDz»¿É·Ö¸îµÄÒ»²¿·Ö,Èç¹ûÄúÒª×ªÔØ±¾ÎÄÕÂ,Çë±£ÁôÒÔÉÏÐÅÏ¢£¬Ð»Ð»!