sonysousse
Messages postés7Date d'inscriptionvendredi 16 février 2007StatutMembreDernière intervention 1 novembre 2007
-
29 mars 2007 à 19:17
cs_coq
Messages postés6350Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014
-
14 avril 2007 à 14:39
Bonjour
je suis en train de faire une interface Drag&Drop en C# . l'idé est de faire bouger des Panel dont les Background sont Pc, routeur, cable.. afin de construire une architecure de réseau.
mon probléme c'est le code source .j'ai essayé de faire mais ce que j'ai pu faire c'est bouger un panel vers un autre. apparement le probléme dans la fonction void panel_Dragdrop(objct sender , DragEventArgs e)
merci bien de m'avoir aider
merci
bloodi_eye
Messages postés12Date d'inscriptionsamedi 31 mars 2007StatutMembreDernière intervention10 septembre 2007 31 mars 2007 à 14:42
chaque entité de ton architecture sera représenté par une classe héritant d'un usercontrol, puis tu implémente les évenements move souris.
private void entite_MouseMove(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left) //si tu veux deplacer tes objets avec le click gauche de la souris
{
//code modifiant la position de ton usercontrol en fonction des coordonnées souris
}
}
ainsi tu pourras deplacer tes objet comme tu le souhaite
sonysousse
Messages postés7Date d'inscriptionvendredi 16 février 2007StatutMembreDernière intervention 1 novembre 2007 31 mars 2007 à 18:53
Bonjour
merci bien pour votre réponse
mais dans ce code:
private void entite_MouseMove(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left) //si tu veux deplacer tes objets avec le click gauche de la souris
{
//code modifiant la position de ton usercontrol en fonction des coordonnées souris ????
}
}
c'est quoi le code qui modifie la position en tenant compte que lorsque je lache le bouton gauche de souris je veut qu'elle se fixe comme je peut changer sa place et lorsque je clique sur ce panel avec le bouton droit je trouve une liste de proprietés
doc ce n'est pas la peine d'utiliser les evenements DragEnter et DragDrop
merci encore une fois pour votre réponse.
mais j'ai une contrainte de temps donc pouvez vous me répondre plus vite
merci
bloodi_eye
Messages postés12Date d'inscriptionsamedi 31 mars 2007StatutMembreDernière intervention10 septembre 2007 1 avril 2007 à 09:35
private System.Drawing.Point Depart = new Point();//save de la position initial de la souris
private void UserControl1_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
{
if (e.Button == MouseButtons.Left) //si tu veux deplacer tes objets avec le click gauche de la souris
{
Point mousePos = this.Parent.PointToClient(Control.MousePosition);
if (Depart.IsEmpty) Depart = new Point(mousePos.X - this.Left, mousePos.Y - this.Top);
this.Location = new Point(mousePos.X - Depart.X, mousePos.Y - Depart.Y);
}
else if (!Depart.IsEmpty) Depart = new Point();
}
tu rajoute ce code dans tes classes hérié usercontrol
Dans le constructeur de tes classes hérité usercontrol
tu rajoute :
public UserControl1()
{
......
this.MouseMove += new MouseEventHandler(UserControl1_MouseMove);
.....
}
Vous n’avez pas trouvé la réponse que vous recherchez ?
muetdhiver
Messages postés3Date d'inscriptionsamedi 15 octobre 2005StatutMembreDernière intervention14 avril 2007 14 avril 2007 à 14:29
Salut,
Ptit message pour remercier bloody_eye pour ce code ultra simple qui marche à la perfection et qui m'a beaucoup aidé. (ouais, je sais, c'est un message qui sert à rien, mais je tenais à exprimer ma gratitude)