Toujours pas trouvé 
En fait dans le code mentionné, si je supprime la ligne
ArrivedGrid.Rows[ArrivedGrid.RowCount-1]:=SiteAll.rows[r];
...je n'ai plus le problème?!?
En fait, sur un timer je déclenche ce code.
1 2 3 4 5 6 7 8 9 10
| ArrivedGrid.clearAll;
ArrivedGrid.rowcount:=1;
for r := 1 to SiteAll.RowCount-1 do
if (SiteAll.cells[10,r]<>'') AND (SiteAll.cells[11,r]<>'') then
begin
ArrivedGrid.RowCount:=ArrivedGrid.RowCount+1;
ArrivedGrid.Rows[ArrivedGrid.RowCount-1]:=SiteAll.rows[r];
SiteAll.RowHeights[r]:=0; //0
end; |
Le but est de réinitialiser la grille ArrivedGrid dans laquelle je copie certaines lignes de la grille SiteAll.
Accessoirement, je masque la ligne d'origine en modifiant la hauteur de la ligne à 0. (mais la suppression de cette ligne de code n'arrange rien)
le début de ce code est:
1 2
| ArrivedGrid.clearAll;
ArrivedGrid.rowcount:=1; |
J'ai essayé d'autres options mais sans résultat.
comme par exemple ajouter ces mêmes lignes ci-dessus dans Form.Close.
Après le plantage le pointeur est arrêté sur ces lignes:
1 2 3 4 5 6 7 8 9
| if not (csDestroying in ComponentState) then
begin
if Cells[rc,j] <> '' then
begin
Cells[rc,j] := '';
if rc <> i then
RepaintCell(i,j);
end;
end; |
Merci pour vos idées
Partager