• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

fr

Imprimir um Form

35 mensagens neste tópico

:ipool: Oii

alguém me sabe dizer como se imprime um form em visual basic 2008?

ja procurei só que encontro coisas em sql :s

:P obrigada

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Para iniciar a impressão:

Private WithEvents PrintDoc As New Printing.PrintDocument

        Dim PD As New PrintDialog
        PD.Document = PrintDoc
        PD.ShowDialog()
        PrintDoc.Print()

Para "desenhar" a folha a imprimir (aqui, de página única):

    Private Sub Pagina(ByVal sender As System.Object, ByVal e As Drawing.Printing.PrintPageEventArgs) Handles PrintDoc.PrintPage
        Dim g As Graphics = e.Graphics

        PrintDoc.OriginAtMargins = False
        PrintDoc.DocumentName = "A minha página"
        g.PageUnit = GraphicsUnit.Millimeter
        
        'desenhar folha

        e.HasMorePages = False
    End Sub

Se o que procuras não é uma impressão controlada mas sim o equivalente à Form.PrintForm do VB6, o jpaulino já te iluminou.

EDIT: Adicionado Geshi

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Isso que encontraste é o mesmo que a solução que te dei  :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Faz exactamente a mesma coisa, e pelos vistos funciona da mesma maneira.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

bem sendo assim, obrigada  :P

vou ver agora onde por o código...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Para iniciar a impressão:

Código: [select]

Private WithEvents PrintDoc As New Printing.PrintDocument

Código: [select]

        Dim PD As New PrintDialog

        PD.Document = PrintDoc

        PD.ShowDialog()

        PrintDoc.Print()

eu utilizei esse código, contudo parece que começa a querer imprimir mas não imprime!

alguém me pode ajudar??

eu tinha simplesmente o

PrintForm1.Print()

mas desse modo corta metade da informação... B)

agradecia ajuda...

CUMPS

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

eu utilizei esse código, contudo parece que começa a querer imprimir mas não imprime!

alguém me pode ajudar??

eu tinha simplesmente o

PrintForm1.Print()

mas desse modo corta metade da informação... B)

agradecia ajuda...

CUMPS

eu para imprimir um form uso:

Meto o objecto "printform no meu form;

depois um botão e lá meto este código:

For j As Integer = 1 To 1

                PrintForm1.Print()

  Next

simples e eficaz :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

já experimentei e faz o mesmo que sem o for....lol

ou seja, corta Info!!!

B)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

já experimentei e faz o mesmo que sem o for....lol

ou seja, corta Info!!!

B)

como assim? a mim imprime-me o form todo.. tipo printscreen

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

pois....então experimenta exticar um pouco mais o form, vais ver como corta info

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

pois....então experimenta exticar um pouco mais o form, vais ver como corta info

ah.. assim ja percebi.

essa este código fora do botão.

Private Sub PrintForm1_QueryPageSettings(ByVal sender As Object, ByVal e As System.Drawing.Printing.QueryPageSettingsEventArgs) Handles PrintForm1.QueryPageSettings

        Dim newMargins As System.Drawing.Printing.Margins

        newMargins = New System.Drawing.Printing.Margins(50, 50, 50, 50)

        e.PageSettings.Margins = newMargins

    End Sub

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

tb  ja o experimentei....vi-o por aí noutro tópico (pois já corri tudo) mas acho que tinha algo diferente...vou experimentar...

CUMPS

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

tb  ja o experimentei....vi-o por aí noutro tópico (pois já corri tudo) mas acho que tinha algo diferente...vou experimentar...

CUMPS

depois diz qualquer coisa:) aqui funciona bem..

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

:cheesygrin:

tinha expirimentado esse código! mas tinha feito mal!!!  :wallbash:

agora já dá!!!  :)

B)

Muito obrigado!  :ipool:

menos um problema... :smoke:

CUMPS  ;)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

:cheesygrin:

tinha expirimentado esse código! mas tinha feito mal!!!  :wallbash:

agora já dá!!!  :)

B)

Muito obrigado!  :ipool:

menos um problema... :smoke:

CUMPS  ;)

acontece :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

:cheesygrin:

tinha expirimentado esse código! mas tinha feito mal!!!  :wallbash:

agora já dá!!!  :P

;)

Muito obrigado!  :ipool:

menos um problema... :smoke:

CUMPS  :D

Diz uma coisa.. que resolução e que tens no teu monitor?

é que eu por exemplo quero imprimir uma form do tamanho de uma folha A4, só como o esticar da form do vb é bastante curta (máximo da resolução do ecrã) faz com que não me permita imprimir uma folha total A4. No meu caso permite no máximo em altura 800..

Se eu mandar imprimir a form, na folha A4 só imprime um pouco mais da metade da folha!

Já exprimentei num computador com maior resolução e já imprime tudo direitinho..

cumps,

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Diz uma coisa.. que resolução e que tens no teu monitor?

é que eu por exemplo quero imprimir uma form do tamanho de uma folha A4, só como o esticar da form do vb é bastante curta (máximo da resolução do ecrã) faz com que não me permita imprimir uma folha total A4. No meu caso permite no máximo em altura 800..

Se eu mandar imprimir a form, na folha A4 só imprime um pouco mais da metade da folha!

Já exprimentei num computador com maior resolução e já imprime tudo direitinho..

cumps,

pois tambem só me ocupa metade da folha

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

pois tambem só me ocupa metade da folha

E não existe nenhum hipotese de o fazer? além de fazer tudo por codigo?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

E não existe nenhum hipotese de o fazer? além de fazer tudo por codigo?

um print form em que estique pela folha A4?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

um print form em que estique pela folha A4?

Sim.. que fique do tamanho da folha A4.. Porque isto é para emitir facturas. Facturas estas que tem checkbox, optionbuttons, linhas e texto....

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora