Présentations

Nous avons vu quelques exemples simples qui montrent comment redimensionner ou positionner les widgets enfants en fonction de la taille du parent. Jusque là, ce type de calcul s'est produit en réponse à un écouteur de redimensionnement. Il s'agit souvent du meilleur moyen pour traiter le positionnement de simples widgets. Cependant, il existe des schémas courants utilisés par les applications lors du placement des widgets. Ces schémas peuvent être structurés sous forme d'algorithmes de présentation qui peuvent être réutilisés par différentes applications.

SWT définit les présentations qui fournissent le positionnement et le dimensionnement des widgets enfants d'un composite. Les présentations sont des sous-classes de la classe abstraite Layout. Les présentations standard de SWT figurent dans le package org.eclipse.swt.layout.

Vous devez comprendre quelques définitions générales lorsque vous redimensionnez et positionnez les widgets.

Ces concepts sont liés aux applications qu'une présentation soit ou non utilisée. Vous pouvez envisager une présentation comme moyen adéquat pour regrouper les fonctionnalités de redimensionnement à des fins de réutilisation.

Certains concepts supplémentaires sont introduits par des présentations.

Pour en savoir plus et obtenir des illustrations de ces concepts, consultez la section Understanding Layouts in SWT

Le fragment de code ci-dessous illustre le simple cas d'une application utilisant un rappel de redimensionnement pour dimensionner un libellé à la taille de son shell parent.

   Display display = new Display ();
   Shell shell = new Shell (display);
   Label label = new Label (shell, SWT.CENTER);
   shell.addControlListener(new ControlAdapter() {
      public void controlResized(ControlEvent e) {
         label.setBounds (shell.getClientArea ());
      }
   });

Le fragment suivant utilise une présentation pour parvenir au même effet :

   Display display = new Display ();
   Shell shell = new Shell (display);
   Label label = new Label (shell, SWT.CENTER);
   shell.setLayout(new FillLayout());

Même dans le cas de ce simple exemple, l'utilisation d'une présentation réduit le code d'application. Pour des présentations plus complexes, la simplification est bien plus grande.

SWT fournit des classes de présentation par défaut qui peuvent être utilisées dans de nombreuses situations.

Copyright IBM Corp. and others 2000,2002.