2

谁能告诉我如何防止 TCategoryPanelGroup 绘制标题。我试图将 header.height 设置为 0 但这会产生全新的问题。我的面板上有 TImage,当我滚动面板组时,会在 TImage 上绘制图形伪影。

不幸的是,我似乎无法发布图像来向您展示,所以这里是如何重现我所看到的。

  • 新形式。在其上放置一个 TCategoryPanelGroup,对齐客户端。
  • 添加一个新面板并在面板上放置一个 TImage,左对齐(您甚至不必加载图像)
  • 将该面板多次复制并粘贴到 PanelGroup 中
  • 将 TCategoryPanelGroup.HeaderHeight 设置为 0。
  • 运行应用程序。

调整它的大小,使您有一个垂直滚动条。滚动面板,如果您像我一样,您会在 TImage 所在的位置看到一些图形伪影。

TCategoryPanelGroup Img 工件

这是我想要达到的目标的粗略。

在此处输入图像描述

4

1 回答 1

2

为了避免伪影,您可以覆盖 TCategoryPanel 的 DrawHeader

type
  TCategoryPanel=Class(ExtCtrls.TCategoryPanel)
    procedure DrawHeader;override;
  End;

  TForm3 = class(TForm)
//.........
procedure TCategoryPanel.DrawHeader;
begin
//  inherited;

end;
于 2013-04-15T12:30:21.470 回答