Newsgroup: it.comp.java
Titolo: Mi aiutate con i Layout ?

Salve !
Sono alle prime armi con java e solo adesso sto cominciando a
confrontarmi con i layout a griglia avanzata e con il CardLayout.
Ho un problema che non riesco a risolvere, spero che abbiate la pazienza 
di dedicarmi un pň di attenzione.....in altre parole....AIUTATEMI PER
FAVORE !!
Dunque...gestisco la finestra dell'applet con una griglia avanzata e vi
dispongo un elenco di selezione , un canvas ed un panel.
Il panel ha come layout un'altro GridBagLayout....e fin qui tutto bene.
I problemi sorgono quando introduco il CardLayout, con il quale vorrei
cambiare i pannelli della finestra dell'applet.
Il primo pannello č, come io desidero , affiancato dal canvas e dal menu
di scelta. Quando cambio scheda agendo sull'elenco di selezione, il
nuovo panel invade tutta la finestra "soffocando il canvas e l'elenco.
Credo sia un problema banale, ma non riesco a venirne a capo.
Schematicamente ho agito cosě:
-ho imposato il GridBagLayout dell'applet
-ho definito il canvas e l'elenco di selezione 
-ho definito i pannelli
-ho impostato il GridBagLayout per i pannelli
-ho riempito i pannelli
-ho impostato il CardLayout
-ho aggiunto i pannelli come schede 
-ho rimpostato ( credo stupidamente )il GridBagLayout dell'applet
-ho aggiunto il canvas e l'elenco di selezione
-nel metodo di gestione degli eventi, prima dell'istruzione show.schede 
ho impostato di nuovo il CardLayout.
Credo in conclusione di aver fatto un gran casino.....qualcuno mi aiuta
?
Scusate se mi sono prolungato un pň.
Se non ritenete che possa interessare ad altri potete rispondere anche
privatamente a 
mar...@CHEMNA.DICHI.UNINA.IT
Grazie infinite !

 FAVORE !!
Hem.. il fatto e' che non ho capito molto sulla struttura della tua
interfaccia :-)
Prova a fare uno schema gerarchico dei componenti con i rispettivi layout,
come nel tutorial sui layout manager di Sun, cosi' ci dovremmo capire.

Hai ragione , rileggendo il messaggio mi rendo conto di essere stato
decisamente poco chiaro.
Non ancora letto il tuturial della sun ( grazie per il suggerimento) ma
ho riflettuto ancora un pň sul problema  e vorrei provare a spiegarmi
meglio.
In effetti quel che non riesco a capire  č proprio la struttura
gerarchica che dovrei adottare.
La mia interfaccia č composta da tre componenti: un canvas ( in cui devo
disegnare dei grafici) un elenco di selezione (in cui si sceglie il
modello da rappresentare ) ed un panel ( in cui raggruppo i componenti
per l'input). Poichč il tipo di input varia al variare del modello ,
vorrei adottare un CardLayout per cambiare panel agendo sull'elenco di
selezione.
Il contenitore piů grande ( scusa se il linguaggio che uso č tutt'altro
che tecnico) č rappresentato dalla finestra dell'applet.
Io vorrei disporre i miei tre componenti utilizzando una griglia
avanzata, che quindi credo debba essere il layout in cima alla
gerarchia. Vorrei poi gestire il panel con un una griglia avanzata
indipentente . I pannelli che vorrei si comportassero come schede, sono
componenti della finestra dell'applet e contenitori per i componenti
dell'input .Vorrei trattarli con un CardLayout , ma il contenitore che
dovrebbe accogliere le schede (cioč la finestra dell'applet !??) č gia
predisposto per una griglia avanzata,  o no ? In pratica, come faccio
per far sě  che il contenitore  accolga le schede e le  disponga  in una
posizione  precisa ?
Spero di avere chiarito almeno in parte il mio problema.
Grazie comunque per avermi risposto, il lavoro in java che sto facendo
fa parte della mia tesi in  biologia; come avrai capito non sono molto
pratico e i suggerimenti per me sono preziosissimi. TI sarei  molto
grato se potessi darmi altre indicazioni.
Ciao       Stefano

selezione.
Buttata li', il layout principale potrebbe essere un BorderLayout;
nella parte Nord metti un Panel con FlowLayout o GridLayout con il
solo elenco di selezione; nella parte centrale il canvas (cosi' puo'
adattarsi alle dimensioni della finestra), e nella parte Sud un altro
Panel con il layout che ti pare per i controlli. Penso che invece di
usare un CardLayout, potresti semplicemente definire un array di Panel
e sostituire quello associato alla parte Sud con quello richiesto
dall'elenco di selezione.
Piu' o meno.
Ciao,  
 P.    === Replace "punto" with "." to get my email address.

  Grazie ancora .....
 
   Ciao            
             Stefano