2013-04-14 11 views
6

Jak usunąć ramkę z TCategoryPanel i TCategoryPanelGroup w XE3?Usuń granicę tcategorypanel

próbowałem tego i nie działa:

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 ; 
+0

Znaleziony jak usunąć jedną z Panelu ale nie PanelGroup. Panel najwyraźniej ma nieskasowany BevelOuter, który ustawiłem na bvNone i zadziałało. Poszukiwane ustawienie graniczne dla grupy, ale jej nie ma. – uPrompt

Odpowiedz

7

Dla TCategoryPanel trzeba ustawić chronionej własności BevelOuter do bvNone.

Dla TCategoryPanelGroup można rzeczywiście usunąć granicę w CreateParams. Tak:

Params.Style := Params.Style and (not WS_BORDER); 

Wygląda to tak:

enter image description here

+1

Z jakiegoś powodu nadal nie można tego użyć nawet z (nie WS_BORDER), ale mogę żyć z tą granicą. Panel 3d mnie zabił. Dzięki. – uPrompt

+0

Dodałem zrzut ekranu, aby udowodnić, że udało mi się –

+0

Widzę ... czy TStyleManager zastąpi to? – uPrompt

Powiązane problemy