Blog ENI : Toute la veille numérique !
🐠 -25€ dès 75€ 
+ 7 jours d'accès à la Bibliothèque Numérique ENI. Cliquez ici
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici

Interfaces graphiques utilisateur (GUI)

Généralités

Les applications MATLAB sont des programmes autonomes, composés de plusieurs éléments qu’il faut assembler pour obtenir un tout cohérent, qui permettent d’automatiser une tâche ou un calcul. Elles admettent une ou plusieurs interfaces graphiques organisées en vues et gabarits, avec néanmoins quelques spécificités.

Une interface graphique (en anglais, GUI pour Graphical User Interface) ou un environnement graphique désigne la manière dont une application est présentée à l’écran pour l’utilisateur. Il s’agit d’un ensemble d’éléments graphiques (menus, boutons, barres d’outils, listes déroulantes) et de fonctionnalités qui permettent à l’utilisateur de communiquer avec la machine. Avec cette dernière, l’utilisateur peut facilement manipuler les objets en utilisant la souris. Elle doit se comporter de manière compréhensible et prévisible afin qu’un utilisateur sache à quoi s’attendre lorsqu’il effectue une action.

Ce chapitre comprend une introduction aux éléments de base des interfaces graphiques MATLAB. Il ne contient pas une description complète des composants ou des fonctionnalités des interfaces graphiques, mais il fournit les bases nécessaires...

Les étapes de conception d’une interface

La conception d’une interface graphique doit prendre en compte les besoins de l’utilisateur et les exigences techniques, tout en respectant certains principes ergonomiques. Il est donc important de structurer l’information pour que la conception de l’interface soit pertinente.

1. L’analyse

Avant de commencer la conception de votre interface graphique, vous devez réfléchir aux acteurs qui l’utiliseront et comment ils le feront. La règle la plus importante dans cette phase est de garder l’utilisateur à l’esprit. De nombreux programmateurs MATLAB se trouvent être les principaux utilisateurs de leurs interfaces graphiques.

La conception d’une interface est précédée d’une étape d’analyse sur les objectifs et les besoins. Cette analyse doit prendre en compte les spécificités techniques liées au système et peut nécessiter l’imagination d’un certain nombre de scénarios d’utilisation. La phase d’analyse de la conception d’une interface graphique de qualité peut être très importante.

L’analyse des besoins permet d’établir, en relation avec l’utilisateur, les services requis et les contraintes de développement.

À cette étape, le concepteur doit accomplir les principales...

Fonctionnement d’une interface utilisateur graphique

Une interface graphique fournit à l’utilisateur un environnement convivial. Elle contient des menus, des barres d’outils, des boutons, des champs, des menus déroulants, des boutons radio, des curseurs, des zones de texte, etc. Ces éléments sont tous déjà familiers à l’utilisateur, il peut ainsi se concentrer sur l’objectif de l’application plutôt que sur les mécanismes impliqués pour faire des choses.

Cependant, les interfaces graphiques sont plus difficiles pour le programmeur, car un programme basé sur une interface graphique doit prévoir les clics de souris ou éventuellement la saisie au clavier, pour tout élément de l’interface graphique à tout moment. Ces entrées sont appelées événements, et un programme qui réagit à des événements est dit événementiel.

On parle donc de programmation événementielle, par opposition à la programmation séquentielle.

Le principe d’exécution des interfaces graphiques fonctionne différemment de l’exécution d’un programme classique. L’interface réagit à des évènements provenant des éléments de fenêtre. L’ordre d’exécution des commandes...

Les éléments de base de l’interface graphique

1. Généralités

Avant d’aborder la construction des interfaces graphiques proprement dite, faisons un rapide tour d’horizon des objets disponibles.

Hiérarchie

En MATLAB, on peut classer les objets graphiques selon une hiérarchie parent-enfants de la façon suivante :

- Root

 

 

 

 

 

- Figure

 

 

 

 

 

- Axes

 

 

 

- Image

- Light

- Line

- Patch

- Rectangle

- Surface

 

- Text

 

 

 

- UI Objects

 

 

 

- Uicontrol

- Uicontextmenu

- Uimenu

- Uipanel

- Uitoolbar

 

 

 

 

- Uipushtool

- Uitoggletool

Les objets graphiques sont empilés les uns sur les autres selon l’ordre hiérarchique. L’objet principal est la Root, elle se situe en dessous. Les objets Figure sont empilés sur la Root, les Axes sur leur conteneur Figure... S’il y a des objets de même niveau hiérarchique intégrés dans le même conteneur parent, la visibilité de ces objets est indiquée par leur ordre de création.

Les objets graphiques les plus importants sont :

  • l’objet Fenêtre : c’est le principal objet, il contient tous les autres objets. Il est créé en utilisant la commande figure().

  • l’objet Axes : c’est l’objet qui supporte les graphiques et ces composantes.

  • les contrôles : avec la commande uicontrol(), il est possible de créer plusieurs objets tels que bouton, case à cocher, champs de saisie, liste déroulante...

  • les menus : un menu est une liste de commandes ou de choix offerts à l’utilisateur par le biais d’une barre de menus. La fonction uimenu() crée un menu ou des éléments de menu.

  • les panels : ce sont des conteneurs utilisables pour rassembler d’autres contrôles.

  • les groupes : il s’agit de panels particuliers destinés à recevoir un ensemble de commandes comme des boutons radio. Ils sont générés avec la fonction uibuttongroup().

Identifiant

Chaque objet créé lors de la conception d’une interface dispose d’un identifiant unique (un nombre entier ou réel) nommé handle, qui peut être stocké dans une variable permettant...

L’outil GUIDE

1. Présentation

MATLAB possède un outil dédié à la création des interfaces graphiques appelé GUIDE (pour Graphical User Interface Development Environment). Cet outil permet au programmeur de créer l’interface GUI, en sélectionnant et en ajustant les éléments à y placer. Il s’ouvre en tapant guide dans la fenêtre Command Window de MATLAB.

Lorsque le GUIDE est exécuté, cela ouvre la fenêtre GUIDE Quick Start, où vous pourrez également étudier ou revoir les exemples de MATLAB. Pour le moment, nous allons sélectionner la première option : Blank GUI (Default). 

images/11RI30.PNG

Ensuite, une figure sans titre apparaît Le menu de gauche comporte des éléments que vous pouvez faire glisser sur votre interface.

images/11RI31.PNG

Le choix des objets est réalisé par le biais d’une sélection dans une boîte à outils, qui se situe par défaut dans la partie gauche de l’interface créée. Leur mise en place et leur dimensionnement se font à l’aide de la souris.

Le Property Inspector peut être affiché grâce à un double clic sur un objet. Le programmeur peut modifier le contenu de la liste des propriétés.

images/11RI32.PNG

Une fois l’interface graphique terminée, on doit l’enregistrer. Cette sauvegarde...