Gestori di layout e contenitori

I gestori di layout sono oggetti che consentono di controllare le dimensioni e la posizione dei componenti all'interno di un contenitore.

Alcuni bean Java consentono di stabilire relazioni reciproche. Ad esempio, la classe java.awt.Container consente di aggiungere istanze di java.awt.Component come parte della propria relazione con i componenti. Un esempio di java.awt.Container è un pannello o un frame. Un esempio di java.awt.Component è un pulsante o una casella di testo. La classe SWT org.eclipse.swt.widgets.Composite consente di aggiungere le istanze di org.eclipse.swt.widgets.Control come parte della relazione dei suoi controlli. Nell'editor visivo per Java, le relazioni di contenimento sono visualizzate all'interno della vista Bean Java e della vista Progettazione. In altri termini, i contenitori possono contenere componenti o altri contenitori.

Un gestore di layout è un oggetto che consente di controllare le dimensioni e la posizione dei componenti all'interno di un contenitore. È possibile impostare su nullo il gestore di layout in un contenitore e consentire a ciascun componente di assumere dimensioni e posizione proprie. Tuttavia, in un layout nullo, la posizione dei componenti dell'interfaccia utente non sarà modificata quando si ridimensiona la finestra. Con un gestore di layout, invece di avere dimensioni e posizione fisse per ciascun componente, la definizione delle dimensioni e della posizione dei propri componenti viene delegata al gestore di layout del contenitore.

La proprietà del layout può essere impostata per i contenitori nella vista Proprietà:

Immagine della vista Proprietà

Ogni gestore di layout dispone di proprie regole per la distribuzione dei componenti, ma la maggior parte dei gestori posiziona i componenti in modo che soddisfino almeno le dimensioni preferite. Le dimensioni preferite dei componenti con stringhe visibili agli utenti, come i pulsanti o le etichette, vengono calcolate dinamicamente. Dunque, quando la lunghezza della stringa varia a causa di impostazioni internazionali o caratteri diversi, il gestore di layout riposizionerà ciascun componente. Quando la finestra viene ridimensionata da un utente in fase di runtime, il gestore di layout riposiziona anche ciascun componente per ottimizzare le nuove dimensioni complessive. Questa condizione rende i gestori di layout inutilizzabili nella creazione di interfacce utente che verranno distribuite in un ambiente in cui le stringhe di etichette, i caratteri o le dimensioni delle finestre possono variare (ad esempio, a causa della localizzazione).

I contenitori Swing e AWT (Abstract Windows Toolkit) utilizzano lo stesso insieme di gestori di layout, costituiti prevalentemente da oggetti AWT. Le strutture composte SWT (Standard Widget Toolkit) utilizzano propri gestori di layout SWT.

Nota: se si utilizza un gestore di layout non fornito nell'editor visivo, la vista Progettazione proseguirà nella costruzione del contenitore in modo appropriato e nel rendering dei componenti. Tuttavia, non sarà possibile aggiornare i vincoli mediante la vista Proprietà o la vista Progettazione.
Attività correlate
Personalizzazione layout dell'UI nell'editor visivo
Utilizzo dei gestori di layout SWT
Utilizzo dei gestori di layout Swing e AWT
Utilizzo di layout null

(C) Copyright IBM Corporation 1999, 2004. Tutti i diritti riservati.