Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    [VB6] oggetto Printer e tabulazioni

    Ciao a tuti... come si può notare dal titolo ho difficoltà a far prendere le tabulazioni all'oggetto Printer.
    Io dovrei stampare una cosa tipo:
    ------------------------------------------------------------

    codice: AST000
    cliente: Pinco pallo

    ------------------------------------------------------------
    Allineate per fare un po' di ordine nella pagina... Il problema è che non ci riesco!

  2. #2
    vedo che non riesco a farlo manco qui!!!

  3. #3
    Utente di HTML.it L'avatar di Brainjar
    Registrato dal
    Nov 2004
    Messaggi
    1,162
    Risolvi tutto con Printer.CurrentX, guarda la guida in linea.

    Ciao,
    Ciao, Brainjar

  4. #4
    l'ho guardata, ma non ci riesco! mi va a capo così:

    -------------------------------------
    codice:
    AST000
    cliente:
    pinco
    -------------------------------------
    spostato di x che do io (qui non riesco a spostarlo)

  5. #5
    Utente di HTML.it L'avatar di Brainjar
    Registrato dal
    Nov 2004
    Messaggi
    1,162
    Devi impostare la coppia di valori Printer.CurrentX e Printer.CurrentY
    per ogni Printer.Print ..... che esegui.

    Ci sarebbero altre soluzioni, ma tutto dipende dal meccanismo di
    stampa che usi.

    In questo esempio vai a capo solo quando imposti CurrentY

    codice:
    ' Prima riga
    Printer.CurrentX = 100 
    Printer.Currenty = 100
        Printer.Print "Codice :"
    Printer.CurrentX = 600 
    Printer.CurrentY = 100
        Printer.Print varCodice ' <-- Contiene 'AST000'
    ....
    ....
    
    ' Seconda riga
    Printer.CurrentX = 100 
    Printer.Currenty = 200
        Printer.Print "Cliente :"
    Printer.CurrentX = 600 
    Printer.CurrentY = 200
        Printer.Print varCliente ' <-- Contiene 'Pinco'
    Ovviamente il tutto lo potresti parametrizzare e metterlo in un ciclo
    automatico. Ripeto, è solo una delle diverse soluzioni.

    Ciao.
    Ciao, Brainjar

  6. #6
    Non avevo considerato questa soluzione perchè ho una 20° di righe da scrivere e non volevo ripetere per ognuna X ed Y..., ma mi sa che alla fine farò così!
    Avevo letto qualcosa su Printer.print Tab(n);
    Sai come funzia?

  7. #7
    Utente di HTML.it L'avatar di Brainjar
    Registrato dal
    Nov 2004
    Messaggi
    1,162
    Non l'ho mai utilizzato, per il semplice motivo che se utilizzo un
    font di stampa diverso mi sballo tutte le posixioni.
    CurrentX è CurrentY offrono un posizionamento più granulare.

    Per le numerose righe, come ti ho già suggerito, potresti impostare
    un ciclo For ... Next, e codifichi solo la stampa di una riga che ...
    ripeterai n volte, cambiando ad ogni riga il CurrentY che ricaverai
    dalla variabile del ciclo.

    Ciao,
    Ciao, Brainjar

  8. #8
    dovrei avere tutti i dati in un array, ma non è così! Cmq sto usando il tuo sistema...
    Ciao e Grazie

  9. #9
    Puoi limitarti ad impostare CurrentX, in questo modo:
    codice:
    'unità di misura nella stampa
    Printer.ScaleMode = vbMillimeters
    
    'prima riga
    Printer.Print "Codice:"; 'nota il punto e virgola finale
    Printer.CurrentX = 40    'sposto X di 40 millimetri
    Printer.Print varCodice  'questa stampa prosegue sulla stessa riga della precedente
    
    'seconda riga
    Printer.Print "Cliente:";
    Printer.CurrentX = 40
    Printer.Print varCliente
    Il puntoevirgola finale di alcune righe fa in modo che la stampa seguente continui sulla stessa riga, senza modificare quindi la proprietà CurrentY.
    Chi non cerca trova.

  10. #10
    Grazie... questo non lo sapevo!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.