DBGRID centrage dans une cellule [Résolu]

yvessimon 647 Messages postés mardi 22 avril 2003Date d'inscription 9 janvier 2017 Dernière intervention - 1 juil. 2011 à 11:18 - Dernière réponse : cs_MAURICIO 2233 Messages postés mardi 10 décembre 2002Date d'inscription 15 décembre 2014 Dernière intervention
- 6 juil. 2011 à 10:48
Bonjour

Dans le DBGRID il est possible de positionner
le texte à gauche ou à droite
avec Column.Alignment := taRightJustify


En utilisent un format monétaire j'utilise
DBGrid1.Canvas.TextRect(Rect, Rect.left + 2 , Rect.Top + 2,String_mon );
afin de formater l'affichage " xx xxx.xx € ".

par contre comment positionner le texte à partir de la droite afin d'avoir les montant alignée ?

Car c'est .Canvas.TextRect qui positionne le texte.

Merci

yvessimon
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
cs_MAURICIO 2233 Messages postés mardi 10 décembre 2002Date d'inscription 15 décembre 2014 Dernière intervention - 6 juil. 2011 à 10:13
3
Merci
Salut,

c' est ce que je te disais: la propriété DisplayFormat!
J' en ai profité pour te donner la fonction pour aligner du texte mais avec le bon DisplayFormat, il ne te reste plus qu' à changer l' Alignment!

Je te demande donc d' accepter ma réponse ...

A+



Composants Cindy pour Delphi

Merci cs_MAURICIO 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 93 internautes ce mois-ci

Commenter la réponse de cs_MAURICIO
Meilleure réponse
cs_MAURICIO 2233 Messages postés mardi 10 décembre 2002Date d'inscription 15 décembre 2014 Dernière intervention - 6 juil. 2011 à 10:48
3
Merci
Oui, tout à fait ^^
A+


Composants Cindy pour Delphi

Merci cs_MAURICIO 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 93 internautes ce mois-ci

Commenter la réponse de cs_MAURICIO
cs_MAURICIO 2233 Messages postés mardi 10 décembre 2002Date d'inscription 15 décembre 2014 Dernière intervention - 1 juil. 2011 à 12:39
0
Merci
Salut,

faux problème!
Utilises la propriété DisplayFormat de ton champ:
Display format doit être ### ##0.00 €

Pour ce qui est d' écrire à droite, c' est la fonction de l' unité Windows: DrawText()

A+


Composants Cindy pour Delphi
Commenter la réponse de cs_MAURICIO
yvessimon 647 Messages postés mardi 22 avril 2003Date d'inscription 9 janvier 2017 Dernière intervention - 6 juil. 2011 à 09:51
0
Merci
Bonjour

Voici la solution

position droite :
column.Alignment := taRightJustify;

format d'affichage :
tfloatfield(Form1.dbgrid1.datasource.dataset.fieldbyname('Montant €')).Displayformat := '#,##0.00';

le champ 'Montant €' doit exister et être numérique


yvessimon
Commenter la réponse de yvessimon
yvessimon 647 Messages postés mardi 22 avril 2003Date d'inscription 9 janvier 2017 Dernière intervention - 6 juil. 2011 à 10:33
0
Merci
Bonjour,

la difficulté est d'atteindre .Displayformat
avec :
tfloatfield(Form1.dbgrid1....
c'est possible en dynamique

Salutations

yvessimon
Commenter la réponse de yvessimon

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.