Bonjour,mon environnement de développement est VB6 sous XP familial
J'ai besoin de remplir et de nettoyer une MSFlexGrid plusieurs fois de suite en réinitialisant l'index des "row" à chaque remplissage.
La méthode RemoveItem supprime les rangs. Mais leur index est conservé jusqu'au 9ème rang de façon cachée, de telle sorte que l'ajout de nouveaux rangs ne se fera qu'à partir du 10ème rang.
Les méthodes Clear et ClearStructure ne changent rien au problème.
Ci-dessous un bout de code pour tester ce phénomène que je ne comprends pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 --------------------------- Private Sub Form_Load() Dim r As Integer For r = 1 To 30 MSHFlexGrid1.AddItem r Next MSHFlexGrid1.RemoveItem 1 End Sub Private Sub Command1_Click() Dim r As Integer 'MSHFlexGrid1.Clear 'MSHFlexGrid1.ClearStructure For r = 30 To 2 Step -1 MSHFlexGrid1.RemoveItem r Next End Sub Private Sub Command2_Click() Dim r As Integer For r = 2 To 30 MSHFlexGrid1.AddItem r & " new" Next End Sub
Partager