DBgrid et TColumn

Signaler
Messages postés
37
Date d'inscription
jeudi 27 juin 2002
Statut
Membre
Dernière intervention
13 août 2002
-
Messages postés
962
Date d'inscription
mercredi 3 avril 2002
Statut
Membre
Dernière intervention
12 septembre 2006
-
Salut

Je me demandais comment définir dynamiquement les colonnes d'un grid... plus précisément, est-il possible d'attribuer les colonnes deja defini a la conception (font, alignement...) a un résultat de requete SQL Tquery.

Merci
JeFf

3 réponses

Messages postés
962
Date d'inscription
mercredi 3 avril 2002
Statut
Membre
Dernière intervention
12 septembre 2006
1
Deux solutions pour définir les colonnes à l'exécution :

Première :
Faire à l'exécution ce que tu fais en conception. Utilise les méthodes et propriétés de DBGrid.Columns ( clear, add, ... )

Deuxième :
Ne rien faire dans DBGrid ( ne définir aucune colonne ), et utiliser les propriété des champs :
FieldByName('MonChamp').DisplayLabel pour le titre
FieldByName('MonChamp').DisplayWidth pour la taille de la colonne
FieldByName('MonChamp').Visible pour afficher ou non la colonne
etc...

--- :sleepy) Nono du Moulin :sleepy) ---
Messages postés
37
Date d'inscription
jeudi 27 juin 2002
Statut
Membre
Dernière intervention
13 août 2002

Une précision SVP.

Est-il possible de à la conception définir les colonnes et à l'exécution de donner la propriété fieldName au colonne d'apres les results d une query SQL

Exemple : DBGpickChartAccount.Columns.Items[0].FieldName:=QshowAccount.Fields.Fields[0].AsString;

J'ai essayé cette syntaxe mais sans succes.

Merci

Jeff
Messages postés
962
Date d'inscription
mercredi 3 avril 2002
Statut
Membre
Dernière intervention
12 septembre 2006
1
Essaye plutôt :
DBGpickChartAccount.Columns.Items[0].FieldName:=QshowAccount.Fields.Fields[0].FieldName;

Car AsString donne la valeur du champ sous forme de chaine et non le nom du champ. FieldName donne lui le nom du champ.

--- :sleepy) Nono du Moulin :sleepy) ---