Delphi 2007.Delphi - Comment réparer ce comportement étrange de TGrid?
J'ai un TGrid avec plus de lignes qu'il n'en faut pour l'écran, et la hauteur de la grille est telle qu'il y a une rangée partiellement dessinée en bas. Lorsque je clique sur cette ligne partielle, elle saute pour être entièrement visible (via une procédure appelée 'ClampInView' dans Grids.pas). Mais ça ne s'arrête pas. Depuis que la souris est maintenant sur une nouvelle ligne partiellement tirée, cela saute aussi. L'effet net est que le fait de cliquer sur la ligne partiellement dessinée commence à sélectionner des cellules dans une colonne verticale, tournant tout le long vers le bas (ou jusqu'à ce que vous relâchiez la souris).
Je l'ai reproduit sur un nouveau projet Winforms avec une seule grille de 100 lignes et aucun code, donc je suis sûr que ce n'est pas quelque chose que je fais dans le code. Il est mauvais pour moi car la forme que j'ai en code réel a un comportement de type glisser-déposer, ainsi cliquer et relâcher ~ 0.1 secondes plus tard sur la ligne partielle va ramasser l'élément dans la cellule et le déposer environ 50 rangées inférieur. Ce n'est certainement pas ce que vous attendez lorsque vous cliquez sur une cellule.
Des suggestions pour résoudre ce problème?