Cette section montre comment il est facile de créer une fenêtre simple, et la façon d'inclure des éléments CAPI, tels que des panneaux, dans votre fenêtre.
Entrez les informations suivantes dans le "Listener"
Une petite fenêtre apparaît sur votre écran, appelé "Mon interface. C'est le type le plus simple de fenêtre qui peut être créé avec la CAPI. 
La manière habituelle pour afficher une instance de CAPI est display. Toutefois, une autre fonction, contain, est fourni pour vous aider au cours du développement.
Notez que la fenêtre "mon interface" ne peut pas être inférieure à la largeur minimale spécifiée. Toutes les valeurs de la géométrie CAPI (taille de la fenêtre et la position) sont des nombres entiers et représentent les valeurs en pixels.
Seul un niveau supérieur d'élément CAPI est démontré par display - qui est, une instance de interface. Pour afficher d'autres éléments CAPI (boutons, par exemple, les panneaux d'édition, et ainsi de suite), vous devez fournir des informations sur la façon dont ils doivent être disposés dans la fenêtre. Un tel arrangement est appelé une mise en page - vous en apprendrez plus sur la mise en page dans la section Aménagement des panneaux du CAPI
D'autre part, contain fournit automatiquement une mise en page par défaut pour tout élément CAPI que vous spécifiez. Au cours du développement, il peut être utile pour l'affichage des différents éléments sur votre écran, sans avoir à leur créer une interface explicitement. Toutefois, contain est fourni uniquement comme un outil de développement, et ne doit pas être utilisé pour la mise en œuvre finale d'un élément de CAPI. Pour connaitre la façon d'afficher les éléments dans une interface CAPI, voir Définir une classe d'interface
Notez qu'un l'affichage du CAPI ne doit être consulté dans son propre lot de message. Voir Le flot correcte des message pour les opérations CAPI pour plus d'informations à ce sujet.
Voici comment vous pouvez créer et afficher un bouton à l'aide de contain.
You can click on the button, and it will respond in the way you would expect (it will depress). However, no code will be run which performs an action associated with the button. How to link code to window items is the topic of the next section.
Cela crée une interface qui contient un seul bouton-poussoir, avec une étiquette spécifiée par le mot de :data. Notez que vous pourriez avoir effectué le même exemple en utilisant display, mais vous auriez dû également créer une disposition pour que le bouton dans l'interface pour afficher au bon endroit.
Vous pouvez cliquer sur le bouton, et il répondra de la manière que vous attendez (il va s'abaisser). Toutefois, aucun code sera exécuté puis qu'il n'effectue aucune action associée à cette touche. La façon d'associer du code à un élément de la fenêtre sera discuté dans la prochaine section.

LispWorks CAPI/Lier le code en éléments CAPI

Pour qu'un élément CAPI puisse effectuer une action se fait en spécifiant une fonction callback. C'est une fonction qui est exécutée chaque fois que vous modifiez l'état d'un élément de CAPI. Il appelle un morceau de code à chaque fois qu'un choix est fait dans une fenêtre.
Notez que le résultat de la fonction callback est ignoré, et que cet utilité fait partie de ces effets secondaires.
Écrivez le code suivant
Cliquez sur le bouton Bonjour. Une boîte de dialogue apparaît contenant le message "Bonjour le Monde".
Le CAPI fournit la fonction d'affichage de message pour vous permettre de faire apparaitre une feuille de dialogue contenant un message et un bouton Confirmer. C'est l'une des nombreuses fonctions pré-définis que le CAPI offre. Vous pouvez également faire apparaître une fenêtre de dialogue plutôt qu'une feuille, en utilisant prompt-with-message.
Note: Lorsque vous développez des applications CAPI, vos fenêtres d'application sont exécutées dans la même boucle fenêtre de l'événement système comme IDE LispWorks. Ceci - et le fait que dans le code Lisp de l'utilisateur existe dans le même espace de noms global que la mise en œuvre Common Lisp - signifie qu'une application CAPI qui s'exécute dans l'IDE LispWorks peut modifier les mêmes valeurs que l'une des IDE de LispWorks.
Par exemple, votre application CAPI pourrait avoir un bouton qui, lorsqu'il est sélectionné, définit une fente dans un objet particulier que vous pouvez également accédé par votre Listener. Cette introspection peut être utile mais peut aussi conduire à des valeurs et à des évènements inattendus lors de l'exécution de votre application.

LispWorks CAPI/Créer des menus
Vous pouvez créer des menus d'une application utilisant la classe menu.
Vous devez vous assurer que vous avez défini test-callback et les fonctions Bonjour avant d'essayer l'un des exemples dans ce chapitre. Leurs définitions sont reprises ici pour plus de commodité.

Introduction au test logiciel/Introduction