Home

Tutorial AppleScript Studio

Partie 5 - Les Menus -

Etape 2 - Script "Ajouter une ligne"

Sous Léopard - xCode 3.0


L'appel par le menu se fera dans l'événement choose menu item via une subroutine.


on choose menu item theObject -------------- Gére la barre des Menus --------------------


if name of theObject is "Ajouter une ligne" then routine_AddOneNote ()

end choose menu item ----------------------------------------------------



Que fait AddOneNote

Elle récupére l'information de chaque champ de la fenêtre "Input", préparer une rangée à stocker, et stocke cette rangée dans la data source.



Récupération de l'information

set leTitre to contents of text field "NomInput" of window "Input"


Notez l'adressage du champ qualifié par le nom de la fenêtre qui le contient.



Pour le prix, une coercition en number est appliqué, pour vous empêcher de taper des caractères alphabétiques, ce qui générerait une erreure au stockage dans le tableau. Je n'ai pas inclus un "Formatter" pour ce champ, pour éviter de voir le signe "€" dans le champ entré. Taper "12" en entrée vous aurez "12 € " dans le tableau.


set lePrix to contents of text field "PrixInput" of window "Input" as number



Pour la date, celle-ci étant formatée en date dans le tableau et dans la fenêtre "Input", pas de coercition. Taper "8/12/2007" vous aurez "8 décembre 2007" dans le tableau.


set laDate to contents of text field "DateInput" of window "Input"



Col5 et Col6 inutilisées sont à blanc.



Stockage dans la data source

Le stockage se fait par l'appel d'une subroutine avec tous les champs cités dans le bon ordre de la déclaration de la data source.


stockerUneLigne (leNom , laDescription , laDate , lePrix , laCol5 , LaCol6 )



Celle-ci comprend une commande "make new data row" d'initialisation d'une nouvelle rangée à la fin "end of the" des rangées déjà existante. Rappel, les données se sont pas stockées triées, c'est la "View" qui gère le tri.



set nouvelRange to make new data row at the end of the data rows of notesDataSource



Puis, le transfert des données, et une commande "update" exécutant la mise à jour de la data source.



Appel par le menu

on choose menu item theObject -------------- Gére la barre des Menus --------------------


if name of theObject is "Ajouter une ligne" then routine_AddOneNote ()

end choose menu item ----------------------------------------------------





Le code complet


image
Menu Léopard - Photo 20


image
Menu Léopard - Photo 40






La suite - Script "Suppression d'une ligne"


Page précédente

Page suivante


Merci de votre visite


UP