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

Développement Windows Discussion :

problème avec DrawString


Sujet :

Développement Windows

  1. #1
    Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2016
    Messages : 2
    Points : 4
    Points
    4
    Par défaut problème avec DrawString
    Bonjour

    J'ai un problème avec DrawString

    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Pic1.BackgroundImage = Image.FromFile(Application.StartupPath & "\myImage.png")
    Dim g As Graphics = Pic1.CreateGraphics
     
    g.DrawString("My Text SomeWhere", New Font("Arial", 20), Brushes.Black, 10, 10)

    Alors, mon texte apparait toujours caché derrière l'image !
    comment faire pour placer mon texte au dessus de l'image ?

    Merci.
    Olivier.

  2. #2
    Expert confirmé
    Inscrit en
    Avril 2008
    Messages
    2 564
    Détails du profil
    Informations personnelles :
    Âge : 64

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 564
    Points : 4 442
    Points
    4 442
    Par défaut
    bonjour

    Caché !!! tu peux donc voir derrière les Pyrénées ,Bilbao et tu as une vue perçante ma foi !!!
    Il est dessine mais efface juste apres le chargement du Picturebox car son Event Invalidate(peinture du control) efface tout...
    Quand on dessine sur la surface du control ,il faut rafraichir constamment le dessin dans l'event Resize du Form ...
    code .vb:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
     
    Public Class Form1
     
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            PictureBox1.BackgroundImage = Image.FromFile(Application.StartupPath & "\img.jpg")
        End Sub
         Private Sub Form1_Resize(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Resize
            MyDraw()
        End Sub
        Private Sub MyDraw()
            Using gr As Graphics = PictureBox1.CreateGraphics
                gr.DrawString("My Text SomeWhere", New Font("Arial", 20), Brushes.Yellow, 10, 10)
     
            End Using
        End Sub
     
      End Class
    bon code....

  3. #3
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 177
    Points : 25 125
    Points
    25 125
    Par défaut
    Citation Envoyé par MABROUKI Voir le message
    Quand on dessine sur la surface du control ,il faut rafraichir constamment le dessin dans l'event Resize du Form ...
    pas seulement donc non


    creategraphics est rarement la solution à utiliser
    il faut s'abonner à l'event paint, qui est levé après que le controle se soit dessiné
    tu peux alors y rajouter des draw qui seront par dessus, via e.Graphics

    (paint sera appelé sur le resize ou tout autre chose nécessitant un redessin)

  4. #4
    Expert confirmé
    Inscrit en
    Avril 2008
    Messages
    2 564
    Détails du profil
    Informations personnelles :
    Âge : 64

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 564
    Points : 4 442
    Points
    4 442
    Par défaut
    bonjour

    Bah ,le rafraichement du dessin ,en cas de changement du dessin, est la règle et l'évent Paint doit être appelé explicitement avec Picturebox.invalidate()....
    La portée de cette est plut générale vaste!!!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. problème de rendu avec DrawString
    Par megachameau dans le forum C#
    Réponses: 3
    Dernier message: 22/07/2010, 19h05
  2. [GEF] Problème avec l'appel de drawString
    Par bpy1401 dans le forum Eclipse Platform
    Réponses: 2
    Dernier message: 13/11/2009, 14h43
  3. problème avec drawString() - Graphics
    Par Arrakis dans le forum 2D
    Réponses: 5
    Dernier message: 05/12/2007, 23h08
  4. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

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