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

Messages postés
3
Date d'inscription
jeudi 1 septembre 2005
Statut
Membre
Dernière intervention
25 avril 2007
- - Dernière réponse : theocourant
Messages postés
3
Date d'inscription
jeudi 1 septembre 2005
Statut
Membre
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
Messages postés
815
Date d'inscription
mercredi 11 octobre 2000
Statut
Membre
Dernière intervention
29 septembre 2010
2
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

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 223 internautes nous ont dit merci ce mois-ci

Messages postés
3
Date d'inscription
jeudi 1 septembre 2005
Statut
Membre
Dernière intervention
25 avril 2007
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