Je travaille avec un contrôle MSFlexGrid dans VB6, mais j'ai également quelques problèmes pour récupérer la propriété ColPos
pour les colonnes fusionnées. La grille que j'ai produit ressemble à ceci:VB6 MSFlexGrid - ColPos de colonnes fusionnées
-----------------------------
| 8/17/2010 |
-----------------------------
| Column 1 | Column 2 |
-----------------------------
La première ligne est fixe et les deux colonnes sont fusionnées, de sorte que les deux colonnes contiennent 8/17/2010
dans la première rangée.
Pendant l'événement Click
, je suis en place d'une zone de texte sur une cellule dans la deuxième rangée, et quand je définir ses propriétés Left
et Top
utilisant ColPos
et RowPos
les propriétés du FlexGrid, je me retrouve avec la zone de texte placé sur une colonne 1. Cela se produit même si j'ai cliqué dans la colonne 2.
J'ai vérifié la propriété Col
, et il est correctement réglé sur 2 après avoir cliqué sur dans la deuxième colonne, mais ColPos(1)
et ColPos(2)
renvoient toutes les deux la même valeur, qui est la distance du bord gauche de la colonne 1 du bord gauche de la contrôle. Lorsque la fusion est désactivée sur le flexgrid, le problème disparaît, mais je préfère le laisser car il rend la grille un peu plus lisible.
Est-il possible de récupérer la position correcte de la colonne sélectionnée lorsqu'une autre cellule de la colonne est fusionnée avec une autre ou dois-je calculer manuellement la position de la colonne?