Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[WD10] Alignement de chaîne

8 réponses
Avatar
mat
Bonjour,

D'autres langages ont depuis toujours une fonction de formatage, p.ex.
FORMAT("W20,AR", "A12345.678") afin d'aligner une chaîne sur la droite.
Et ça fonctionnait aussi dans les requêtes.

La seule solution que j'ai trouvé en Windev pour produire cela est
s est chaîne = "A12345.678"
s = Répète(" ", 20 - Taille(s)) + s

Avec tellement de fonctions disponibles en Windev traitant les chaînes,
comme ChaîneFormate et Complete qui pourrait facilement agir dans ce
send, ma solution semble ridicule. Ai-je loupé quelque chose?

A part cela, avec WD10, ma solution Windev ne marche pas dans une
requête. Comment le faire?

Merci
Mat

8 réponses

Avatar
Pascal ROY
mat a écrit :
Bonjour,

D'autres langages ont depuis toujours une fonction de formatage, p.ex.
FORMAT("W20,AR", "A12345.678") afin d'aligner une chaîne sur la droite.
Et ça fonctionnait aussi dans les requêtes.

La seule solution que j'ai trouvé en Windev pour produire cela est
s est chaîne = "A12345.678"
s = Répète(" ", 20 - Taille(s)) + s

Avec tellement de fonctions disponibles en Windev traitant les chaînes,
comme ChaîneFormate et Complete qui pourrait facilement agir dans ce
send, ma solution semble ridicule. Ai-je loupé quelque chose?

A part cela, avec WD10, ma solution Windev ne marche pas dans une
requête. Comment le faire?

Merci
Mat



Aligner ou ? dans quel but ?
--
Pascal ROY
(Service Informatique - SODALEC)
Avatar
mat
Pascal ROY wrote:
mat a écrit :
Bonjour,

D'autres langages ont depuis toujours une fonction de formatage, p.ex.
FORMAT("W20,AR", "A12345.678") afin d'aligner une chaîne sur la droite.
Et ça fonctionnait aussi dans les requêtes.

La seule solution que j'ai trouvé en Windev pour produire cela est
s est chaîne = "A12345.678"
s = Répète(" ", 20 - Taille(s)) + s

Avec tellement de fonctions disponibles en Windev traitant les chaînes,
comme ChaîneFormate et Complete qui pourrait facilement agir dans ce
send, ma solution semble ridicule. Ai-je loupé quelque chose?

A part cela, avec WD10, ma solution Windev ne marche pas dans une
requête. Comment le faire?

Merci
Mat



Aligner ou ? dans quel but ?



à droite, p.ex.
A12345.678
B12.001
C123.456
n'est pas très lisible.
Avatar
mat
Real Phil wrote:
Bonjour Mat,

C'est vrai que c'est curieux que PC Soft n'ait pas pensé à un outil de base
comme celui-là.
Justement il y a quelques semaines j'ai aussi cherché cette fonction dans
WD8.
J'ai dû me résoudre à faire une petite Procédure globale PadLeft() comme
dans Foxpro et qui ressemble à ta solution.

Réal Phil




Salut Réal,

merci, mais j'espère toujours qu'il y aussi une solution pour les requêtes.

Salutations
Mat
Avatar
Pascal F
mat a formulé ce jeudi :
Real Phil wrote:
Bonjour Mat,

C'est vrai que c'est curieux que PC Soft n'ait pas pensé à un outil de base
comme celui-là.
Justement il y a quelques semaines j'ai aussi cherché cette fonction dans
WD8.
J'ai dû me résoudre à faire une petite Procédure globale PadLeft() comme
dans Foxpro et qui ressemble à ta solution.

Réal Phil




Salut Réal,

merci, mais j'espère toujours qu'il y aussi une solution pour les requêtes.

Salutations
Mat



Je comprends pas ce que tu veux cadrer dans les requetes, si c'est la colonne dans laquelle il faut affichier, tu peux modifier
le cadrage de la dite colonne avec
MaColonne..CadrageHorizontal=chDroite

