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# Discussion :

Déplacer rectangle avec souris


Sujet :

C#

  1. #1
    Membre régulier
    Inscrit en
    Décembre 2006
    Messages
    256
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 256
    Points : 70
    Points
    70
    Par défaut Déplacer rectangle avec souris
    Bonsoir,

    J'ai un projet à faire dans lequel je dois réaliser un planning des employés avec les interventions qu'ils doivent réaliser dans le mois.

    Pour cela je pense commencer avec une datagridview pour le planning (pour info l'application doit être réalisé sous le framework 2.0 en c#) et gérer les interventions par des rectangles de différentes couleurs que l'utilisateur pourra déposer sur le planning.

    Sachant que j'ai peu développer en utilisant les class Graphics de .NET, j'ai déjà regardé les bases.
    Pour le moment j'arrive bien à créer un rectangle, mais je ne vois pas comment gérer le déplacement de celui-ci ? Faut il que je le gère dans un timer, ou bien est il mieux de le gérer avec les événement MouseMove, MouseUp et MouseDown ?

    J'ai déjà regardé un peu sur divers forum et sur le net mais je n'ai pas trouvé d'exemple concret sur le déplacements des objets graphiques.

    Si vous pourriez m'éclairer un petit peu sa serai sympa.

    Merci d'avance

    Cordialement

  2. #2
    Membre actif Avatar de oussi
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2009
    Messages
    192
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2009
    Messages : 192
    Points : 290
    Points
    290
    Par défaut
    Salut,
    Si j'ai bien compris, le rectangle sera représenté dans une cellule du DataGrid, je te propose de changer juste la couleur de fond de la cellule avec le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dataGridView1[int indexColonne, int indexLigne].Style.BackColor = Color.Aqua;
    Si c'est pas ça tu précise plus.
    Bonne chance
    Programmer c'est comme dessiner.

  3. #3
    Membre régulier
    Inscrit en
    Décembre 2006
    Messages
    256
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 256
    Points : 70
    Points
    70
    Par défaut
    J'avais pensé a ça mais sa ne me convient pas. Car une cellule est égal à un jour de la semaine et un employé peut avoir plusieurs interventions le même jour. Donc je pensais mettre par exemple 3 rectangles de couleur différente dans la même cellule.

    De plus, l'utilisateur doit avoir la possibilité de déplacer un rectangle déjà posé dans la grille, et au moment du déplacement, il faut que l'on voit le rectangle suivre la souris et ainsi le déposer sur une autre cellule de la grille.

    J'espère mettre fait comprendre

  4. #4
    Membre du Club
    Inscrit en
    Mai 2009
    Messages
    172
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 172
    Points : 49
    Points
    49
    Par défaut
    Bonjour,

    Si j'ai bien compris il souhaite plutot pouvoir cliquer et déplacer un rectangle à sa guise pour pouvoir créer son emploi du temps intuitivement.

    Si c'est le cas il faut regarder du côté de Drag And Drop pour un datagridview, pas mal de tutos existent sur internet

    En t'inspirant de ceux ci tu devrais réussir sans trop de difficultés à faire glisser tes rectangles sur le datagrid

    Bonne chance en tout cas,
    r0seBa

  5. #5
    Membre régulier
    Inscrit en
    Décembre 2006
    Messages
    256
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 256
    Points : 70
    Points
    70
    Par défaut
    Oui c'est tout à fait ça.

    Je vais regarder du côté du drag and drop

  6. #6
    Membre actif Avatar de oussi
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2009
    Messages
    192
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2009
    Messages : 192
    Points : 290
    Points
    290
    Par défaut
    Ok,
    Soit tu suis un des tuto présent sur le net et vivre une vraie galaire(à moins que tu veux vraiment réaliser un composant pareil pour apprentissage), soit tu utilise un composant open-soure, gratuit ou payant présent partour sur le net, voici quelque lien :
    - http://www.codeproject.com/KB/miscctrl/CWMDateCtrl.aspx
    - http://www.devdirect.com/all/CALSCHED_PCAT_1873.aspx
    - http://www.telerik.com/products/winforms/scheduler.aspx

    Pour les gratuit et open-source, je me souviens avoir trouvé des composant très avancés, fait quelques recherche sur le web et tu trouvera.

    Bonne chance,
    Programmer c'est comme dessiner.

Discussions similaires

  1. [Débutant] Déplacer des Rectangles avec la souris
    Par Altair evilous dans le forum Développement Windows
    Réponses: 1
    Dernier message: 17/04/2014, 10h34
  2. centre de rectangle avec souris
    Par mouhatouka dans le forum Composants
    Réponses: 1
    Dernier message: 25/02/2009, 16h13
  3. Déplacer fenetre avec souris
    Par ZouBi dans le forum Qt
    Réponses: 2
    Dernier message: 15/08/2008, 20h30
  4. script pour déplacer image avec souris, pb avec Netscape
    Par jejerome dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 12/11/2006, 17h59
  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