TPanelのように動作するTCustomControlを作成する方法?
-
17-09-2020 - |
質問
TPanelのような振る舞いをするTCustomControlを作成する方法例えば、MyCustomComponent、私は同じラベル、画像などのコンポーネントを削除することができます。
解決
TCUSTOMPANELのこのコードは、
です。constructor TCustomPanel.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
ControlStyle := [csAcceptsControls {, ... } ];
//...
end;
.
csAcceptsControls
プロパティにControlStyle
を持つことができる多くのVCLコントロールがあります。
あなたがあなた自身のコントロールでこれをしたいのであれば、そのようなVCLコントロールから降りない場合は、次のようにしてください。
- Create Constructor をオーバーライドする
-
csAcceptsControls
プロパティ に
ControlStyle
を追加
このサンプルコードのように:
//MMWIN:MEMBERSCOPY
unit _MM_Copy_Buffer_;
interface
type
TMyCustomControl = class(TSomeControl)
public
constructor Create(AOwner: TComponent); override;
end;
implementation
{ TMyCustomControl }
constructor TMyCustomControl.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
ControlStyle := ControlStyle + [csAcceptsControls {, ...} ];
//...
end;
end.
.
- jeroen
所属していません StackOverflow