Tengo una duda, espero me pudieran apoyar...
Tengo un código para impresión de un sistema para registrar las ventas, pedidos, etc de una tienda de comida rápida, el código lo que debe hacer, es imprimir un ticket de venta o de entrega de pedidos, así que no debería tener mucha ciencia, además lo imprime a la impresora que esté por default, no hay necesidad (por el momento) de hacer que se puedan elegir las impresoras.
El código es el siguiente:
Código:
Como verán, algo sencillo, sin embargo, estoy teniendo problemas para posicionar los textbox en "x/y" coordenadas, como verán con la opción de Printer.Print, sólo lo imprime desde la primera columna, si utilizo la función que cree "colocar" y les doy las coordenas, p.e. colocar LblTotal, 100,30 no lo hace, no sé a que se deba. Private Sub BtnImprimirFactura_Click() Printer.Orientation = 1 Printer.ScaleMode = 6 Printer.ScaleHeight = 210 Printer.ScaleWidth = 297 Printer.FontSize = 8 Printer.FontBold = False ' Encabezados colocar "XXXXXXXXXXXXXXXXXXXXXXXXXXX", 55, 4 colocar "--------------------------------------------------------------------", 10, 5 colocar "OPERADO POR:", 91, 7 colocar "AHURES FRANQUICIAS, S.A. DE C.V.", 30, 9 colocar "RFC: AFR080801F62", 87, 12 colocar "PLAZA PALMAS 1", 96, 14 colocar "BLVD UNIVERSITARIO 395 LOCAL 5", 30, 16 colocar "JURIQUILLA, QUERÉTARO", 65, 18 colocar "-------------------------------------------------------------------", 10, 20 colocar "-------------------------------------------------------------------", 10, 24 colocar " ", 10, 24 ' Encabezados Pedidos colocar "SERVICIO:", 180, 26 colocar " ", 10, 28 Printer.FontSize = 7 colocar "CLAVE DESCRIPCIÓN P.U. CANTIDAD IMPORTE", 10, 30 colocar "-------------------------------------------------------------------", 10, 32 colocar " ", 10, 34 ' Importes de Pagos Printer.Print LblSubTotal Printer.Print LblDescCliente Printer.Print LblDescAdicional Printer.Print LblSubtotal2 Printer.Print LblIVA Printer.Print LblTotal Printer.EndDoc End Sub Private Function colocar(texto As String, X As Integer, Y As Integer) Printer.CurrentX = X Printer.CurrentY = Y Printer.Print texto End Function
Existe alguna forma de posicionar los textbox, para que queden de acuerdo a como los necesito, ¡Ojo! estos texbox corresponden a importes, por lo tanto, si utilizo un tab(n) en la impresión estos quedan descuadrados, al parecer lo que necesitaría es que estén alineados a la derecha, creo.
Espero sus comentarios y de antemano les agradezco su atención.
Saludos.