Delphi,覆盖自定义控件setCaption

Chr*_*ase 3 delphi custom-controls delphi-7

我有一个自定义控件,祖先是另一个自定义控件,他的祖先是TPanel; 即

TNotMyCustomControl = class(Tpanel);

TMyCustomControl    = class(TNotMyCustomControl);
Run Code Online (Sandbox Code Playgroud)

是我可能当正在设置Caption(运行时或设计时)做出反应,而且还有改变的传递给祖先控制?

ulr*_*chb 12

有可能的.只需CMTextChanged在自定义中添加消息处理程序TPanel:

type
  TMyPanel = class(TPanel)
  private
    procedure CMTextChanged(var Message: TMessage); message CM_TEXTCHANGED;
  end;

{ ... }

procedure TMyPanel.CMTextChanged(var Message: TMessage);
begin
  inherited;
  ShowMessage('caption has been changed');
end;
Run Code Online (Sandbox Code Playgroud)