TODOPIC
Lenguajes de programación para PC => Delphi => Mensaje iniciado por: Rseliman en 13 de Enero de 2019, 15:21:38
-
Hola a todos , seguramente a muchos les paso que tienen que definir muchos labels los cuales son todos correlativos , y es tedioso cuando se trata de 50 por ejemplo ..la pregunta es la siguiente
como puedo hacer esto ??
for x:= 1 to 50 do
label[x].caption := label[x+1].caption;
Muchas gracias
-
Prueba con este código, coloca en el caption de cada Label el número de control que tiene dentro de la Form.
No sé si es esto lo que querías hacer.
procedure TForm1.BitBtn1Click(Sender: TObject);
var
Cnt:integer;
begin
for Cnt := 0 to ControlCount -1 do
begin
if Controls[Cnt] is TLabel then
begin
TLabel(Components[Cnt]).Caption:='Label '+inttostr(Cnt);
end;
end;
end;
Saludos,
Miquel
-
Prueba con este código, coloca en el caption de cada Label el número de control que tiene dentro de la Form.
No sé si es esto lo que querías hacer.
procedure TForm1.BitBtn1Click(Sender: TObject);
var
Cnt:integer;
begin
for Cnt := 0 to ControlCount -1 do
begin
if Controls[Cnt] is TLabel then
begin
TLabel(Components[Cnt]).Caption:='Label '+inttostr(Cnt);
end;
end;
end;
Saludos,
Miquel
Antes que nada ..mil gracias por laa respuesta , ahi arregle el codigo estaba mal puesto , lo que pretendo es hacer que un label sea igual al siguiente y este al siguiente y asi sucecivamente hasta 30 en mi caso o sea que con cada pulsacion cambie el .caption premero por el segundo , el segundo por el tercero , etc hasta el 30
//Unitlcd.Form2.BCLabel10.Caption := Unitlcd.Form2.BCLabel9.Caption;
//Unitlcd.Form2.BCLabel9.Caption := Unitlcd.Form2.BCLabel8.Caption;
//Unitlcd.Form2.BCLabel8.Caption := Unitlcd.Form2.BCLabel7.Caption;
//Unitlcd.Form2.BCLabel7.Caption := Unitlcd.Form2.BCLabel6.Caption;
//Unitlcd.Form2.BCLabel6.Caption := Unitlcd.Form2.BCLabel5.Caption;
//Unitlcd.Form2.BCLabel5.Caption := Unitlcd.Form2.BCLabel4.Caption;
//Unitlcd.Form2.BCLabel4.Caption := Unitlcd.Form2.BCLabel3.Caption;
//Unitlcd.Form2.BCLabel3.Caption := Unitlcd.Form2.BCLabel2.Caption;
//Unitlcd.Form2.BCLabel2.Caption := Unitlcd.Form2.BCLabel1.Caption;
Mil Gracias voy a ver si entiendo lo que escribiste
-
Prueba con este código, coloca en el caption de cada Label el número de control que tiene dentro de la Form.
No sé si es esto lo que querías hacer.
procedure TForm1.BitBtn1Click(Sender: TObject);
var
Cnt:integer;
begin
for Cnt := 0 to ControlCount -1 do
begin
if Controls[Cnt] is TLabel then
begin
TLabel(Components[Cnt]).Caption:='Label '+inttostr(Cnt);
end;
end;
end;
Saludos,
Miquel
Estimado Miguel , lo solucione de la siguiente manera ...y funciona ...mil gracias
for i := 10 downto 2 do TBCMaterialDesignButton( UnitLcd.Form2.FindComponent('BCLabel'+IntToStr(i)) ).Caption:= TBCMaterialDesignButton(UnitLcd.Form2.findcomponent('BCLabel'+IntToStr(i-1)) ).Caption ;