cs_LeGuepard
Messages postés38Date d'inscriptionmardi 16 septembre 2003StatutMembreDernière intervention 7 septembre 2015
-
6 mars 2005 à 02:38
cs_Delphiprog
Messages postés4297Date d'inscriptionsamedi 19 janvier 2002StatutMembreDernière intervention 9 janvier 2013
-
8 mars 2005 à 23:29
Salut à tous!
J'ai un petit problème !
Je suis en train de développer un application pour gérer la location de place de spectacle.
J'ai donc représenté les siège de la salle et j'aimerais bien pouvoir sélectionner un ensemble de place avec la souris, un peu de la même manière qu'on sélectionne un ensemble de fichiers dans l'explorateur windows. Pour vous aider à comprendre, j'ai réaliser une simulation de printscreen du résultat auquel j'aimerais arriver.
Pour explication, j'ai donc un TPanel de couleur blanche pour le fond. Lorsque l'application se lance, elle crée dynamiquement les différentes places qui sont également des TPanel, de couleur jaune au départ mais cela change avec l'état de la place (réservé, payé...).
Pour éviter lorsque pas exemple un client en réserve 10 d'une seul fois, de devoir cliquer sur les 10 places, je voudrais donc pouvoir les sélectionner en créant une zone.
Si quelqu'un peut me dépaner, ce serait vraiment sympa car je cale la dessus depuis plusieurs semaines.
neodelphi
Messages postés442Date d'inscriptionjeudi 4 avril 2002StatutMembreDernière intervention11 août 2008 6 mars 2005 à 10:25
La solution des panel me parait pas etre ce qu'il y a de mieu...
Moi ce que j'aurai fait c'est mémoriser l'ensemble des sieges dans un tableau, et dessiner ta réprésentation de la salle sur le canvas d'un TImage, le TImage te permettant de savoir facilement les click de l'utilisateur et les déplacement de la souris tu pourrai calculer les sieges qui sont dans un rectangle tracé par l'utilisateur... Je pense que c'est plus simple comme solution. Je ne croit pas que delphi sache gérer la selection d'objets dans un panel par defaut, c'est a toi de le coder, mais avec tes panel ça risque d'etre dur...
japee
Messages postés1727Date d'inscriptionvendredi 27 décembre 2002StatutModérateurDernière intervention 6 novembre 20218 6 mars 2005 à 17:05
Je n'ai pas de code clé en main, mais j'ai commencé à cogiter à ce
problème auquel j'ai été confronté dans le cadre de la réalisation
d'une visionneuse d'images.
Quelques pistes :
dans l'évènement OnKeyDown du Form, on teste la pression des touches servant habituellement à la sélection multiple d'objets :
var
SelectionFromTo: Boolean; // sélection intervalle de click1 à click2
SelectionAdd: Boolean; // sélection par addition des panels cliqués