Delphi 删除tcategorypanel边框

Delphi 删除tcategorypanel边框,delphi,delphi-xe,Delphi,Delphi Xe,如何从XE3中的TCategoryPanel和TCategoryPanelGroup中删除边框 尝试了这个,但没有成功: type TCategoryPanel = class (Vcl.ExtCtrls.TCategoryPanel) protected procedure CreateParams ( var Params: TCreateParams); override ; end ; procedure TCategoryPanel.CreateParams (

如何从XE3中的TCategoryPanel和TCategoryPanelGroup中删除边框

尝试了这个,但没有成功:

type
   TCategoryPanel =  class (Vcl.ExtCtrls.TCategoryPanel)
protected
   procedure  CreateParams ( var  Params: TCreateParams);  override ;
end ;

procedure  TCategoryPanel.CreateParams ( var  Params: TCreateParams);
begin
  Inherited ;
  Params.Style:= Params.Style  and  not  WS_BORDER;
end ;

对于
TCategoryPanel
您需要将受保护的属性
bevelooter
设置为
bvNone

对于
TCategoryPanelGroup
您确实可以在
CreateParams
中删除边框。像这样:

Params.Style := Params.Style and (not WS_BORDER);
看起来是这样的:


找到了如何从面板而不是面板组中删除该面板。该小组显然有一个未公布的斜面,我设置为bvNone,它的工作。已为组查找边界设置,但没有。由于某些原因,即使使用(非WS_边界)也无法使此设置生效,但我可以使用此边界。3d面板真让我受不了。谢谢。我添加了一个截图来证明我成功了。我看到了。。。TStyleManager是否会覆盖此功能?VCL样式的使用是否相关?呃是的。那将是一个完全不同的问题!但既然你在XE上,你就不能这么做。但标准的窗口主题也不错。我的测试使用它们。