Deplacer un bouton dans un form

Résolu
fredouille312 Messages postés 48 Date d'inscription samedi 19 mars 2005 Statut Membre Dernière intervention 20 avril 2008 - 15 déc. 2005 à 22:15
projetf Messages postés 26 Date d'inscription dimanche 15 avril 2007 Statut Membre Dernière intervention 27 avril 2009 - 26 avril 2007 à 22:11
Bonjour à tous,
Alors voilà, mon problème, c'est que je n'arrive pas à dépalcer un objet (un bouton) sur mon Form... Merci de votre aide.
Fréd.

20 réponses

LUDINSKI Messages postés 441 Date d'inscription mardi 2 décembre 2003 Statut Membre Dernière intervention 22 mai 2012 7
19 déc. 2005 à 06:39
3
cs_Crazyht Messages postés 1522 Date d'inscription mardi 18 décembre 2001 Statut Membre Dernière intervention 21 août 2010 8
15 déc. 2005 à 22:38
Tu as essayé en modifiant les proprietes Top et Left de ton objet ?

A++

CrazyHT
MVP Visual C#.NET
0
cs_coq Messages postés 6351 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 100
15 déc. 2005 à 22:39
Salut,

En changeant la valeur de Location.

/*
coq
MVP Visual C#
*/
0
cs_coq Messages postés 6351 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 100
15 déc. 2005 à 22:42
Oups

/*
coq
MVP Visual C#
*/
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
fredouille312 Messages postés 48 Date d'inscription samedi 19 mars 2005 Statut Membre Dernière intervention 20 avril 2008
15 déc. 2005 à 22:55
Merci pour vos réponses; mais je crois que je n'ai pas été assez précis. En fait, ce que je veux c'est pouvoir faire un glisser-déplacer (Drag&Drop) de mon bouton sur mon Form. Le sousis, c'est que je ne trouve que des explications concernant le contenu d’une listbox vers une autre etc....
0
LUDINSKI Messages postés 441 Date d'inscription mardi 2 décembre 2003 Statut Membre Dernière intervention 22 mai 2012 7
16 déc. 2005 à 05:56
Salut fredouille,

Petite précision :
tu veux pouvoir déplacer ton boutton n'importe où sur ta form ou juste vers un endroit prédéfini ?
0
fredouille312 Messages postés 48 Date d'inscription samedi 19 mars 2005 Statut Membre Dernière intervention 20 avril 2008
16 déc. 2005 à 08:10
Salut LUDINSKI,
Alors je veux pouvoir déplacer mon bouton n'importe ou
0
LUDINSKI Messages postés 441 Date d'inscription mardi 2 décembre 2003 Statut Membre Dernière intervention 22 mai 2012 7
16 déc. 2005 à 09:10
Alors je te propose ceci :

// Indique si le boutton gauche de la souris est enfoncé au-dessus du boutton
private bool
_mouseDownOverButton;

// Indique si le boutton est en train d'être déplacé
private bool
_buttonIsMoving;

// Contient les coordonnées de la souris par rapport au coin supérieur gauche du boutton
private Point _cursOnButton;

private void button_MouseMove( object
sender, MouseEventArgs e)
{
if
( _mouseDownOverButton && ! _buttonIsMoving )
{
_buttonIsMoving = true
;
_cursOnButton = new
Point( e.X, e.Y );
button.BringToFront();
}
else if
( _buttonIsMoving )
{
Point point = PointToClient( MousePosition );
button.Left = point.X - _cursOnButton.X;
button.Top = point.Y - _cursOnButton.Y;
}
}

private void button_MouseDown( object
sender, MouseEventArgs e )
{ _mouseDownOverButton ( e.Button MouseButtons.Left );
}

private void button_MouseUp( object
sender, MouseEventArgs e )
{
_mouseDownOverButton = false
;
_buttonIsMoving = false
;
}

private void button1_Click( object
sender, System.EventArgs e )
{
if
( _buttonIsMoving )
return
;

// Traitement à effectuer lors d'un clique sur le boutton
}

Par contre je ne gère pas le cas où le boutton est déplacé hors de la fenêtre...
0
cs_coq Messages postés 6351 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 100
16 déc. 2005 à 09:12
Ah oui effectivement c'était une précision légèrement importante...

/*
coq
MVP Visual C#
*/
0
fredouille312 Messages postés 48 Date d'inscription samedi 19 mars 2005 Statut Membre Dernière intervention 20 avril 2008
17 déc. 2005 à 14:25
Merci pour ton code LUUDINSKI,

