[VB6] Imprimer une form en Paysage [Résolu]

theocourant
Messages postés
3
Date d'inscription
jeudi 1 septembre 2005
Dernière intervention
25 avril 2007
- 5 sept. 2005 à 13:17 - Dernière réponse : theocourant
Messages postés
3
Date d'inscription
jeudi 1 septembre 2005
Dernière intervention
25 avril 2007
- 6 sept. 2005 à 10:36
Bonjour tout le monde,


Voilà je rencontre un souci avec l'impression d'une form avec VB


Ma form, contenant une 50aine de contrôles + une image en arrière plan + une barre de menu, doit être imprimer grâce à un bouton "Imprimer".
Le code du bouton est le suivant:

Private Sub mnu_Print_Click()
On Error GoTo ErrHandler
CommonDialog1.CancelError = True
CommonDialog1.ShowPrinter
Me.PrintForm
Exit Sub
ErrHandler:
Exit Sub
End Sub

Elle est définie en paysage mais lors de l'impression avec PrintForm, elle est imprimer en Portrait d'où problème...


Mon CommonDialog est défini en Paysage également ainsi que génération d'erreur et PrinterDefault.


Merci d'avance


Théo
Afficher la suite 

2 réponses

Meilleure réponse
Zlub
Messages postés
815
Date d'inscription
mercredi 11 octobre 2000
Dernière intervention
29 septembre 2010
- 5 sept. 2005 à 21:39
3
Merci
Salut theocourant,


Bon, alors faut définir le printer sur Landscape ... Je te proposes de
tester le code suivant pour voir comment ça fonctionne (il te faudra un
command dialog et un boutton):




Private Sub Command1_Click()

Dim BeginPage, EndPage, NumCopies, Orientation, i



CommonDialog1.CancelError = True

On Error GoTo ErrHandler



CommonDialog1.ShowPrinter



BeginPage = CommonDialog1.FromPage

EndPage = CommonDialog1.ToPage

NumCopies = CommonDialog1.Copies

Orientation = CommonDialog1.Orientation



For i = 1 To NumCopies

Printer.Orientation = cdlLandscape

Me.PrintForm

Next

Exit Sub

ErrHandler:



Exit Sub

End Sub



Tiens moi au courrant ,

++

Zlub

Merci Zlub 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 86 internautes ce mois-ci

theocourant
Messages postés
3
Date d'inscription
jeudi 1 septembre 2005
Dernière intervention
25 avril 2007
- 6 sept. 2005 à 10:36
0
Merci
Salut Zlub,

En effet, ta solution fonctionne

Un chose qu'en même : la constante passée dans Printer.Orientation est vbPRORLandscape
Enfin, je pense qu'il s'agit d'une variation de la définition des constantes vb

Merci encore


Théo

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.