Visualizzazione dei risultati da 1 a 10 su 10

Discussione: [VB6] Stampare un form

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2004
    Messaggi
    162

    [VB6] Aiuto!! Stampare un form

    Salve a tutti,
    ho un grosso problema.
    In un'applicazione che sto creando, ho bisogno di stampare una fattura. Per tutta una serie di motivi, ho deciso di utilizzare un form e non un datareport per realizzarla.
    Adesso il mio problema è il seguente:

    il form ha la dimensione del foglio A4 ma come si fa dire alla stampante di stampare in orizzontale?

    Nei DataReport c'è l'opzione
    DataReport.Orientation = rptOrientLandscape

    ma con i form come si fa?
    Forse si può utilizzare l'oggetto "printer"
    Aspetto risposte...

  2. #2
    Utente di HTML.it L'avatar di Brainjar
    Registrato dal
    Nov 2004
    Messaggi
    1,162
    Utilizza :

    Printer.Orientation = VBRUN.PrinterObjectConstants.vbPRORLandscape

    Ciao,
    Ciao, Brainjar

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2004
    Messaggi
    162
    ok, ma mi spieghi come si usa l'oggeto "printer" per stampare il form?

  4. #4
    Utente di HTML.it L'avatar di Brainjar
    Registrato dal
    Nov 2004
    Messaggi
    1,162
    L'oggetto printer lo usi per settare la stampante.
    Per stampare il form usa il metodo del form stesso:

    PrintForm

    Esempio :

    codice:
    Private Sub Command2_Click()
        Printer.Orientation = VBRUN.PrinterObjectConstants.vbPRORLandscape
        Me.PrintForm
    End Sub
    Ciao,
    Ciao, Brainjar

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2004
    Messaggi
    162
    Funziona! Grazie!

    PS: e per ristampare in verticale?

  6. #6
    Utente di HTML.it L'avatar di Brainjar
    Registrato dal
    Nov 2004
    Messaggi
    1,162
    codice:
        Printer.Orientation = VBRUN.PrinterObjectConstants.vbPRORPortrait
    Ciao,
    Ciao, Brainjar

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2004
    Messaggi
    162
    Ultima domanda:
    posso intervenire sulle dimensioni dei margini della pagina?

  8. #8
    Utente di HTML.it L'avatar di Brainjar
    Registrato dal
    Nov 2004
    Messaggi
    1,162
    Ti riporto quanto citato da MSDB (Help):

    Proprietà di scala
    Per l'oggetto Printer sono disponibili le seguenti proprietà di scala:

    ScaleMode


    ScaleLeft e ScaleTop


    ScaleWidth e ScaleHeight


    Zoom
    Le proprietà ScaleLeft e ScaleTop definiscono rispettivamente le coordinate x e y corrispondenti all'angolo superiore sinistro di una pagina stampata. Modificando i valori di ScaleLeft e ScaleTop, è possibile definire i margini sinistro e superiore della pagina stampata. ScaleLeft e ScaleTop consentono, ad esempio, di stampare un form centrato (PFrm) sulla pagina utilizzando le seguenti istruzioni:

    Printer.ScaleLeft = -((Printer.Width - PFrm.Width) / 2)
    Printer.ScaleTop = -((Printer.Height - PFrm.Height) _
    / 2)

    Molte stampanti supportano la proprietà Zoom che consente di definire la percentuale di cui si desidera modificare le proporzioni dell'output. Il valore predefinito della proprietà Zoom è 100, che corrisponde alla stampa dell'output con dimensioni reali. È possibile utilizzare la proprietà Zoom per ridurre o ingrandire la pagina da stampare rispetto alle dimensioni effettive del foglio. Impostando Zoom su 50, ad esempio, la pagina stampata avrà una lunghezza e una larghezza pari alla metà della lunghezza e della larghezza del foglio. La sintassi riportata imposta la proprietà Zoom su dimensioni pari alla metà delle dimensioni predefinite dell'oggetto Printer:

    Printer.Zoom = 50
    Potresti provare con Zoom, un valore maggiore di 100 ti dovrebbe
    ridurre i margini, minore di 100, aumentarli.

    Ciao,
    Ciao, Brainjar

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2004
    Messaggi
    162
    Sei stato gentilissimo.
    Grazie, tutto!!!
    Ciao

  10. #10

    [VB6] Stampa di un form fatto da controlli geneticamente differenti

    Salve, mi introduco esponendo la mia problematica.

    La mia applicazione fa ottenere all'utente (quindi in run time) un form sia con controlli creati in fase di progettazione (labels e textbox) che creati durante l'esecuzione (es. oggetti grafici come linee e punti).

    Il punto è che non riesco a stampare un form siffatto. PERCHE' NON MI SUGGERITE PER FAVORE COME FARE, O QUANTO MENO CHE STARDA PRENDERE (printer, clipboard, ...)?

    Grazie mille.

    Ciao, Giuliano.

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.