BlueGEEK Journal

Accueil > Manip’s > Delphi > Atelier Delphi pour les Nuls > Delphi Blue Baby Faq > 20- Comment Formater correctement une ligne de texte ?

20- Comment Formater correctement une ligne de texte ?

INSTRUCTION FORMAT

lundi 21 avril 2008, par bluegyn_spip

- Une instruction complexe avec laquelle if faudra très vite faire connaissance car elle simplifie énormément la vie est :

* FORMAT

- Elle est complexe car elle emprunte son ésotérisme au langage C (avec un C comme Compact)

- Par contre elle est extrêmement puissante car elle assure automatiquement toute les conversion et autres arrondis

- Format ça veut tout simplement dire "Mettre en Forme" une chaine de caractères en y injectant des données hétéroclites :


EXEMPLE

- Quel est cet arbre ?

  • => ARBRE = Pommier

- Quel est son fruit ?

  • => FRUIT = Pomme

- Combien porte il de fruits ?

  • => NOMBRE = 12

- Avec mes données collectées je veux maintenant afficher mon résultat à l’écran :

* Il y a 12 pommes sur ce pommier


APPLICATION 1 : Méthode de concaténation classique

chaine := ’Il y a ’ + IntToStr( NOMBRE ] + ’ ’ + FRUITS + ’ sur ce ’ + ARBRE + ’.’ ;

APPLICATION 2 : méthode intelligente par FORMAT

Chaine := FORMAT ( ’Il y a %d %s sur ce %s’, [NOMBRE , FRUIT, ARBRE] ) ;

- Ce qui est beaucoup plus rapide à écrire.

- Format a donc 2 arguments

  1. La chaine formatée entre ’Quote’
  1. Un Tableau d’arguments hétéroclites séparés par des virgules Entre [ Crochets ]
  • Le format %d attend un Nombre Entier (D = Décimal)
  • Le format %s attend une Chaine (S = String)
  • Le Format %f attend un Décimal (F = Fixe)

- Voir chaines de format dans l’aide ...

  • INDEX
    • Chaînes de format

- Il est ainsi possible de remplir facilement des étiquettes d’info qui rapportent dans une phrase claire et simple à construire, l’interprétation des mesures saisies sans s’embêter avec la conversion des variables en chaines et la concaténation de chaque mesure.