Flexgrid - Sélection d'une ligne

Résolu
altozinzin Messages postés 54 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 6 mai 2011 - 7 août 2007 à 20:23
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 - 7 août 2007 à 21:50
Salut a tous, j'ai un petit souci avec mon flexgrid.
Je balance une base de données sur mon FlexGrid (juske la pas de pb)
J'aimerai que quand je clique sur une cellule, la ligne prenne une couleur particuilère (pour montrer que la ligne est sélectionné en gros), mais que les autres cases soient blanches.

Private Sub Grid1_Click()

'recolore toutes les cases en blanc

Grid1.BackColor = &H80000005

'colore toutes les cases de la ligne


For a = 0 To 8
    Grid1.Col = a
    Grid1.CellBackColor = &H8000000D
Next a
End Sub

La ligne sélectionné se met bien dans la couleur sélectionnée, mais si on clique une seconde fois sur autre ligne, celle-ci prend la couleur mais la première reste également de cette couleur. Pourtant le grid1.backcolor devrait tout remettre en blanc nan??

Sinon je peux faire une boucle pour tout recolorer en blanc puis ma petite boucle pour colorer ma ligne en bleu mais cette méthode alourdi le programme.

J'espère avoir été clair, lol. Merci d'avance.

4 réponses

chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
7 août 2007 à 20:53
Salut,

deux solutions:
1° Passes au mode automatique .Pour celà ,mets les propriétés
Highlight = Toujours
SelectMode = ParLigne
cela t" évitera de le faire par code.
Tu peux même choisir la couleur de dselection


2°Pour le faire par code et résoudre ton problème,
sauvegardes la valeur de la ligne sélectionnée dans une variable
LastRow.Lorsque tu sélectionnes une autre ,
>remets LastRow aux couleur par défaut
>Changes les couleurs de la ligne courante
>Ligne courante devient LastRow



I LIKE TO BE HERE WHEN I CAN .


* Rolling   
3
altozinzin Messages postés 54 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 6 mai 2011
7 août 2007 à 20:56
Merci de ta réponse. Je peux pas regarder pour l'instant, mais dés que je le peux je le fais et j'accepte ta réponse.
Merci!
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
7 août 2007 à 21:27
Ben normalement, ya pas besoin de code particulier pour ce genre de chose. Il suffit de configurer correctement les propriétés BackColorSel et ForeColorSel au moment de la création de la flexgrid

---- Sevyc64  (alias Casy) ---- # LE PARTAGE EST NOTRE FORCE #   
0
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
7 août 2007 à 21:50
normalement oui ,
mais à condition aussi que Highlight ne soit pas à 'Jamais'
Il y' a aussi un autre cas ou ni la première ni la seconde soluce ne fonctionnera jamais:
C' est le cas ou il y' a fusion de lignes ou de colonnes.

<hr />I LIKE TO BE HERE WHEN I CAN .

* Rolling   
0
Rejoignez-nous