Hola Irlandes 1960,
Un millon de gracias por tu respuesta y esa gran idea :)
En mi caso en particular, tomando tu idea, en vez de jugar con el
FontSize, jugue con el campo Width.
Me di cuenta que si un reporte tiene la especificacion de que se mide
el Pixeles ( Boton derecho en el reporte, Propiedades, Tab Ruler/
Grid, Units), cada pixel se almacena en el campo Width del reporte
con el valor de 104.167, es decir, 1 pixel de ancho para un objeto
es igual a tener el valor 104.167 grabado en el campo Width.
Adicionalmente los objetos que muestran numeros en los reportes en el
campo FILLCHAR se llenan con el valor "N".
Si cambias la unidad de medida del reporte, el valor del objeto en el
campo Width sigue siendo el mismo, por ejemplo, si coloco un objeto
y le digo que tiene 1 pixel de ancho y luego cambio la unidad de
medida a Centimetros, me voy a dar cuenta que el objeto mide 0.02 cm
dentro del Generador de Reportes de Fox, pero lo mejor del caso es
que el valor que se almacena en el Width no es el 0.02 de los
centimetros, sino que sigue manteniendo el 104.167 de los Pixeles :),
Fox hace la conversion solo a nivel visual en el Genrador de
Reportes, pero sigue grabando el valor en la tabla en Pixeles. Esto
es un punto menos a controlar.
Lo anterior permite aumentar a 1 solo pixel cada objeto sin estar
pendiente en que unidad de medida fue construido el reporte. En mi
caso en particular lo que hice lo mismo que tu:
1. Copie el Reporte Original a un reporte Temporal
2. Abri el Reporte Temporal
3. Aumente en un Pixel el campo Width del Reporte --> UPDATE
MyReport SET Width = Width + 104.167 WHERE FillChar = "N" AND NOT
EMPTY( Picture )
4. Ejecuto el reporte con el Listener que sea
5. Borro el reporte temporal al salir
Lo mejor de esto, es que aumentar el campo WIDTH en un solo pixel no
es casi nada en el efecto visual del reporte, pero es el ancho
adicional que necesita un objeto en el reporte para evitar el
comportamiento del GDI+ y el ancho del campo crece hacia la
IZQUIERDA, es decir, no se descuadra la posicion del campo numerico
porque a nivel de la derecha queda igual.
Pruebalo Irlandes, solo tienes que cambiar en tu codigo, donde dice
FontSize por el campo Width y sumarle los 104.167 correspondientes al
Pixel y por favor nos comentas.
Saludos,
Angel Ferreira
> mptifflistener.rar
> 1 KVerDescargar