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

MFC Discussion :

Deplacement d'un controle avec la souris


Sujet :

MFC

  1. #1
    Membre du Club Avatar de hepsilonz
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2005
    Messages : 54
    Points : 54
    Points
    54
    Par défaut Deplacement d'un controle avec la souris
    Bonjour à tous,

    Je voudrai pouvoir deplacer un controle, CButton CStatic, avec ma souris. En maintenant le bouton gauche de la souris enfoncé et deplacant ma souris je pourrai deplacer mon controle n'importe ou sur ma fenetre . est ce que quelqu'un a une idée ou une piste? Merci

  2. #2
    Membre régulier
    Inscrit en
    Février 2003
    Messages
    141
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 141
    Points : 95
    Points
    95
    Par défaut
    pour déplacer ton controle, tout est là : http://c.developpez.com/faq/vc/?page...ontrolInWindow

    il te suffit de récup les coordonnées du curseur : http://c.developpez.com/faq/vc/?page=CWnd#GetCursorPos
    Qui dit buzz??!!!!

  3. #3
    Membre du Club Avatar de hepsilonz
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2005
    Messages : 54
    Points : 54
    Points
    54
    Par défaut
    Merci pr ta reponse aussi rapide, mais j'ai vraiment du mal avec cette solution ....

    En fouillant un peu sur l'aide de C++ Builder je me suis apercu que l'on pouvai deplacer un objet en utilisant ces deux lignes:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    void __fastcall TForm1::FormMouseDown(TObject *Sender, TMouseButton Button,
          TShiftState Shift, int X, int Y)
    {
       ReleaseCapture();
       SendMessage(Handle, WM_SYSCOMMAND, 0xF012, 0);
    }
    Est-il possible d'utiliser ce code sous Visual ?

    En se qui concerne la FAQ de Visual C++, pourrai tu m'indiquer ou et comment placer le code fournit? Je precise que je travaille avec des composant crée dynamiquement.

    Merci

  4. #4
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    SendMessage c'est standard mais je doute que ça deplace le controle ...

  5. #5
    Membre régulier
    Inscrit en
    Février 2003
    Messages
    141
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 141
    Points : 95
    Points
    95
    Par défaut
    Citation Envoyé par hepsilonz
    En se qui concerne la FAQ de Visual C++, pourrai tu m'indiquer ou et comment placer le code fournit? Je precise que je travaille avec des composant crée dynamiquement.
    ce qui t'interressse c'est le moment où le bouton sera relaché, il faut donc que tu places ce code dans l'evennement (ou plutot la fonction) associé au relachement du bouton gauche sur le controle que tu veux déplacer (utilise class wizard). en faisant kom ça, le controle ne se déplacera pas en mm temps que la souris, mais c deja un bon début
    Qui dit buzz??!!!!

  6. #6
    Membre du Club Avatar de hepsilonz
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2005
    Messages : 54
    Points : 54
    Points
    54
    Par défaut
    Merci a tous pour vos reponses, finalement en utilisant le code suivant, on peut deplacer un controle sans aucun probloème de plus le controle suis le mouvement de la souris.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    void CCustomButton::OnLButtonDown(UINT nFlags, CPoint point)
    {
     
    	 ReleaseCapture(); 
    	 SendMessage(WM_SYSCOMMAND, 0xF012, 0);
    }
    Ce qui est beaucoup plus simple que la méthode proposé dans la FAQ, j'espere que ce bout de code aidera d'autre debutant comme moi.

  7. #7
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    le code proposé dans le faq c'est pour deplacer un controle a partir d'une fenetre et non dans le controle lui meme ...
    la difference est de taille.

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 17/03/2009, 09h37
  2. [C#] Deplacer un formulaire avec la souris
    Par cMoMo dans le forum Windows Forms
    Réponses: 2
    Dernier message: 17/12/2006, 13h30
  3. cumul d'evenement / deplacement de div avec la souris
    Par highman dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 01/04/2006, 11h59
  4. [VB6]Redimensionner un controle avec la souris???
    Par Goldenkiller dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 12/03/2006, 19h52
  5. [VS2005][C#] Déplacer control avec la souris!
    Par pocket dans le forum Windows Forms
    Réponses: 3
    Dernier message: 02/03/2006, 20h34

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