begin process at 2010 03 21 17:49:04
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Divers

 > 

Débutants

 > 

Exporter Graphe vers Bitmap


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Exporter Graphe vers Bitmap

mercredi 6 février 2008 à 19:50:34 | Exporter Graphe vers Bitmap

diegosaure

Bonjour à tous,

J'ai un objet MSChart que je voudrai capturer afin de le coller dans un fichier bitmap tout simplement.
Merci de me dire comment m'y prendre.

Julien
jeudi 7 février 2008 à 21:06:30 | Re : Exporter Graphe vers Bitmap

debutant VB

Membre Club

J'ai trouvé une façon de le faire (qui n'est sans doute pas la meilleure mais bon ...)

Voici le code :   "

Option Explicit

Private Declare Function BitBlt Lib "gdi32.dll" ( _
        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 Declare Function GetDesktopWindow Lib _
        "user32.dll" () As Long

Private Declare Function GetDC Lib "user32.dll" ( _
        ByVal hWnd As Long) As Long

Private Const SRCCOPY As Long = &HCC0020

Public Sub SaveMSChart(ByRef Pic As PictureBox, ByRef PicD As PictureBox, _
        ByRef mform As Form, ByVal mChart As MSChart, _
        ByVal mFileName As String)
    Pic.Visible = False
    Pic.AutoRedraw = True
    Pic.Width = Screen.Width
    Pic.Height = Screen.Height
    PicD.Visible = False
    ScreenShot Pic
    mform.ScaleMode = vbTwips
    Dim XU As Double, YU As Double
    Dim XD As Double, YD As Double
    XU = mform.Left + (mform.Width - mform.ScaleWidth) + mChart.Left
    YU = mform.Top + (mform.Height - mform.ScaleHeight) + mChart.Top
    XD = XU + mChart.Width
    YD = YU + mChart.Height
    Pic.ScaleMode = vbPixels
    PicD.AutoRedraw = True
    PicD.ScaleMode = vbPixels
    PicD.Width = (XD - XU)
    PicD.Height = (YD - YU)
    XU = XU / Screen.TwipsPerPixelX
    YU = YU / Screen.TwipsPerPixelY
    XD = XD / Screen.TwipsPerPixelX
    YD = YD / Screen.TwipsPerPixelY
    Dim numX As Integer, numY As Integer
    For numY = 0 To CInt(YD - YU)
        For numX = 0 To CInt(XD - XU)
            PicD.PSet (numX - 1, numY - 1), _
                    Pic.Point(numX + CInt(XU) - 1, numY + CInt(YU) - 1)
            DoEvents
        Next numX
    Next numY
    SavePicture PicD.Image, mFileName
End Sub

Private Sub ScreenShot(Pic As PictureBox)
    BitBlt Pic.hDC, 0&, 0&, Screen.Width, _
            Screen.Height, GetDC(GetDesktopWindow()), _
            0&, 0&, SRCCOPY
End Sub

"

En fait, la fonction prend une capture d'écran,
et localise l'objet par rapport au bord.
On peut sûrement remplacer les lignes :
For numY = 0 To CInt(YD - YU)
        For numX = 0 To CInt(XD - XU)
            PicD.PSet (numX - 1, numY - 1), _
                    Pic.Point(numX + CInt(XU) - 1, numY + CInt(YU) - 1)
            DoEvents
        Next numX
    Next numY
par la méthode Render pour aller plus vite,
mais je ne sais pas bien m'en servir.

Pic et PicD servent juste pour la fonction.
par exemple :

Module.SaveMSChart Me.Picture1, Me.Picture2, _
            Me, Me.MSChart1, "C:\monfichier.bmp"

Voilà, j'espère que cela te conviendra.

- Keyboard not found, Press any key to continue -

samedi 9 février 2008 à 14:08:32 | Re : Exporter Graphe vers Bitmap

debutant VB

Membre Club
J'y ai apporté quelques modifications :
http://www.vbfrance.com/codes/ENREGISTRER-IMAGE-CONTROLE_45682.aspx

- Keyboard not found, Press any key to continue -


Cette discussion est classée dans : graphe, exporter, bitmap


Répondre à ce message

Sujets en rapport avec ce message

Exporter Bitmap vers Excel [ par ansizak ] Bonjour,Je travaille actuellement sur un projet VB dans lequel les résultats des traitements effectués s'affichent dans une picturebox sous la forme d EXPORTER EN DBF [ par calitoli ] Comment je peux sauvegarder le resultat de ma requete "SELECT * FROM ecole" en .DBF ,MERCI.-Calito [VB 2008] Rotations sous GDI+ [ par Kite37 ] Bonjour,Dans le cadre d'un développement assez pressant, je dois trouver comment réaliser une rotation d'un objet (polygone, texte ou autre) autour de récupérer un graphe depuis excel vers une interface [ par simafst ] Salut, j'ai dessiner un graphe dans un macro excel à l'aide de VB6 et je veux savoir comment le récupérer vers une interface à l'aide du VB6.Merci pou VBA exporter un fichier excel dans un fichier txt en séparnat par des ";" [ par zewriggles ] Bonjour, je posséde un fichier excel que je veux exporter dans un fichier txt, voici ce que je dois faire :             séparer par des point virgule  réaliser un graphe avec vb 6 à partir des données sur access [ par fayssalos ] bon je trouve des problèmes pour créer un graphe avec vb 6 à partir des données sur access, si vous pouvez m'aider!! exporter des enregistrements vers fichier words prédéfinis [ par snakers07 ] bonjour, je souhaiterai avoir quelques informations, voilà je suis sous access et j'aimerai créer par exemple une facture ou autre en bref un document graphe et silverlight [ par tizguine ] tizguine Bonjour tt le monde,                   j'aimerai dessiner des graphes (courbe, diagramme camembert....) avec l Changer l'Inversion de couleur pour un remplacement de couleur [ par 3KyNoX ] Bonjour, j'ai trouvé une source qui me permet d'inverser les couleurs d'une image de façon optimisée, j'aimerai plutôt remplacer une couleur contenue Zedgraph [ par tizguine ] Bonjour tt le monde,     j'ai dessiné un graphe avec ZedGraph avec 100 valeurs de x et il m'a mit la totalité du graphe sur la fenêtre affichée. là je


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,125 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales