3

我正在使用这个问题的答案的 vcl 样式钩子close button of a tabsheet not supporting vcl styles并且工作正常,但是关闭按钮被绘制在我的应用程序的所有 TPageControl 组件中。

在此处输入图像描述

我只想将此选项(绘制关闭按钮)添加到特定表单。问题是:如何将这个钩子或任何 vcl 样式的钩子应用到特定表单的 TPageControl?

4

1 回答 1

5

您可以为 TPageControl 组件使用插入器类

检查这个样本

type
  TPageControl = class(Vcl.ComCtrls.TPageControl);
  TForm1 = class(TForm)
    PageControl1: TPageControl;
    ...
    ...

然后在interposer类所在的同一个单元中注册vcl style hook

  TStyleManager.Engine.RegisterStyleHook(TPageControl, TTabControlStyleHookBtnClose);

或使用完全限定的类型名称

  TStyleManager.Engine.RegisterStyleHook(Unit1.TPageControl, TTabControlStyleHookBtnClose);
于 2012-08-22T19:53:44.707 回答