Newsgroup: it.comp.java
Titolo: Ma in Java esiste un Layout del tipo XY?

Dopo aver perso ore e ore a cercare di utilizzare, in modo produttivo,
i vary Layout, tipo FlowLayout, BorderLayout, GridLayout ed essermi
reso conto che il 95% delle volte questi sono inutili ed e' necessario
usare quello stressante mostro che e' il GridBagLayout, mi sono
chiesto: ma possibile che, in Java, non posso scegliere la posizione di
un GUI specificando le classiche X ed Y?
Grazie mille in anticipo a colui che dara' una risposta a questo mio
quesito. :)
Ciao a tutti, Animanera. :)
--
"La vanita' : decisamente il mio peccato preferito." - L' Avvocato del
Diavolo
email : 
anim...@mailroom.com
icq : 40379995
Nota : L' indirizzo sopra citato invia una copia della e-mail alla
casella 
drka...@wappi.com
 (che a volte non funziona e rispedisce il
msg al mittente:))
Sent via Deja.com 
http://www.deja.com/
Before you buy.

 
hai provato a mettere il layout a null e ad usare il metodo
setBounds() dei vari component?
-- 
Ciao, Matteo                        !! Memories flashin' through my head
                                    /\ Was I just born or am I dead?
mailto:
matteo.mattia
 (at) 
libero.it
 \/              -- The Morning After
                                    　                   Faith No More




 setBounds() dei vari component?
Grazie infinite! (anche a Rax)
Ragazzi, mi avete salvato! :)))
Ma possibile che tutti parlano solo di Layout e nessuno di questa tanto
piccola quanto utilissima funzione che e' setBounds?!?
Grazie ancora. :)
Bye, Animanera. :)


 piccola quanto utilissima funzione che e' setBounds?!?
Ti autorizzo a detestarmi, ma ribadisco che ti stai sbagliando. I Layout
Manager sono una delle cose migliori delle GUI in Java.
Bisogna saperli combinare assieme (senza esagerare).
Bisogna saper usare il GridBagLayout, che non e' affatto difficile se
non si pretende di fare tutto con lui. Anch'esso va combinato con gli
altri. Avevo postato un esempio semplice ma credo abbastanza
significativo.
In casi disperati, bisognerebbe saper scrivere un proprio Layout
Manager. Ma credo proprio disperati. L'unico del quale si sente un po'
la mancanza, e' un equivalente "verticale" del FlowLayout, ce n'e'
comunque delle implementazioni free facilmente reperibili.
Perche' non provi a illustrarci come doveva essere la tua GUI, che
vediamo di realizzarla con i Layout?

 piccola quanto utilissima funzione che e' setBounds?!?
Usare XY è sconsigliato per il semplice motivo che in questo modo hai gli
oggetti posizionati con coordinate assolute -indipendentemente dalle loro
dimensioni- che possono cambiare da JVM a JVM... ad esempio, il RadioButton
sotto XFCE (Linux) potrebbe essere diverso da quello di Aqua (MacOS 9 se
non mi sbaglio).
Il [QuelCheVuoi]Layout dovrebbe garantire che i componenti non si
sovrappongano, siano leggibili, bla bla bla, insomma dovrebbe 'fornire
delle dritte' per la visualizzazione della GUI indipendentemente dall'OS.
Ciao,
 Stefano
----------
"X WindowSSS, teSSSoro mio... lo odieremo per SSSempre"
Bill Gollum
----------

 significativo.
Ho realizzato un' applet usando il GridBagLayout, ma, oltre a dover
settare un sacco di parametri, mi capitava qualche volta un "problema
di visualizzazione" che non sapevo in nessun modo come risolvere. Ed ho
spesso perso tempo proprio per gestire il gridBagLayout (premetto che
non utilizzavo solo il gridBagLayout, ma anche GridLayout e
BorderLayout combinati).
C'e', pero', anche da dire che l'ho utilizzato senza conoscere il
setBounds(!) (cioe' lo conoscevo perche' lo avevo usato con le
immagini...ma avevo pensato, e non so perche', che avesse tutta
un'altra funzione), quindi ogni elemento assumeva dimensioni a suo
piacimento :) Percio' il problema non era solo riservare spazio per il
GUI, ma riservare ESATTAMENTE lo spazio corrispondente alla dimensione
che il GUI dovrebbe assumere.
Ammetto, che, con l'utilizzo di setBounds (in relativo), la
programmazione sarebbe stata abbastanza piu' semplice.
Ma sono, cmq, del parere che il setBounds e' utilissimo per piccole
applet, per le quali, un GridBagLayout richiederebbe piu' linee di
codice del programma base. Per tali applet sarebbe ridotto anche il
pericolo di visualizzazioni errate per altre VM.
--
"La vanita' : decisamente il mio peccato preferito." - L' Avvocato del
Diavolo
email : 
anim...@mailroom.com
icq : 40379995
Nota : L' indirizzo sopra citato invia una copia della e-mail alla
casella 
drka...@wappi.com
 (che a volte non funziona e rispedisce il
msg al mittente, mentre il messaggio originale arriva comunque a
destinazione. Chiedo scusa per un eventuale malfunzionamento della
casella in questione:))


 un GUI specificando le classiche X ed Y?
Credo anch'io che i layout potevano essere evitati nell'implementazione di
Swing o almeno messi in secondo piano : li trovo poco utili e restrittivi.
Il motivo per il quale la Sun li ha implementati nella Swing e' per ovviare
al problema di eventuali "resizing" del frame in cui č visualizzata la tua
applicazione ; Io , pero' , mi chiedo : perchč un'utente dovrebbe fare cio'?
Cmq . un consiglio : usa un GUI builder come Forte for Java perchč scrivere
GUI a mano č una rottura immane !
ciao!