Dbgrid / multiselect - Delphi/Pascal - Programmation
Marsh Posté le 13-11-2003 à 22:21:14
justagirl a écrit : si j'en sélectionne plus d'une, ca plante [...] en me disant que j'ai dépassé la limite... |
imagine que tu aies :
a b c d e f
tu vires le 3è, 4è, 5è
donc tu vires le 3è :
a b d e f
tu vires le 4è :
a b d f
tu vires le 5è :
boum, y a pas de 5è
Donc quand tu vires des éléments, tu dois commencer par virer le dernier faire la boucle de count-1 downto 0 à la place de 0 to count-1
Marsh Posté le 13-11-2003 à 22:30:27
C'est ce que je fais déja...le problème ne semble pas venir de là
Marsh Posté le 13-11-2003 à 22:33:13
Reply
Marsh Posté le 13-11-2003 à 21:32:15
Bonjour, j'essaye de faire la chose suivante :
Je charge normalement des données dans un DBgrid et je cherche en sélectionnant une ligne à pouvoir supprimer la ligne correspondante dans ma bdd. La procédure ( SQL ) marche bien mais c'est la sélection des lignes qui me pose problème. En gros, ma procédure ne marche que si je mets le Dbgrid / multiselect à true ; à false, la procédure "tourne dans le vide" apparemment. Mais quand je mets en multiselect, si je ne sélectionne qu'une ligne, ma procédure marche bien, si j'en sélectionne plus d'une, ca plante ( j'utilise le balayage qui il y a dans l'aide car je ne connais pas trop encore le truc) en me disant que j'ai dépassé la limite...
Je voudrais donc savoir comment balayer un Db_grid ( en multiselect ) et pouvoir par exemple effectuer une action uniquement sur les lignes sélectionnées ( chose que je maitrise pour une Listbox ). Y-a-t-il une propriéte correspondante ( un peu comme le selected pour une liste ) ?
Message édité par justagirl le 13-11-2003 à 21:35:13