从form继承出个新类,把caption属性保护起来,用mycaption来访问:
type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
foncaptionchange:tnotifyevent;
property caption;
function getcaption:string;
procedure setcaption(value:string);
procedure form1oncaptionchange(sender:tobject);
public
{ Public declarations }
property mycaption:string read getcaption write setcaption;
published
property oncaptionchange:tnotifyevent read foncaptionchange write foncaptionchange;
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
function tform1.getcaption:string;
begin
result := caption;
end;
procedure tform1.setcaption(value:string);
begin
caption := value;
if assigned(foncaptionchange) then
foncaptionchange(self);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
form1.oncaptionchange := form1oncaptionchange;
end;
procedure tform1.form1oncaptionchange(sender:tobject);
begin
beep;
end;