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 :

figer une image sur la pixcturebox


Sujet :

C#

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2010
    Messages : 81
    Par défaut figer une image sur la pixcturebox
    bonjours a tous ,
    j'effectue un travail de fin d'étude pour retracer la forme d'un champ...
    pour cela après avoir récuperé des point sous forme de coordonnée mis dans un fichier texte.
    j'ouvre ce fichier texte. pour retracer le champ je passe par une fonction nommée agricoltraits (qui marche très bien)

    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
             private void btnouvrir_Click(object sender, EventArgs e)
            {
    //////////////////////////////////////////////////////////////////////////////////////////
                // reinitialisation des variable  et rafraîchissement de la picturebox
                pictureBox.Refresh();
                degrelat = 0;
                minuteslat = 0;
                degrelong = 0;
                minuteslong = 0;
                conversionlat = 0;
                conversionlong = 0;
                affichage = null;
                coordon = null;
                geodata.Clear();
                PICTTBL.Clear();
                data = null;
                DEBMAX = 0;
                DEBMIN = 0;
                DMBMAX = 0;
                DMBMIN = 0;
                DELTADEB = 0;
                DELTADMB = 0;
                echelleX = 1;
                echelleY = 1;
                length = 0;
    /////////////////////////////////////////////////////////////////////////////////////////            
                DialogResult reponse = openFileDialog1.ShowDialog() ;
                if (reponse == DialogResult.OK)
                {
     
                    Stream stream = openFileDialog1.OpenFile();
                    StreamReader lecture = new StreamReader(stream, Encoding.Default);
                    while (lecture.EndOfStream != true)
                    {
                        string ligne = " ";
                        ligne = lecture.ReadLine();
                        degrelat = Convert.ToInt32(ligne.Substring(0, 2));
                        minuteslat = Convert.ToDouble(ligne.Substring(2, 7).Replace('.', ','));
                        degrelong = Convert.ToInt32(ligne.Substring(10, 3));
                        minuteslong = Convert.ToDouble(ligne.Substring(13, 7).Replace('.', ','));
                        affichage = agricoltraits(minuteslong, minuteslat, degrelat, degrelong);
                    }
                    stream.Close();
                    lecture.Close();
                }
                Graphics g = Graphics.FromHwnd(pictureBox.Handle);   //encapsulage d'une surface de dessin , mise en lien
                //avec la picturebox
                g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias; //ligne de commande pour lisser la ligne
                //graphique tracée  
                greenpen.DashStyle = System.Drawing.Drawing2D.DashStyle.Solid;      // ligne pour commander l'apparence de la ligne
                // permet de convertir la list de points en tableau de point grâce au pen appelé greenpen
                g.DrawLines(greenpen, coordon);    // la methode drawlines dessine un segment d'un tableau
                g.Dispose();                      // pour ne pas occuper de la memoire pour rien.
            }

    seulement je voudrai que cette image soit figée car par la suite je vais travailler sur l'image (je devrai retracer des rectangles) en plus de ce que je trace.



    de plus j'ai un autre problème technique. lorsque je fais reduire mon form, la picturebox s'efface ... est il possible de remédier a ces problème si oui comment

  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
    salut

    il suffit de dessiner l'image dans une bitmap

    Cherches sur internet, c un code très simple et souvent présenté

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

Discussions similaires

  1. [JBouton] Comment mettre une image sur un bouton ?
    Par Kyti dans le forum Composants
    Réponses: 6
    Dernier message: 11/03/2005, 16h08
  2. comment Positionner une image sur une autre ?
    Par moumoule17 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 25/11/2004, 16h41
  3. Pbs d'affichage d'une image sur un panel
    Par ysr1 dans le forum C++Builder
    Réponses: 2
    Dernier message: 23/09/2004, 09h55
  4. [VB6] mettre une image sur un boutton
    Par dim dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 15/02/2004, 01h28

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