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

Windows Forms Discussion :

Problème de déplacement de pictureBox


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 2
    Par défaut Problème de déplacement de pictureBox
    Bonjour,

    mon problème se porte sur le déplacement d'une pictureBox . Je cherche à déplacer cette picturebox plusieurs fois dans ma form.
    Donc pour ne pas poluer mon gros projet j'ai testé dans un plus petit. Voici le code que j'ai créé :
    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
    55
    56
    57
    58
    59
    60
     
    public partial class MainForm
        {
     
            bool click;
            int departX = 36;
            int departY = 40;
            [STAThread]
            public static void Main(string[] args)
            {
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                Application.Run(new MainForm());
            }
     
            public MainForm()
            {
                //
                // The InitializeComponent() call is required for Windows Forms designer support.
                //
                InitializeComponent();
     
                //
                // TODO: Add constructor code after the InitializeComponent() call.
                //
                Console.WriteLine("Debut");
                this.pictureBox1.Hide();   
            }
     
            void PictureBox1MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
            {
                click = true;
                this.pictureBox1.MouseMove +=new MouseEventHandler(mouseMove);
                this.pictureBox1.MouseUp += new MouseEventHandler(mouseUp);
     
            }
            private void mouseUp(object sender, MouseEventArgs e)
            {
                click = false ;
                Console.WriteLine(this.departX);
                Console.WriteLine(this.departY);
            }
            private void mouseMove(object sender, MouseEventArgs e)
            {
     
                if(click)
                {
                    this.departX=this.departX + e.X;
                    this.departY=this.departY + e.Y;
                    Console.WriteLine(e.X);
                    Console.WriteLine(e.Y);
                    this.pictureBox1.Location = new System.Drawing.Point(this.departX,this.departY);
                }
            }
            void Button1Click(object sender, System.EventArgs e)
            {
                this.pictureBox1.Show();
            }
        }
    }
    En gros rien de compliquer, juste un clic sur un bouton pour faire apparaître la pictureBox, puis on click sur la picutrebox pour la déplacer (on maintient le clic pour être précis) puis on relache.
    Cependant lors du 1er déplacement aucun problème mais lors du second ma picturebox à la tremblote puis au troisième il disparait de l'écran.
    Donc j'aurais 2 questions : à quoi cela est du? Et comment faire pour résoudre cela? J'ai essayé pas mal de chose sans succès et je commence à penser que c'est dû à un bug de mousemove.

    Merci.

  2. #2
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 2
    Par défaut
    Le problème vient d'ici :

    this.pictureBox1.MouseMove +=new MouseEventHandler(mouseMove);
    this.pictureBox1.MouseUp += new MouseEventHandler(mouseUp);

    En fait à chaque fois que je cliquais sur la pictureBox j'additionnais les anciennes coordonnées avec les nouvelles et donc je sortais du cadre.

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

Discussions similaires

  1. Problème de déplacement d'un objet dessiné
    Par mhamedbj dans le forum Graphisme
    Réponses: 4
    Dernier message: 04/05/2012, 18h32
  2. Problème de déplacement d'image.
    Par xenium dans le forum Dreamweaver
    Réponses: 3
    Dernier message: 30/04/2007, 21h12
  3. Probléme avec déplacement de JPanel
    Par evie62 dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 16/01/2007, 11h38
  4. Problème de déplacement de fichier sur le Disque Dur
    Par DeFCrew dans le forum Sécurité
    Réponses: 8
    Dernier message: 11/09/2006, 12h44

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