FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Nuevamente con RPREVIEW
Posts: 514
Joined: Sun Oct 16, 2005 03:32 AM

Nuevamente con RPREVIEW

Posted: Wed Aug 20, 2008 09:14 PM

Hola Antonio:

Al hacer:

function RPreview( oDevice )

local oPreview := TPreview():New( oDevice )

oPreview:PaintMeta()
oPreview:Zoom(.T.)

oPreview:Activate()

return nil

funciona bien pero genera doble pintada, lo que produce un efecto desagradable especialmente si la maquina es un poco lenta.

oPreview:PaintMeta() pinta el informa la primera vez, y luego con
oPreview:Activate(), se pinta una vez al inicio o cada vez que se redimensiona la ventana.

Entonces, al inicio del informa, primero se pinta como NO Zoom y luego como ZOOM ().

Hay alguna forma de evitar esto ? Tal vez poniendo el oPreview:PaintMeta() y oPreview:Activate() en otro sitio (He probado y no encuentro en dónde), ó haciendo que el informe si pinte una sola vez como ZOOM dede el inicio, lo que evitaría :PaintMeta() :Zoom(.T.) en la Función RPreview.

Saludos,

Carlos Gallego

Saludos,



Carlos Gallego



*** FWH-25.12, xHarbour 1.3.1 Build 20241008, Borland C++7.70, PellesC, ADS 11.1***

Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM

Nuevamente con RPREVIEW

Posted: Thu Aug 21, 2008 06:46 AM

Carlos,

Una solución sería modificar el método PaintMeta( lShow ) de la Clase TPreview, y añadirle ese parámetro lShow, para que al pasarle .F. no se llamase a:

         ::oMeta1:Refresh()

No lo he probado, pero podría servir. Asi evitaríamos el primer pintado.

Por favor pruébalo y nos comentas, gracias

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 514
Joined: Sun Oct 16, 2005 03:32 AM

Nuevamente con RPREVIEW

Posted: Thu Aug 21, 2008 04:17 PM
Antonio, gracias por tu ayuda.

No funcionó. En realidad observando bien, se pinta tres veces, con lShow o sin lShow en el método PaintMeta():

1a. vez: En NO ZOOM con el tamaño de las letras correcto
2a. vez: En NO ZOOM con el tamaño de las letras reducido
3a. vez: En ZOOM tal como se necesita

De igual manera, cuando está en ZOOM y se pasa a NO ZOOM o viceversa.

Incluyo ejemplo y RPreview.prg con las modificaciones

http://rapidshare.com/files/139030086/rpreview.zip.html

Saludos,

Carlos Gallego

Saludos,



Carlos Gallego



*** FWH-25.12, xHarbour 1.3.1 Build 20241008, Borland C++7.70, PellesC, ADS 11.1***

Continue the discussion