Colorier MsFlexGrid

Résolu
Sinsitrus Messages postés 849 Date d'inscription samedi 11 juin 2005 Statut Membre Dernière intervention 21 août 2015 - 15 avril 2010 à 15:12
Sinsitrus Messages postés 849 Date d'inscription samedi 11 juin 2005 Statut Membre Dernière intervention 21 août 2015 - 25 mars 2011 à 12:41
Salut !

Y a t-il un moyen de colorier une colonne précise d'un MsFlexGrid ?
Si oui lequel ?

Merci

----------
OS : Windows XP SP3 et Vista 32
Platforme : VB 6.0 + SP6
Ok VB6.0 c'est pas net !

5 réponses

cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
15 avril 2010 à 18:28
Salut,

Si, c'est exactement ce que je te disais : tu parcoure tes cellules une à une (For i 0 To .Rows - 1) et tu les colorie (.CellBackColor RGB(237, 240, 247)).

Pour le redraw :
With Tablo
.Redraw = false
.Col = Text1
For i = 0 To .Rows - 1
.Row = i
.CellBackColor = RGB(237, 240, 247)
Next i
.Redraw = true
End With


Pourquoi faire cà ? Tout simplement que si tu ne fais pas cà, il va rafraichir ta grille à chaque modification du cellbackcolor !
Donc si tu as 10000 lignes, il va faire 10000 refresh du tableau pour rien (seul le dernier refresh est important), et vu que c'est le refresh qui prend le plus de temps, tu vas faire écrouler les performances...
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
3
Sinsitrus Messages postés 849 Date d'inscription samedi 11 juin 2005 Statut Membre Dernière intervention 21 août 2015
25 mars 2011 à 12:41
Dim Ligne As Integer
Dim Colonne As Integer
For Ligne = 1 To Tablo.Rows - 1
Tablo.Row = Ligne
If Ligne Mod 2 = 0 Then
For Colonne = 0 To Tablo.Cols - 1
Tablo.Col = Colonne
Tablo.CellBackColor = RGB(237, 240, 247)
Next Colonne
End If
Next Ligne
3
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
15 avril 2010 à 15:25
Salut,

Tu parcours tes cellules de la colonne une à une et tu les colorie.

N'oublie par le redraw false avant le traitement, et redraw true après pour optimiser le traitement !
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
0
Sinsitrus Messages postés 849 Date d'inscription samedi 11 juin 2005 Statut Membre Dernière intervention 21 août 2015
15 avril 2010 à 18:22
Merci DarkSidious ^^

With Tablo
.Col = Text1
For i = 0 To .Rows - 1
.Row = i
.CellBackColor = RGB(237, 240, 247)
Next i
End With


Vala lui ^^ mais ça ne ressemble pas à ce que tu m'as dis, je sais pas où mettre le redraw :$
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Sinsitrus Messages postés 849 Date d'inscription samedi 11 juin 2005 Statut Membre Dernière intervention 21 août 2015
15 avril 2010 à 18:44
Je comprends mieux oui.
Encore merci ^^
0
Rejoignez-nous