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++Builder Discussion :

D�placement d'Objets


Sujet :

C++Builder

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juillet 2003
    Messages
    19
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 19
    Par d�faut D�placement d'Objets
    slt t le monde;

    Dans mon application, je permets a l'utilisateur pendant l'executution de deplacer les objets existant sur la Form !

    dans mon code l'evenement OnMouseUp ne met la variable "Clic" a faut ce qui permet a l'utilisateur de deplacer les objets sans maintenir le bouton gauche de la souris enfonc� ! or que je ne veux pas de ca !

    Voici mon code:

    le reste du pgme

    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
     
     
    void __fastcall TForm1::FormMouseMove(TObject *Sender, TShiftState Shift,
          int X, int Y)
    {
    if (Clic==true)
    {
    const
        SC_DragMove = 0xF012;
     
      ReleaseCapture();
      ((TControl*)Sender)->Perform(WM_SYSCOMMAND, SC_DragMove, 0);
    }
    }
     
    //---------------------------------------------------------------------------
    void __fastcall TForm1::FormMouseDown(TObject *Sender, TMouseButton Button,
          TShiftState Shift, int X, int Y)
    {
    Clic=true;
    }
     
    //---------------------------------------------------------------------------
    void __fastcall TForm1::FormMouseUp(TObject *Sender, TMouseButton Button,
          TShiftState Shift, int X, int Y)
    {
    Clic=false;
    }
    //---------------------------------------------------------------------------
    je compte sur vous mes amis

    Cordialement NaDiA!


    [Mod�ration, Alacazam : les titres doivent pr�senter le sujet et uniquement cela ; pas de "help", "urgent" ... cf R�gles du Forum, merci]
    Ancien titre : Need-help Deplacement-des-objets.Urgent !

  2. #2
    Membre �prouv�
    Avatar de Alacazam
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    88
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2002
    Messages : 88
    Par d�faut Re: [email protected] !
    Bonsoir,

    Citation Envoy� par NaDiA_SoFt
    dans mon code l'evenement OnMouseUp ne met la variable "Clic" a faut ce qui permet a l'utilisateur de deplacer les objets sans maintenir le bouton gauche de la souris enfonc� ! or que je ne veux pas de ca !
    C'est bien pratique d'avoir mis le code ... je peux tester directement !
    Par contre, tes explications me paraissent un peu confuses.

    En fait, lorsque je l�che le bouton gauche, l'objet ne se d�place plus !!!
    Visiblement c'est ce qui te g�nait ...

    Si tu pouvais expliquer plus calmement
    Mathieu

  3. #3
    Membre averti
    Inscrit en
    Juillet 2003
    Messages
    19
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 19
    Par d�faut
    Bonsoir ,

    je vous reexplique mon pbme ..donc dans mon application ; le d�placement des objets se fait pas comme pr�vu car moi je veux un de�placement standard ie : je dois maintenir le bouton gauche de la sourie enfonc� lors du d�placement meme ( comme un deplacement standard ) !

    j'espere que je me suis bien exprim�e cette fois ci

    Cordialement NaDiA !

    Nota : desole pour le titre Mr Alacazam

  4. #4
    Membre �prouv�
    Avatar de Alacazam
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    88
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2002
    Messages : 88
    Par d�faut
    Bonsoir,

    Citation Envoy� par NaDiA_SoFt
    le d�placement des objets se fait pas comme pr�vu car moi je veux un d�placement standard ie : je dois maintenir le bouton gauche de la sourie enfonc� lors du d�placement meme ( comme un deplacement standard ) !
    Et bien, je suis perplexe
    Car c'est exactement ce r�sultat que j'obtiens ...

    Es-tu s�re de ne pas modifier ailleurs la variable Clic qui, je suppose, est globale ?

    Etant donn� que j'ai un vieux Builder (donc vieux compilo), �a pourrait diff�rer (mais �a me para�t bizarre) ... si �a ne s'arrange pas essaye cette autre m�thode :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    int PosX, PosY;
    bool Clic;
    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
    void __fastcall TForm1::FormMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y)
    {
    if (!Clic) {
    	Clic = true;
    	PosX = X;
    	PosY = Y;
    	}
    }
    //---------------------------------------------------------------------------
    void __fastcall TForm1::FormMouseMove(TObject *Sender, TShiftState Shift, int X, int Y)
    {
    if (!Application->Active)
    	Clic = false;
    if (Clic) {
    	Left = Left + X - PosX;
    	Top = Top + Y - PosY;
    	}
    }
    //---------------------------------------------------------------------------
    void __fastcall TForm1::FormMouseUp(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y)
    {
    Clic = false;
    }
    Bonne Continuation,
    Mathieu

  5. #5
    Membre averti
    Inscrit en
    Juillet 2003
    Messages
    19
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 19
    Par d�faut
    Merci a vous Mr Alacazam mais vous savez koi ! Sa donne toujours la meme resultat

    pour bien voir si la variable Clic ne se change pas false j'ai fait cet exemple : dans ce code j'essaye de changer la couleur de la Form a chaque evenement de la sourie; dans OnMouseDown je la mets a clRed et pour OnMouseUp je la mets a clBlack.

    pour OnMousedown sa fonctionne bien et la Form Prend la couleur Red mais pour OnMouseUp ca ne fonctionne pas et la Form ne prend jamais la couleur Black ce qui veut dire que la Variable Clic reste toujours a true une fois qu'on clique
    voici le code.

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
     
    int PosX, PosY;
    bool Clic;
    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
     
     
    //---------------------------------------------------------------------------
    void __fastcall TForm1::Button1MouseMove(TObject *Sender, TShiftState Shift,
          int X, int Y)
    {
    if (!Application->Active)
       Clic = false;
    if (Clic) {
       ((TControl*)Sender)->Left = ((TControl*)Sender)->Left + X - PosX;
       ((TControl*)Sender)->Top = ((TControl*)Sender)->Top + Y - PosY;
     
     
    const
        SC_DragMove = 0xF012;
     
      ReleaseCapture();
      ((TControl*)Sender)->Perform(WM_SYSCOMMAND, SC_DragMove, 0);
     
      }
    }
    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
     
     
    //---------------------------------------------------------------------------
     
    void __fastcall TForm1::Button1MouseDown(TObject *Sender, TMouseButton Button,
          TShiftState Shift, int X, int Y)
    {
    if (!Clic) {
       Clic = true;
       PosX = X;
       PosY = Y;
       Color=clRed;
       }
     
    }
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    //---------------------------------------------------------------------------
    void __fastcall TForm1::Button1MouseUp(TObject *Sender, TMouseButton Button,
          TShiftState Shift, int X, int Y)
    {
    Clic=false;
    Color=clBtnFace;
    }
    //---------------------------------------------------------------------------
    Cordialement NaDia !

    NOTA: je ne compile que cette portion du program c-a-d qu'il y a pas de risque que la variable Clic soit modifi� ailleurs !

  6. #6
    Membre �prouv�
    Avatar de Alacazam
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    88
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2002
    Messages : 88
    Par d�faut
    Ah ...

    (Regarde d�j� si mon code NON modifi� fonctionne pour d�placer ta Form en cliquant n'importe o� dessus).

    Ensuite, essaye pour un objet en enlevant �a :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    const SC_DragMove = 0xF012;
     
      ReleaseCapture();
      ((TControl*)Sender)->Perform(WM_SYSCOMMAND, SC_DragMove, 0);
    Attention, si tu fais des copier-coller de codes, il te faudra quand m�me affecter les �v�nements FormMouseMove, Up et Down (en double-cliquant dans l'Inspecteur d'Objet, second onglet).

    Bonne Chance,
    Mathieu

  7. #7
    Membre averti
    Inscrit en
    Juillet 2003
    Messages
    19
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 19
    Par d�faut
    sorry Mr ca foncitionne tres bien merci infiniment

    Supeeeer, ca Fonctionne meme pour les images Vous etes Super Mr Alacazam .

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. D�placement d'objets lors de l'execution
    Par pootchi dans le forum Interfaces Graphiques
    R�ponses: 5
    Dernier message: 19/11/2007, 18h24
  2. D�placement d'objet entre select
    Par jonnyboy dans le forum G�n�ral JavaScript
    R�ponses: 7
    Dernier message: 14/05/2007, 11h29
  3. Effet de vague et d�placement d'objets
    Par goformat dans le forum Interfaces Graphiques
    R�ponses: 6
    Dernier message: 23/02/2007, 01h25
  4. [Tkinter] d�placement d'objet
    Par airod dans le forum Tkinter
    R�ponses: 2
    Dernier message: 02/05/2006, 09h26
  5. [FLASH] D�placement des objets avec clavier ???
    Par 3adoula dans le forum Flash
    R�ponses: 1
    Dernier message: 07/01/2006, 01h03

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