Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Impresión
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 25-10-2018
Neeruu Neeruu is offline
Miembro
 
Registrado: oct 2007
Posts: 484
Poder: 17
Neeruu Va por buen camino
Cool Cambiar Left de frxMemoView en tiempo de Ejecucion

Hola a todos.

Necesito que me ayuden...

Tengo una MasterData, enlazada a datos.

Dentro de la banda tengo 2 campos, un frxPictureView y un frxMemoView.. hasta acá no hay ningún problema.

El tema es que la imagen que se carga es de ancho variable y necesito que el frxMemoView se acomode al lado de la imagen...
O sea el frxMemoView cambia el left por cada renglón que se imprime y esto es lo que no se hacer...

Como puedo cambiar el left del frxMemoView por cada renglón que se imprima teniendo en cuenta el width de frxPictureView?

Saludos.
__________________
Saluda Atte Neeruu!!! :)
Responder Con Cita
  #2  
Antiguo 26-10-2018
Avatar de gatosoft
[gatosoft] gatosoft is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Bogotá, Colombia
Posts: 833
Poder: 21
gatosoft Va camino a la fama
Puedes utilizar desde delphi la función FindObject del reporte para obtener una instancia del memo o de la imagen y desde Delphi ajustar las propiedades

El sigueinte codigo asigna texto a un memo cuyo nombre se pasa como parametro... igual puedes ajustardesde aqui el left.

Código Delphi [-]
Uses frxClass;

Procedure TForm1.AsignarValorMemo(pMemoName, pMemoValue: String);
var
  t: TfrxMemoView;
Begin
  t := TfrxMemoView(frxReport1.FindObject(pMemoName));
  if t <> nil then
  t.Memo.Text := pMemoValue;
end;

Para hacer el ajuste, debes programar el evento OnBeforePrint de la banda que contiene lso componentes y hacer un llamado a una funcion externa (por ejemplo: AjustarTamanios)


Código Delphi [-]
//esto es en fastreports
procedure Header1OnBeforePrint(Sender: TfrxComponent);
begin
  AjustarTamanios();
end;

vuelves a Delphi y asignas la función externa al componente

Código Delphi [-]
procedure TForm1.Create(Sender: TObject);
begin
  frxReport1.AddFunction('function AjustarTamanios(): Boolean;');
end;

El componnte de fastreports TfrxReport, tiene un evento llamado OnUserFunction y allí verificas si la función fue llamada y haces los ajustes que consideres

Código Delphi [-]
function TForm1.frxReport1UserFunction(const MethodName: string;
  var Params: Variant): Variant;
begin
  if CompareText(MethodName, AjustarTamanios) = 0 then
     begin
      //aqui tu codigo para ajustar tamaños
   end;
end;
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Cambiar el Caption de un Form en tiempo de ejecucion kikodelphi OOP 5 14-01-2012 23:54:22
Cambiar impresora tiempo Ejecucion lacovera Impresión 8 04-11-2010 14:24:10
Cambiar imagen en tiempo de ejecucíón lucasarts_18 Gráficos 7 27-07-2005 16:51:06
cambiar indice en tiempo de ejecucion @-Soft Tablas planas 3 25-07-2004 15:47:43
cambiar color en tiempo de ejecucion? maruenda Varios 8 14-01-2004 22:28:34


La franja horaria es GMT +2. Ahora son las 07:12:58.


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
Copyright 1996-2007 Club Delphi