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

theocourant 3 Messages postés jeudi 1 septembre 2005Date d'inscription 25 avril 2007 Dernière intervention - 5 sept. 2005 à 13:17 - Dernière réponse : theocourant 3 Messages postés jeudi 1 septembre 2005Date d'inscription 25 avril 2007 Dernière intervention
- 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

Zlub 815 Messages postés mercredi 11 octobre 2000Date d'inscription 29 septembre 2010 Dernière intervention - 5 sept. 2005 à 21:39
+3
Utile
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
Cette réponse vous a-t-elle aidé ?  
theocourant 3 Messages postés jeudi 1 septembre 2005Date d'inscription 25 avril 2007 Dernière intervention - 6 sept. 2005 à 10:36
0
Utile
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.