2013-04-14 29 views
6

Làm cách nào bạn có thể xóa đường viền khỏi TCategoryPanel và TCategoryPanelGroup trong XE3?Xóa đường viền tcategorypanel

Cố gắng này và đã không làm việc:

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

Tìm thấy làm thế nào để loại bỏ một từ Bảng điều chỉnh nhưng không phải là PanelGroup. Bảng điều khiển dường như có một BevelOuter chưa được phân chia mà tôi đặt thành bvNone và nó hoạt động. Đã tìm cài đặt đường viền cho nhóm nhưng không có. – uPrompt

Trả lời

7

Đối TCategoryPanel bạn cần phải thiết lập các bảo vệ tài sản BevelOuter để bvNone.

Đối với TCategoryPanelGroup bạn thực sự có thể xóa đường viền trong CreateParams. Cũng giống như vậy:

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

Nó trông như thế này:

enter image description here

+1

Vì lý do nào đó, vẫn không thể làm việc này ngay cả với (không phải WS_BORDER) Nhưng, tôi có thể sống với biên giới này. Bảng điều khiển 3d đã giết chết tôi tho. Cảm ơn. – uPrompt

+0

Tôi đã thêm ảnh chụp màn hình để chứng minh rằng tôi đã thành công –

+0

Tôi hiểu ... TStyleManager có ghi đè điều này không? – uPrompt