比如有一个鼠标按下的事件,
比如有个属性
property OnClick : Txxx read FOnClick write FOnClick;
对应就有个变量
FOnClick: Txxx
当你在属性里面上双击OnClick,那么在乎格FOnClick就有了对应的处理函数
当有消息来的时候
系统就判断
if Assigned(FOnClick) then begin
// 你的消息处理函数
end;
大概意思是这样
然后是属性,比如有个成员变量是FName : stirng
你要对这个成员读取,但是不想直接读取,或者在读写的时候做写操作。那就放在Private里面,外面放一个属性
property Name : string read FName write FName;
当你在程序程序里面用的时候
比如
class.Name := xxx;
的时候,就表示你要写Name这个属性,系统会去调用write 后面的哪个东西,可以是个函数(一般是Set开头),也可以就是真正的那个变量,
如果你要
xxx := class.Name;
那么就是调用read后面的那个东西,同write。如果是函数一般是Get开头
如果只有Read,那么这个属性就是只读的,如果只有write,就是只写的(就是不能通过class.name的方式取出来)