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

C# Discussion :

Axes dans une pictureBox


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2016
    Messages
    104
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2016
    Messages : 104
    Par défaut Axes dans une pictureBox
    Bonjour à tous,

    J'ai récemment commencé à programmer en c# et j'aimerai savoir comment afficher les axes X et Y dans une pictureBox.

    J'aimerai également placer une checkBox qui permettrait d'afficher ou d'enlever ces deux axes.

    Merci pour votre aide.

  2. #2
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Par défaut
    Bonjour

    Il n'y a pas d'axe dans une pictureBox...

    donc, si tu veux dessiner des axes, il faut faire un usercontrol dans lequel tu géreras toi même le dessin (le paint).

    Ou sinon te tourner, si tu veux afficher des courbes vers le Graph Control de microsoft qui sont dédiés à l'affichage de courbes, etc...

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2016
    Messages
    104
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2016
    Messages : 104
    Par défaut
    Je te remercie de ta réponse rapide.

    Donc le UserControl je peux l'intégrer dans la pictureBox par après ?
    Et comment je peux dessiner les axes dans le UserControl ?

    Merci de ton aide.

  4. #4
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Par défaut
    Non,

    tu te fais ton propre user control qui dans la méthode OnPaint() qui sera surchargé fera le dessin des Axes mais aussi de l'image.

    Genre un truc comme:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    ........OnPaint(object sender, ...) // j'ai plus les arguments en tete de la méthode OnPaint()
    {
        Graphics g = e.Graphics // (e etant un paramètre passée à OnPaint() par le système
        g.clear(Color.White);
        // Dessine un axe
        Pen p = new Pen(Color.Black);
        g. DrawLine(p, 0,this.Height-5,this.Width, this.Height-5); // axe X, le -5 pour ne pas être sur le bord
        g.DrawLine(p, 0+5, 0, 0+5,  this.Height);
        g. DrawBitmap(TonImage, 0,0);
    }

    Voilà, j'ai fait du "pseudo code" car je n'avais pas Visual studio sous la main mais ça devrait t'aider !!!

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2016
    Messages
    104
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2016
    Messages : 104
    Par défaut
    Merci pour l'aide !

    J'ai testé mais il me dit que 'Graphics' ne contient pas de définition pour 'clear' et pour 'DrawBitmap'.

    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    protected override void OnPaint(PaintEventArgs e) 
            {
                Graphics g = e.Graphics; // (e etant un paramètre passée à OnPaint() par le système
                g.clear(Color.White);
                // Dessine un axe
                Pen p = new Pen(Color.Black);
                g.DrawLine(p, 0, this.Height - 5, this.Width, this.Height - 5); // axe X, le -5 pour ne pas être sur le bord
                g.DrawLine(p, 0 + 5, 0, 0 + 5, this.Height);
                g.DrawBitmap(pictureBox1, 0, 0);
            }

  6. #6
    Membre Expert Avatar de jopopmk
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2011
    Messages
    1 856
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 1 856
    Par défaut
    Salut,

    le code de Monz est un "pseudo code", il a été fait à la volée pour t'orienter
    * la méthode Clear() prend une majuscule,
    * la méthode DrawBitmap() fait, à mon avis, référence à DrawImage().

    La fiche MSDN de la classe Graphics.

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

Discussions similaires

  1. [VB.NET2005]Problème avec GIF dans une picturebox
    Par Dnx dans le forum Windows Forms
    Réponses: 7
    Dernier message: 20/08/2006, 12h48
  2. Dessiner dans une PictureBox
    Par pj69100 dans le forum MFC
    Réponses: 4
    Dernier message: 22/04/2006, 18h30
  3. [C#]Modifier l'image dans une PictureBox depuis un flux http
    Par f.colo dans le forum Windows Forms
    Réponses: 1
    Dernier message: 14/02/2006, 09h18
  4. Rendre le fond transparent dans une picturebox
    Par fun31 dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 20/01/2005, 18h17
  5. VB6] imprimer le texte afficher dans une picturebox
    Par Persons dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 27/08/2004, 11h15

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