Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Impresión (https://www.clubdelphi.com/foros/forumdisplay.php?f=4)
-   -   Identificar objeto (https://www.clubdelphi.com/foros/showthread.php?t=54072)

rruffino 08-03-2008 02:10:47

Identificar objeto
 
Hola gente, buenas a todos!
Una consulta, estoy con un problemita. Tengo en mi aplicacion un reporte en quick report, desde mi form uso ese reporte. Dentro del reporte tengo varios qrlabel. Lo que necesito hacer es segun ciertas condiciones en los datos que ingresa el usuario debo trabajar con uno u otro qrlabel del reporte. Ese proceso lo pensaba hacer con un ciclo, es decir, que de alguna forma tengo que obtener el componente qrlabel para poder asignarle o no algo. Los qrlabel estan nombrados de la forma Impreso1, Impreso2, etc, entonces pensaba desde delphi generar una variable string la cual tiene siempre el valor Impreso y segun el indice por el cual voy en el while termino de armar la variable de la forma Impreso+valor_del_indice. Entonces asi ya se como se llama el componente con el que tengo wue trabajar en el reporte, pero no se como referenciarlo, o sea identificarlo con esa variable.
Si alguien me tira una mano se lo agradeceré.
Saluos, Román.-:rolleyes:

egostar 08-03-2008 02:17:11

Hola rruffino

Si entiendo lo que quieres hacer yo hago esto:

Código Delphi [-]
Procedure TLector.ImprimeRecibo;
begin
  Case StatusRoom[1] Of
     '2' : FQRecibo.TipoExt.Caption := 'VOZ  ';
     '3' : FQRecibo.TipoExt.Caption := 'DATOS';
  end;
  Report := FQRecibo.QRecibo;
  Report.Print;
end;

Salud OS

rruffino 14-03-2008 13:37:11

Sigo sin poder hacerlo
 
Hola amigo, gracias por la respuesta.
En realidad no entiendo que haces alli. Lo que yo necesito es armar en una variable el nombre del componente que quiero identificar para luego modificarle sus propiedades. Por ejemplo, en el reporte tengo un qrlabel llamado impreso_1, entonces desde delphi yo necesito armar una variable string a la cual siempre le asigno el valor impreso_, al numero lo saco segun el indice de un arreglo para poder terminar de armar el nombre. Una vez que ya tengo en la variable el nombre del componente necesito poder identificarlo en el reporte para modificar por ej, su caption.
Desde ya muchas gracias por tu respuesta.
Román.-

Lepe 14-03-2008 13:58:53

Algo así:
Código Delphi [-]
var s:string;
     c:Tcomponent;
begin 
  s := 'impreso_1';
  c := form1.Findcomponent(s);
  if Assigned(c) then // tú sabes que será un qrlabel, aplicas el moldeo
  with TqrLabel(c) do
  begin
     Caption := 'mmmm';
  end;
Supongo que el informe, está situado sobre el Form1. Ahora mismo no recuerdo si el TQuickRep tiene el método FindComponent.

Saludos


La franja horaria es GMT +2. Ahora son las 19:44:30.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi