IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Dessiner sur une image


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 6
    Par défaut Dessiner sur une image
    Voila je vous explique mon problème.

    J'ai une image positionner dans deux panels (pour pouvoir la scrooler). Par dessus je rajoute un élément graphic ou je peux dessiner. Mon probléme est lorsque je joue avec les barres de scrool, les dessins s'efface (mais sont bien en mémoire car je mémorise chaque tracé).



    Merci de votre aide.

  2. #2
    Expert confirmé
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Par défaut
    Dessines sur un bitmap, et définit ce bitmap comme image d'une PictureBox.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 6
    Par défaut
    c'est ce que j'ai fais pourtant. En fait je dessine pas reelement sur l'image, mais sur une bitmap de même taille

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    117
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2006
    Messages : 117
    Par défaut
    Bonjour,

    j'ai été amené à dessiner sur une PictureBox, et je pense que tu devrais essayer ceci :


    dans le code de la Form :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        Private buffer1 As BufferedGraphics
     
        Private Sub picturebox_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles picturebox.Paint
            buffer1.Render(e.Graphics)
        End Sub
    Dans le Form_Load ou le New :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        buffer1 = BufferedGraphicsManager.Current.Allocate(Me.picturebox.CreateGraphics, Me.picturebox.ClientRectangle)
    Au moment du dessin (en ayant mis une BackGround image à ton PictureBox) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
            With Me
                buffer1.Graphics.Clear(.picturebox.BackColor)
                buffer1.Graphics.DrawImage(.picturebox.BackgroundImage, .picturebox.ClientRectangle, New Rectangle(0, 0, .picturebox.BackgroundImage.Width, .picturebox.BackgroundImage.Height), GraphicsUnit.Pixel)
            End With
     
            ' Dessin.....
            With buffer1.Graphics
                   .DrawLine(....)
     
            End With
     
            buffer1.Render()
    j'espère que cela résoudra ton problème

    ++

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 6
    Par défaut
    merci de ta réponse mais tu le trouves dans quel import le type BufferedGraphics

    sinon il en faut, bah sa marche pas sur ma version de vb .net ^^ (et je peux pas en changer)

    Sinon en attendant j'ai fait une fonction que redessine tout des qu'on scroll l'image, c'est pas contre trés lourd et sa ralenti considérablement l'application.

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    117
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2006
    Messages : 117
    Par défaut
    merci de ta réponse mais tu le trouves dans quel import le type BufferedGraphics
    Si t'es sous VB2005, il doit y être parmi les références par défaut (à savoir System.Drawing)

    épisode précédent :
    En fait je dessine pas reelement sur l'image, mais sur une bitmap de même taille
    avec le code que je t'ai filé, tu n'as pas besoin de définir 2 pictureBox, du moins si tu fais des Drawline ou des choses du même genre (d'après mon expérience personnelle).

    a+

Discussions similaires

  1. comment dessiner sur une image
    Par baracouda dans le forum Graphisme
    Réponses: 2
    Dernier message: 26/05/2006, 00h21
  2. Dessiner sur une image
    Par cquadjul dans le forum C++Builder
    Réponses: 2
    Dernier message: 19/04/2006, 10h44
  3. Dessiner sur une image
    Par alex6891 dans le forum Java ME
    Réponses: 1
    Dernier message: 16/04/2006, 02h45
  4. Déplacer, zoomer, dessiner (sur) une image
    Par charlito dans le forum 2D
    Réponses: 4
    Dernier message: 22/02/2006, 01h58
  5. [Servlet] [Image] Dessiner sur une image
    Par gaia_dev dans le forum 2D
    Réponses: 5
    Dernier message: 01/09/2004, 17h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo