Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Sélection d'un ensemble d'objets dans un TPanel [ Archives / J'AI BESOIN D'AIDE !!!! :O ] (LeGuepard)

dimanche 6 mars 2005 à 02:38:32 | Sélection d'un ensemble d'objets dans un TPanel

LeGuepard

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.

Merci d'avoir lu mon message.

A+



dimanche 6 mars 2005 à 08:57:26 | Re : Sélection d'un ensemble d'objets dans un TPanel

Delphiprog

Administrateur CodeS-SourceS
Les mêmes causes produisant les mêmes effets, je t'invite à lire la réponse à ton message précédent (http://www.delphifr.com/forum.v2.aspx?ID=40614)

dimanche 6 mars 2005 à 10:25:27 | Re : Sélection d'un ensemble d'objets dans un TPanel

neodelphi

Membre Club
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...

neodelphi

dimanche 6 mars 2005 à 17:05:37 | Re : Sélection d'un ensemble d'objets dans un TPanel

japee

Membre Club Administrateur CodeS-SourceS
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
Case Key of
  VK_SHIFT:   SelectionFromTo := True; // touche shift
  VK_CONTROL: SelectionAdd    := True; // touche majuscule
end;


Après, à toi de gérer ça dans l'évènement OnClick de tes panels :
- En utilisant une boucle parcourant l'intervalle déterminé en cliquant sur un panel, puis sur un autre, dans le premier cas.
- En ajoutant les panels cliqués, dans le second.

Bonne prog'

dimanche 6 mars 2005 à 17:25:04 | Re : Sélection d'un ensemble d'objets dans un TPanel

japee

Membre Club Administrateur CodeS-SourceS
Il faut bien sûr compléter avec un code dans l'évènement OnKeyUp du Form :

var
SelectionFromTo: Boolean; // sélection intervalle de click1 à click2
SelectionAdd: Boolean; // sélection par addition des panels cliqués
procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  SelectionFromTo := False;
  SelectionAdd := False; 
end;


Bonne prog'

dimanche 6 mars 2005 à 20:18:26 | Re : Sélection d'un ensemble d'objets dans un TPanel

LeGuepard

Merci Japee pour tes renseignement, mais c'est pas temps un problème pour pouvoir les sélectionner , mais plus pour dessiner la zone de sélection.


lundi 7 mars 2005 à 06:43:53 | Re : Sélection d'un ensemble d'objets dans un TPanel

neodelphi

Membre Club
Dans ce cas je pense que la méthode du TImage est plus adaptée. Tu dessinne exactement comme tu veut tes places, ça te laisse plus libre.

neodelphi

mardi 8 mars 2005 à 23:19:39 | Re : Sélection d'un ensemble d'objets dans un TPanel

Delphiprog

Administrateur CodeS-SourceS
Réponse acceptée !
La réponse est exprimée sous la forme d'un code source (ouf, on y est arrivés) : DESSINER UN RECTANGLE DE SÉLECTION AU DESSUS D'AUTRES COMPOSANTS et sans remettre ton code source qui utilise des TPanel.

Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.

mardi 8 mars 2005 à 23:29:51 | Re : Sélection d'un ensemble d'objets dans un TPanel

Delphiprog

Administrateur CodeS-SourceS
Erratum
Au lieu de : "sans remettre ton code source "
il faut lire : "sans remettre en cause ton code source "

Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.



Cette discussion est classé dans : sélection, place, objets, ensemble, tpanel


Répondre à ce message

Sujets en rapport avec ce message

composant dans composant 2eme edition [ par vib ] Je continue mon apprentissage dans la création d'un composant et la je bloque:Je désire à partir d'un Tgraphiccontrol, ajouter à l'affichage deux Tsha Pb de Multi sélection dans un TDBlookupListBox [ par JoeyAstor ] G un TDBLookupListBox qui m'affiche donc un resultat d'un TADOQuery generé par une requete selectionnant 2 tables et j'affiche donc 3 champs dans mon Composant DBExpress dans une DLL [ par almi ] J'utilise les composants DBExpress sous D6 pour acceder à une base de donnees MySQL. Lorsque je place mon code dans un EXE, pas de probleme.Par contre Registre : récupère l'ensemble des clés d'une clé [ par Bruto ] Dans mon programme, l'utilisateur choisit un mot par exemple aléatoire et je crée une clé portant le même nom dans un clé spécifique.Il y a donc possi COMPOSANT ??? [ par iocha ] Salut à tous,qq un saurait-il ou trouver un composant de type TREEVIEW avec cases à cocher pour la sélection de fichiers ou de répertoires...Je ne sai Pourquoi un double clic sur une sélection ne le positionne pas comme désiré [ par BXDS ] BonjourJ'ai une DBgrille. Lorsque je double clique sur un enregistrement, il se lance sur le premier enregistrement au lieu de celui cliqué.Le double HeaderControl associé à CheckListBox [ par DropF ] Bonjour,Je voudrais savoir comment associer un HeaderControl à une CheckListBox.Dans l'aide, j'ai vu que les objets THeaderControl avaient une proprié TMPlayer et TPanel ... [ par MAsterC ] Le composant TMPlayer à comme propriété «Display», cependant pour les video il accepte juste les «TPanel».J'ai essaye avec un TPaintBox ou un TImage m "serialiser" un object dans un fichier [ par moreno72 ] je cherche le moyen de "serialiser" un object dans son ensemble dans un fichier , exemple : un TObjectList et l'ensemble de ses objets attachés .( en Libération de ressources [ par nicolaspennaneach ] j'ai une application MDI où chaque fenètre enfant possède un thread pour effectuer certaines opérations. Lorsque j'exécute la méthode formclose d'une


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,312 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.