Ver Mensaje Individual
  #4 (permalink)  
Antiguo 23/08/2005, 18:40
Avatar de ccca001
ccca001
 
Fecha de Ingreso: agosto-2004
Mensajes: 388
Antigüedad: 19 años, 8 meses
Puntos: 0
he aqui la solucion...

para los que le sirva... y que quieran alinear texto en informes diseñados sin datareport o crystal report (a puro codigo)...

la idea: tomar el ancho de la cadena de texto que se imprime con TextWidth...el resultado es devuelto en TWIPS (al menos en mi caso)... luego este valor los divido por 567 (567 twips = 1 cm ) e imprimo...

he aqui un ejemplo: (dos Text y un command en un form)

Private Sub Command1_Click()

n1 = FormatCurrency(Text1, 0, vbFalse, vbFalse, vbTrue)
n2 = FormatCurrency(Text2, 0, vbFalse, vbFalse, vbTrue)
largo1 = TextWidth(n1)
largo2 = TextWidth(n2)
largo1 = largo1 / 567
largo2 = largo2 / 567
Printer.CurrentX = 20 - largo1
Printer.CurrentY = 6
Printer.Print n1
Printer.CurrentX = 20 - largo2
Printer.CurrentY = 7
Printer.Print n2
Printer.EndDoc
End Sub

e imprime alineado a la derecha...
__________________
"How do you define Real?"