ATOUTFOX
COMMUNAUTÉ FRANCOPHONE DES PROFESSIONNELS FOXPRO
Visual FoxPro : le développement durable

DynamicBackColor qui utilise le numero de la ligne affichee dans une grille   



L'auteur

Gregory Adam
Belgique Belgique
Membre Actif (personne physique)
# 0000001121
enregistré le 04/06/2006

Fiche personnelle


Note des membres
20/20
2 votes


Contributions > 20 - Trucs et Astuces

DynamicBackColor qui utilise le numero de la ligne affichee dans une grille
# 0000000796
ajouté le 07/05/2011 17:15:04 et modifié le 20/05/2011
consulté 5674 fois
Niveau initié

Version(s) Foxpro :
VFP 9.0


Le téléchargement des pièces jointes est limité aux membres
Veuillez vous identifier ou vous inscrire si vous n'avez pas encore de compte ...
Description

Quand on utilise des Dynamic*, ces expressions sont évaluées ligne par ligne en commençant par la première et au niveau ligne de gauche à droite.

Il est possible d’employer cela pour remplir une collection de clefs. Apres un Refresh() ou un Scroll vertical, il est nécessaire de vider la collection et de la remplir. Pour faire le remplissage il suffit de modifier la hauteur de la grille pour forcer de réévaluer les expressions Dynamic*. Pour que cela se passe inaperçu on ajoute 1 à la hauteur et la fois prochaine on soustrait 1 de la hauteur

Voici un exemple de projet à restaurer dans un répertoire \Project9

Pour employer la classe GridLine, dans l’init de la grille

  • = m.this.Columns[1].AddObject('GridLine', 'GridLine')
  • = m.this.SetAll('DynamicBackColor', [iif(empty(mod(m.this.Columns(1).GridLine.GetLine(Numbers.Id),2)), rgb(255,255,255), rgb(192,192,192))], 'Column')

On passe une clef primaire a GetLine() pour bien distinguer les lignes.

Il est possible d’utiliser cette technique pour afficher des tooltip en survolant une grille. Là, on remplira la collection avec le contenu des champs.

Petite remarque : Je ne vide et remplis pas la collection lors d’un scroll en bas d’une seule ligne

Il y a un form de démo. On peut trier en cliquant sur les header de la grille

Commentaires
Aucun commentaire enregistré ...

www.atoutfox.org - Site de la Communauté Francophone des Professionnels FoxPro - v3.4.0 - © 2004-2020.
Cette page est générée par un composant COM+ développé en Visual FoxPro 9.0-SP2-HF3