Mais j'ai un ptit soucis avec le ligne suivante :

_cursOnButton = new Point( e.X, e.Y );

enfait, il me met cette erreur --> Error 1 'System.EventArgs' does not contain a definition for 'X'
--> Error 1 'System.EventArgs' does not contain a definition for 'Y'

merci de m'aider.
Fréd.
0
LUDINSKI Messages postés 441 Date d'inscription mardi 2 décembre 2003 Statut Membre Dernière intervention 22 mai 2012 7
19 déc. 2005 à 04:00
Salut,

C'est que tu n'es pas dans l'évènement MouseMove...

Pour l'intercepter, soit tu passes par le concepteur en mode design
Soit tu ajoute cette ligne (dans le constructeur de ton formulaire par exemple) :
button.MouseMove += new
MouseEventHandler( button_MouseMove );

Idem pour les méthodes button_MouseDown, button_MouseUp et button_Click
Ce sont des méthodes liées à un évènement du boutton !!

Mais sinon, je suis en train de créer une classe permettant de déplacer n'importe quel contrôle sur un formulaire
Je la posterai ici une fois terminé (aujourd'hui normalement !!)

Bye
0
fredouille312 Messages postés 48 Date d'inscription samedi 19 mars 2005 Statut Membre Dernière intervention 20 avril 2008
21 déc. 2005 à 23:33
Dsl pour mon absence j'ai eut quelques soucis... je regarde au plus vite et je te tiens au courant.
Merci de ton aide.
Fréd.
0
fredouille312 Messages postés 48 Date d'inscription samedi 19 mars 2005 Statut Membre Dernière intervention 20 avril 2008
25 déc. 2005 à 18:50
Voilà, j'ai pris le temps de regarder ton code et c'est ce qu'il me faut... Merci

Fréd
0
projetf Messages postés 26 Date d'inscription dimanche 15 avril 2007 Statut Membre Dernière intervention 27 avril 2009
26 avril 2007 à 15:07
merci pour le code ! javai le mm prb !
X et Y ne contienentt pas de nouvelle  valeur
 il faut tout simplement les inities!

Itshak
0
projetf Messages postés 26 Date d'inscription dimanche 15 avril 2007 Statut Membre Dernière intervention 27 avril 2009
26 avril 2007 à 15:14
le code marche aussi pour des images????????
0
projetf Messages postés 26 Date d'inscription dimanche 15 avril 2007 Statut Membre Dernière intervention 27 avril 2009
26 avril 2007 à 15:26
MERCI
+

Itshak
0
projetf Messages postés 26 Date d'inscription dimanche 15 avril 2007 Statut Membre Dernière intervention 27 avril 2009
26 avril 2007 à 15:40
ct je fai pour sauvegarder la nouvelle  position du bouton
Cad qd je relance le programme je ve que le bouton ait garder la position que je lui ait donner ds le runing precedent 
0
LUDINSKI Messages postés 441 Date d'inscription mardi 2 décembre 2003 Statut Membre Dernière intervention 22 mai 2012 7
26 avril 2007 à 15:44
Salut Projetf,

Pour déplacer une image en utilisant cette source il faudra déplacer un picture box dans lequel sera dessiné ton image...
0
LUDINSKI Messages postés 441 Date d'inscription mardi 2 décembre 2003 Statut Membre Dernière intervention 22 mai 2012 7
26 avril 2007 à 15:52
Tu peux encore utiliser les propriétés Left et Top de tes contrôles.

Donc dans l'évènement OnLoad de ton formulaire, tu déplaces tes contrôles :
ctrlLabel.Left = labelLastPos.X;

ctrlLabel.Top = labelLastPos.Y;

Et dans le OnClosing, tu mémorises leur position :
... = ctrlLabel.Left;
... = ctrlLabel.Top;
0
projetf Messages postés 26 Date d'inscription dimanche 15 avril 2007 Statut Membre Dernière intervention 27 avril 2009
26 avril 2007 à 22:11
merci mon sauveur !
mais jai trouver un  moyen plus apropries a mon projet.
je travail avc une base de donnee . en fait je doi pouvoir atraver ma bd creer ou modifier un code php qui correspond a un site.
je doi donc conserver les nouveaux point de l'image ds la bd pour les remetre ds le code php.
en tt cas merci pour tout
0
Rejoignez-nous