Home

Tutoriel AppleScript Studio

Partie 1 - Création d'un projet xCode & Interface Builder

Etape 2 - Création d'un champ et un bouton

Sous Tiger

Commençons, pour les débutants, par un exercice très simple : un champ et un bouton. En cliquant sur le bouton nous changerons la valeur du champ.


Créez un projet "champBouton", et cliquez sur les noms de dossier "Scripts" et "Ressources" .




Faites un double clic sur "MainMenu.nib"




Vous obtenez la fenêtre de départ vide.



Créons un champ

Allez dans le menu Interface Builder, sous-menu "Cocoa-Text", et choisissez l'icône du champ "NSTextField". (Le nom "NSTextField" est visible dans la bulle d'aide en jaune en laissant votre souris immobile sur la zone).


Menu Tiger



Faites glisser cette icône sur votre fenêtre à construire.




L'inspector s'ouvre, dans le sous-menu "Attributes" donnez un titre "monChamp". Notez, l'option "Editable" est cochée en implicite par Interface Builder. Elle indique la possibilité de taper ou non du texte dans le champ.


Menu Tiger



Résultat :



Le titre "monChamp" s'affiche.


Maintenant, dans l'inspector allez au sous-menu "Applescript", et donnez le nom "leChamp", qui sera utilisé pour la programmation. Rien d'autre, car se sera un champ passif de réception.


Menu Tiger

Notez que j'ai mis deux noms différents pour "Title" et Name" pour faciliter vos débuts. J'aurai pu mettre le même, car dans la programmation le code est discriminant, du genre "if the name of the button is then..." or "if the title of the button is then..."




Créons un bouton

Allez dans le menu Interface Builder, sous-menu "Cocoa-Controls", et choisissez l'icône d'un bouton simple "NSButton".


Menu Tiger



Faites glisser cette icône sur votre fenêtre. Puis, dans l'inspector, donnez à ce bouton le titre "Changer".


Menu Tiger



Résultat :




Maintenant, dans l'inspector allez au sous-menu "Applescript", et donnez le nom "leBouton", qui sera utilisé pour la programmation.

Puis cliquez sur "clicked" de l'événement "Action", et sur le nom du script "champBouton".


Menu Tiger


Enfin, cliquez sur "Edit" en bas du menu. Automatiquement un template sera créé dans votre script.




Vous êtes pret à programmer.


Mais avant, je rapelle avec insistance, qu'il ne faut pas oublier :

Ce sont les trois erreurs classiques de début. Vous passerez du temps à chercher pourquoi un script ne marche pas, et souvent, il sera bon. Et il ne marche pas, parce qu'il n'est pas appelé et/ou l'événement n'est pas validé pour l'objet que vous traitez.


Programmons
on clicked theObject
     set the content of the text field "leChamp" of main window to "initial"
end clicked


Résultat

Notez, le mot "initial" est sur fond bleue, car nous avons laissé l'option "Editable" valide. Option, non nécessaire, dans cet exemple.

Les points clefs :

Ici, le nom de la fenêtre est spécifique à la première fenêtre "main window", équivalant à "window 1", ou si vous donnez un nom à votre fenêtre window "sonNom".



Donnons à la fenêtre le nom "Main"


Menu Tiger


Notre commande devient :

     set the content of the text field "leChamp" of window "Main" to "initial"

Ce qui est mieux, car certaines commandes ne peuvent comprendre main window.



Qualifions le bouton

Notre exemple posséde qu'un seul bouton, parfait. Mais, si il y avait plusieurs boutons, ou d'autres objets, notre commande s'exécuterait pour tous les objets ayant l'événement "clicked" affecté. Donc, écrivons :



Voilà, nous en savons assez, pour commencer notre application.



Télécharger l'exemple

Le fichier en zip champBouton contient le projet que nous venons d'étudier.




La suite - Création d'un tableau


Page précédente

Page suivante

Merci de votre visite

UP