2016-03-29 13 views
3

Delphi XE-6Schaffung Verbundsteuerungen in Firemonkey

Ich versuche, meine eigene benutzerdefinierte Firemonkey Kontrolle von TGroupBox abgeleitet zu schaffen, wo ich eine TGridPanelLayout Control auf dem groupbox erstellen.

constructor TMyRadioGroup.Create(AOwner: TComponent); 
begin 
    inherited Create(AOwner); 
    FLayout:= TGridPanelLayout.Create(self); 
    FLayout.Parent:= self; 
end; 

Wie kann ich verhindern, dass der Benutzer das TGridPanelLayout-Steuerelement auswählen und/oder löschen kann? Zur Entwurfszeit möchte ich nur meine übergeordnete Kontrolle (abgeleitet von TGroupbox) auswählbar und löschbar aus dem Formular sein.

Antwort

4

Sie müssen die Stored-Eigenschaft für jedes untergeordnete Steuerelement, das zur Entwurfszeit nicht auswählbar sein soll, auf false festlegen. Der folgende Code erstellt beispielsweise ein Bedienfeld mit zwei untergeordneten Steuerelementen, einem und einem TButton.

unit PanelCombo; 

interface 

uses 
    System.SysUtils, System.Classes, FMX.Types, FMX.Controls, 
    FMX.Controls.Presentation, FMX.StdCtrls, FMX.Edit; 

type 
    TPanelCombo = class(TPanel) 
    private 
    { Private declarations } 
    edit1: TEdit; 
    button1: TButton; 
    protected 
    { Protected declarations } 
    public 
    { Public declarations } 
    constructor Create(AOwner: TComponent); override; 
    destructor Destroy; override; 
    published 
    { Published declarations } 
    end; 

procedure Register; 

implementation 

procedure Register; 
begin 
    RegisterComponents('Samples', [TPanelCombo]); 
end; 

constructor TPanelCombo.Create(AOwner: TComponent); 
begin 
    inherited; 
    edit1:= TEdit.create(self); 
    edit1.parent:= self; 
    edit1.align:= TAlignLayout.Top; 
    edit1.stored:= false; 

    button1:= TButton.create(self); 
    button1.parent:= self; 
    button1.align:= TAlignLayout.bottom; 
    button1.stored:= false; 
end; 

destructor TPanelCombo.Destroy; 
begin 
    inherited; 
    edit1.Free; 
    button1.Free; 
end; 

end. 
+0

Ahhhhhhh - Danke! – JakeSays