--
Pascal

Ne garder que le prénom pour me joindre
Avatar
Real Phil
"mat" a écrit dans le message de
news:
Bonjour,

D'autres langages ont depuis toujours une fonction de formatage, p.ex.
FORMAT("W20,AR", "A12345.678") afin d'aligner une chaîne sur la droite.
Et ça fonctionnait aussi dans les requêtes.

La seule solution que j'ai trouvé en Windev pour produire cela est
s est chaîne = "A12345.678"
s = Répète(" ", 20 - Taille(s)) + s

Avec tellement de fonctions disponibles en Windev traitant les chaînes,
comme ChaîneFormate et Complete qui pourrait facilement agir dans ce
send, ma solution semble ridicule. Ai-je loupé quelque chose?

Merci
Mat


--------------------------------------------------
Bonjour Mat,

C'est vrai que c'est curieux que PC Soft n'ait pas pensé à un outil de base
comme celui-là.
Justement il y a quelques semaines j'ai aussi cherché cette fonction dans
WD8.
J'ai dû me résoudre à faire une petite Procédure globale PadLeft() comme
dans Foxpro et qui ressemble à ta solution.

Réal Phil
Avatar
mat
Pascal F wrote:
Je comprends pas ce que tu veux cadrer dans les requetes, si c'est la
colonne dans laquelle il faut affichier, tu peux modifier le cadrage de
la dite colonne avec
MaColonne..CadrageHorizontal=chDroite




merci, mais tu as déjà essayé faire ça dans une colonne d'une combo
liste, par exemple? Théoriquement c'est possible avec gCadrage, mais en
pratique je n'ai pas obtenu un résultat utilisable. Alors j'essaye de
préfabriquer la chaîne et utiliser col1 + tab+ col2 + tab + col3...

Je m'imagine je pourrais aussi inclure une routine dans l'initialisation
pour modifier la rubrique du résultat de la colonne, mais j'hésite à
faire tout un bricolage pour obtenir une chose si simple.
Avatar
Jacques TREPP
"mat" a écrit dans le message de
news:
Pascal F wrote:
Je comprends pas ce que tu veux cadrer dans les requetes, si c'est la
colonne dans laquelle il faut affichier, tu peux modifier le cadrage de
la dite colonne avec
MaColonne..CadrageHorizontal=chDroite




merci, mais tu as déjà essayé faire ça dans une colonne d'une combo liste,
par exemple? Théoriquement c'est possible avec gCadrage, mais en pratique
je n'ai pas obtenu un résultat utilisable. Alors j'essaye de préfabriquer
la chaîne et utiliser col1 + tab+ col2 + tab + col3...

Je m'imagine je pourrais aussi inclure une routine dans l'initialisation
pour modifier la rubrique du résultat de la colonne, mais j'hésite à faire
tout un bricolage pour obtenir une chose si simple.




Bonjour Mat,
as-tu essayé de modifier la police de ta combo pour une police à pas fixe,
style 'Courier' ?
Je sais, ce n'est pas très beau, mais ça fonctionne avec ta méthode.
listeajoute(macombo, complete(40-taille(mavar))+mavar)

--
Jacques TREPP
Albygest
3, rue Jean Mermoz
81160 ST-JUERY
(enlevez 'pasdespam' pour me joindre)
Avatar
mat
Jacques TREPP wrote:

Bonjour Mat,
as-tu essayé de modifier la police de ta combo pour une police à pas
fixe, style 'Courier' ?
Je sais, ce n'est pas très beau, mais ça fonctionne avec ta méthode.
listeajoute(macombo, complete(40-taille(mavar))+mavar)




Merci Jacques, tu as raison, je n'ai pas pensé à ça. Je pensais en plus
que tu m'as donné la syntaxe manquante de complete pour faire un
alignement droit mais elle ne fonctionne pas dans mon WD10... :-(