Muy buenas tardes, hice una mescolanza de codigos que me funcionaron, pero me gustaria saber si existe forma de reducir el codigo, este es el codigo que gracias a todos ustedes agrupe de esta forma, espero tengan tiempo para echarme la mano.
Código Delphi
[-]
procedure TForm1.SomePanelsVisible(TSN:Boolean;const Panels: array of TPanel;SiNo:Boolean);
var
i,ii: Integer;
begin For ii := 0 To ComponentCount - 1 Do
If Components[ii] Is TPanel Then
TPanel(Components[ii]).Visible:= TSN; begin
For i := 0 To ComponentCount - 1 Do
If Components[i] Is TPanel Then
TPanel(Components[i]).Visible:= Not SiNo; for i := Low(Panels) to High(Panels) do
Panels[i].Visible :=SiNo;
end;end;
y de esta forma llamo el proceso,con estas opciones
Código Delphi
[-]
procedure TForm1.Button1Click(Sender: TObject);
begin
SomePanelsVisible(False,[],True); end;
procedure TForm1.Button2Click(Sender: TObject);
begin
SomePanelsVisible(False,[],False); end;
procedure TForm1.Button3Click(Sender: TObject);
begin
SomePanelsVisible(False,[Panel1, Panel10],true); end;
procedure TForm1.Button4Click(Sender: TObject);
begin
SomePanelsVisible(False,[Panel1,Panel3,Panel5,Panel7],true); end;
procedure TForm1.Button5Click(Sender: TObject);
begin
SomePanelsVisible(True,[Panel1, Panel10],False); end;