Salut !
Je sais !
En supposant que le Canvas de TStringGrid soit accessible (hérité de TCustomControl), on devrait donc pouvoir ajouter du graphisme.
En dehors du fait qu'il faudra calculer la zone précise du dessin (le fameux Rect fourni par la OnDrawCell) on risque d'avoir un problème puisque l'objet à un moment donné cherchera à se dessiner en utilisant la OnDrawCell par défaut et le graphisme disparaîtra !
On peut éventuellement rajouter un flag pour encadrer le dessin par un test, dans la OnDrawCell.
Dans ce cas, le bouton contrôle le flag et le tour est joué.
bool Flag = false; // pas de dessin
Dans la OnMouseDown du bouton :
1 2
| Flag = true;
StringGrid->Repaint(); |
Dans la OnMouseUp du bouton :
1 2
| Flag = false;
StringGrid->Repaint(); |
Dans la OnDrawCell :
1 2 3 4
| if(Flag)
{
//le code
} |
Je pense que c'est le plus simple !
Un TStringGrid ne sert qu'à représenter ce qu'il contient en terme de chaînes ! Je n'arrive pas à comprendre le problème entre le traitement sur tes chaînes et celles du TStringGrid...
A plus !
Partager