Home

Tutoriel AppleScript Studio

- Gestion des champs -

Formatage d'un champ en euro

Sous Léopard


Construisons un champ formaté


Créons un projet de nom "Euro", et créons un champ.



Menu Léopard - photo 20


Donner un nom au champ dans AppleScript.



Menu Léopard - photo 24


Sélectionnez dans la "Library" l'icône "Number Formatter".


image
Menu Léopard - Photo 14


Faite glisser "Number Formatter" de la librairie sur le champ.



Menu Léopard - photo 22


Cliquez sur "Formatter"



Menu Léopard - photo 26


Sélectionnez "Style" option "Currency" dans l'onglet "Attributes " de l'Inspecteur.


image
Menu Léopard - photo 30


Ne faites rien d'autre. En accord avec les préférences systèmes de votre machine, le signe euro s'affiche automatiquement pour un européen.

Ne touchez pas au point séparateur des décimales, le bon séparateur sera celui de vos préférences systèmes.

Faites "Save".



Exécutez le projet dans xCode. Notez, il n'y a aucun script.

Dans le champ vide, tapez une valeur, 123456 par exemple, n'oubliez pas de valider par "Return", et admirez votre résultat.


image
Menu Léopard - photo 32


Pour changer la valeur double click sur 123456.



Téléchargez un exemplaire du projet euro.



Quelques remarques sur l'exemple fourni par Apple



Les exemples ASS d'Apple nous proposent un projet de nom "Currency Converter", qui à l'aide d'un taux de change convertit une monnaie en une autre.



Menu Léopard - photo 10

L'exemple est en formatage US.


Sur chacun des champs, il y a une petite icône d'indication de formatage. L'icône est sous le champ sélectionné. Le champ sélectionné est en bleu.



Menu Léopard - photo 12


Cette icône est créée en glissant "Number Formatter" de la librairie sur le champ.

Note de rédaction : Je mets en vert les noms utilisateurs, et en rouge ceux de xCode.




Menu Léopard - photo 14


Cela donne les paramètres de choix euro, dollars, nombres de décimales, comme ceci (notez l'exemple est 10.0, le menu change en 10.5) :



Menu Léopard - photo 16



Dans AppleScript il n'y a rien de défini pour les champs, juste leurs noms. Seul le bouton "Convert" est référencé en AppleScript.



Menu Léopard - photo 19


Le code est minimaliste, juste récupération des valeurs des champs, et la multiplication, par un click sur le bouton "Convert".



Menu Léopard - photo 18

Il n'y a aucune indication de conversion entre les trois champs, puisque tous ont un "formatter".

Dans le cas d'un transfert d'un champ sans "formatter" vers un champ avec "formatter" il faudra utiliser la coersion "as number".


set aa to bb as number

Idem dans le cas de la lecture d'un fichier texte, pour faire un import.

Dans le cas de sauvegarde dans une P-list, le nombre formaté est dans la P-list avec 6 décimales. La valeur 12 deviens 12.000000.

Attention, si vous transformez un champ non formaté, donc en TEXT, en champ formaté, à la lecture de votre P-list rien ne va s'afficher, puisque la valeur de la P-list est l'ancien format non formaté. Il faut supprimer la P-list et la recréer avec le nouveau format.





Retour


Merci de votre visite


UP