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 :

traçage d'un cercle suite à un évènement


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mars 2010
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 11
    Par défaut traçage d'un cercle suite à un évènement
    Bonsoir à tous,
    Je voudrais créer une interface c# qui contient un bouton noeud.
    Quand je clique une fois sur celle ci et je clique sur un endroit de la fenetre que j'ai créé il se trace une cercle, le dessin de cette dernière ne se fait autre fois que si je refait une simple clique sur le bouton et faire autre clique sur autre endroit c'est le code que j'ai arrivé à l'écrire mais, j'ai constaté que presque toute est fait juste qu'elle reste une petite probléme dans la création du premier cercle seulement quand je clique la premiere fois sur la fenetre seulement(sans faire clique sur la bouton) la cercle est dessinée mais pour dessiner d'autre c bon car ça se fait comme je désire (je clique sur la bouton puis sur la fenetre la cercle est dessiné)
    je sais pas comment corriger mon code, je besoin de votre aide s'il vous plait car je suis débutante en c#.
    Merci d'avance.

    Voila le code que j'ai fait:

    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
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
     
    namespace Project
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
              private void NoeudButton_Click(object sender, EventArgs e)
              {
                this.MouseClick += new MouseEventHandler(Form1_MouseClick);
     
            }
     
            private void Form1_MouseClick(object sender, MouseEventArgs e)
            {
             this.MouseClick -= new MouseEventHandler(Form1_MouseClick);
                drawCircle(e.X, e.Y);
                //throw new NotImplementedException();
     
            }
     
           private void drawCircle(int x,int y)
           {
               Graphics g;
               g= CreateGraphics();
               Rectangle myRectangle = new Rectangle(x, y, 40, 40);
               Pen myPen= new Pen(Color.Blue,4);
               SolidBrush sb1 = new SolidBrush(Color.Black); // On crée un brush.
               g.FillEllipse(sb1, new Rectangle(new Point(x, y), new Size(40,40)));
               g.DrawEllipse(myPen,myRectangle);
               g.Dispose();
           }  
     
        }
    }

  2. #2
    Expert confirmé

    Homme Profil pro
    consultant développeur
    Inscrit en
    Mai 2005
    Messages
    3 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : consultant développeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 040
    Par défaut
    Bonjour,
    Je suis novice en C# et j'ai regardé ton code.
    chez moi il réagit bien : pour obtenir le premier cercle, je dois bien cliquer sur le bouton auparavant ... est-ce bien cela ton problème ?

    J'ai juste dû corriger
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     private void drawCircle(int x, int y)
            {
                Graphics g;
                g = CreateGraphics();
                Rectangle myRectangle = new Rectangle(x, y, 40, 40);
                Pen myPen = new Pen(Color.Blue, 4);
                SolidBrush sb1 = new SolidBrush(Color.Green); // On crée un brush.
                g.FillEllipse(sb1, new Rectangle(new Point(x, y), new Size(40, 40)));
                g.DrawEllipse(myPen, myRectangle);
                g.Dispose();
            }

  3. #3
    Membre averti
    Inscrit en
    Mars 2010
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 11
    Par défaut
    non non, c'est faute de frappe!! lors du copie du code!
    mais j'ai compilé déja avec aucune erreur et Je sais tout ça marche sauf que ma probléme c'est comme j'ai dit qu'il est dans la première cercle elle s'est crée just avec un simple clique sur ma fenetre mais je désire qu'elle se crée à la suite du clique sur le bouton puis sur une endroit de ma fenetre comme pour le reste d'essai.

  4. #4
    Expert confirmé

    Homme Profil pro
    consultant développeur
    Inscrit en
    Mai 2005
    Messages
    3 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : consultant développeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 040
    Par défaut
    Alors je le confirme : sur mon poste, VS2005, ça marche comme tu le voudrais : je dois cliquer sur le bouton avant de pouvoir dessiner un premier cercle !

    N'initialises-tu pas un événement Form1_MouseClick() par défaut, à l'ouverture ?

    bizarre

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

Discussions similaires

  1. Traçage d'un cercle
    Par B I L K A M dans le forum MATLAB
    Réponses: 2
    Dernier message: 12/04/2007, 09h55
  2. Fermer une fenêtre suite à un évènement
    Par brazilia28 dans le forum Général JavaScript
    Réponses: 40
    Dernier message: 07/02/2007, 17h05
  3. [VBA Excel] Associer N macros à N boutons suite à un événement
    Par Vorillyan dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 24/11/2006, 08h46
  4. Fonction activé suite à un événement réalisé "pendant" une seconde!
    Par Martyin dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 28/10/2006, 18h45
  5. Réponses: 5
    Dernier message: 28/02/2006, 09h44

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