TPanel
には、TPanel
のすべてのオブジェクトを消去する方法がありますか?教えてください。TPanelクリーニング(Lazarus)
たとえば、TPanel
(Label.Visible = true)にいくつかのラベルが置かれている場合、メソッドを適用した後、それらは不可視になりました(Label.Visible:= false)。
TPanel
には、TPanel
のすべてのオブジェクトを消去する方法がありますか?教えてください。TPanelクリーニング(Lazarus)
たとえば、TPanel
(Label.Visible = true)にいくつかのラベルが置かれている場合、メソッドを適用した後、それらは不可視になりました(Label.Visible:= false)。
と右の親を割り当てる必要がありますが、実行時にコントロールを作成する場合は、TPanel上のすべてのオブジェクトを破壊する場合、またはあなたが非表示のみが必要ですか?
あなたは、このコードはあなたを助けるかもしれパネルのすべてのコンポーネントを非表示にのみ必要な場合:
Example of HideAll components of panel
procedure TForm1.chk_Visible_AllChange(Sender: TObject);
var
n: Integer;
cmp : TComponent;
begin
for n:= 0 to ComponentCount-1 do
begin
cmp := Components[n];
if cmp.GetParentComponent=Panel1 then
begin
if cmp is TLabel then
TLabel(cmp).Visible:= chk_Visible_All.Checked;
if cmp is TButton then
TButton(cmp).Visible:= chk_Visible_All.Checked;
if cmp is TMemo then
TMemo(cmp).Visible:= chk_Visible_All.Checked;
if cmp is TGroupBox then
TGroupBox(cmp).Visible:= chk_Visible_All.Checked;
end;
end;
end;
もちろんあなたは、可視性を変更します親としてのあなたのパネルを持って
Panel.Visible = false;
すべての要素を使用することができます。
あなたは彼らに
myLabel.Parent = Panel;
はそれは私が必要なものだ、ありがとう! – JohnS