Capter un click dans stringgrid

Résolu
Signaler
Messages postés
8
Date d'inscription
jeudi 3 juin 2004
Statut
Membre
Dernière intervention
19 février 2006
-
Messages postés
3826
Date d'inscription
vendredi 23 juillet 2004
Statut
Modérateur
Dernière intervention
10 mai 2021
-
J'ai deux questions sur l'emploi des stringgrids :

1 - Je voudrais capter un évènement chaque fois que je clique sur une case d'une sringgrid.
J'ai essayé les evenements onclick, onmousedown, onchange, etc... mais ils ont tous le même problème : ca ne marche que si on a changé de case. Sinon, le premier click est capté, mais ensuite plus rien.


Par exemple les lignes suivantes, qui devraient cocher/decocher la case x, y à chaque click :

if stringgrid1.Cells [x, y] := 'x' then
stringgrid1.Cells [x, y] := ''
else
stringgrid1.Cells [x, y] := 'x'' ;

2 - Je voudrais capter un evenement en quittant une case d'une stringgrid, quelle que soit la façon dont je quitte (soit en cliquant ailleurs, soit en changeant de case par une flèche ou par la touche tab) afin de controler ce qu'il y a dans la case que je quitte. La seule manière que j'ai trouvée est de mettre un timer... N'y a-t-il pas mieux ?

Merci d'avance à ceux qui trouveront une solution

2 réponses

Messages postés
8
Date d'inscription
jeudi 3 juin 2004
Statut
Membre
Dernière intervention
19 février 2006

Merci à Cirec de cette réponse.
Ca répond parfaitement à mon probleme.

Il y a un petit detail a ajouter : il faut associer le "ondoubleclick" à la meme procedure car si on fait deux clicks assez rapprochés, le système interprète ça comme un double click et le second n'est donc pas pris en compte par le "ondrawcell".
Moyennant cela, la réponse est parfaite et la case change d'état systématiquement.
Messages postés
3826
Date d'inscription
vendredi 23 juillet 2004
Statut
Modérateur
Dernière intervention
10 mai 2021
46
De rien, content d'avoir pu t'aider.

Mais pense à cliquer sur Réponse Acceptée pour confirmer S.T.P Merci
si ça fonctionne

@+
Cirec