Imprimer le contenu d'un cadre

blueriver - 27 juin 2001 à 04:41
Nightcourrier Messages postés 118 Date d'inscription dimanche 12 octobre 2003 Statut Membre Dernière intervention 28 mars 2008 - 28 sept. 2004 à 16:56
Salut à tous,
Je programme une application de production de rapports et, j'aimerais imprimer mon formulaire tel qu'il apparait à l'écran sans utiliserle "printform".
Seulement, mon code ne me donne pas ce que je veux. Y'aurait-il moyen ou des méthodes pour imprimer le contenu d'un frame tel k'il apparait à l'écran?
Merci beaucoup de votre aide.

2 réponses

rik023 Messages postés 6 Date d'inscription dimanche 7 décembre 2003 Statut Membre Dernière intervention 4 janvier 2004
26 févr. 2004 à 23:27
bonjour le code ne viens pas de moi mais je l'ai essaye et il fonctionne tres bien
sur ta form tu cree 2 picturebox picture1 et picture2 un command1 et bien sur ta frame et tu ajoute ceci dans ton code:

Private Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As Long, ByVal x As Long, ByVal y As Long, _
        ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, _
        ByVal ySrc As Long, ByVal dwRop As Long) As Long

Private Sub Command1_Click()
  ' mettre sur la form ou ce trouve le frame a imprimer 2 controle picturebox
  'picture1 et picture2
  Picture2.BorderStyle = 0
  Picture2.Visible = False
  Picture2.AutoRedraw = True
  Picture1.BorderStyle = 0
  Picture1.AutoRedraw = False
  Picture1.Visible = False
  Picture1.ScaleMode = ScaleMode
  With Frame1
    Picture1.Move .Left, .Top, .Width, .Height
    Picture2.Move .Left, .Top, .Width, .Height
  End With
  With Picture1
    .ScaleMode = vbPixels
    BitBlt Picture2.hDC, 0, 0, .Width, .Height, .hDC, 0, 0, vbSrcCopy
  End With
  Clipboard.Clear
  Clipboard.SetData Picture2.Image
Picture2.Move 700, 100, Frame1.Width, Frame1.Height
  'Printer.PaintPicture Picture2.Image, 30, 120
  'Printer.EndDoc

End Sub

0
Nightcourrier Messages postés 118 Date d'inscription dimanche 12 octobre 2003 Statut Membre Dernière intervention 28 mars 2008
28 sept. 2004 à 16:56
Merci, cela marche très bien ! :)
Nightcourrier :)
0
Rejoignez-nous