Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Lenovo ThinkPad X1 Carbon Gen 14: il business ultraleggero si rinnova dall’interno
Lenovo ThinkPad X1 Carbon Gen 14: il business ultraleggero si rinnova dall’interno
Con la quattordicesima generazione Lenovo ridisegna il suo ThinkPad più iconico attorno al nuovo Space Frame e ai processori Intel Core Ultra Series 3. Resta sotto 1Kg, è molto più semplice da riparare e si rivolge al professionista che lavora in mobilità, con un prezzo da prodotto di vertice.
Jabra Evolve3 85: le cuffie sia per l'intrattenimento che per il lavoro
Jabra Evolve3 85: le cuffie sia per l'intrattenimento che per il lavoro
Le Jabra Evolve3 85 non sono semplicemente cuffie Bluetooth con cancellazione del rumore. Sono un dispositivo professionale pensato per chi trascorre gran parte della giornata in riunione, al telefono o davanti a un assistente basato sull'intelligenza artificiale
MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB per far girare in locale anche i modelli più grandi
MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB per far girare in locale anche i modelli più grandi
Abbiamo provato MSI PRO MAX EDGE AI+, un mini-PC professionale progettato per eseguire modelli di intelligenza artificiale in locale, senza dipendere dal cloud. Il sistema abbina il processore AMD Ryzen AI Max+ 395, 128 GB di memoria unificata e un telaio in alluminio da appena 4 litri, con l'obiettivo di offrire capacità di elaborazione elevate in un formato compatto.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 13-03-2010, 12:31   #1
fbcyborg
Senior Member
 
L'Avatar di fbcyborg
 
Iscritto dal: Jan 2004
Città: ROMA
Messaggi: 2055
[JAVA] Aiuto con GridLayout. "2 righe che occupano tutto lo spazio"

Salve a tutti,

non riesco a capire come risolvere il seguente problema.
Ho un JPanel che ha come layout il GridLayout, semplicemente impostato con una colonna ed n righe.
Il fatto è che se il numero delle righe scende al di sotto di un certo numero queste tendono ad occupare sempre più spazio possibile.
Capisco bene che è un comportamento normale ma vorrei evitarlo.
Faccio un esempio.
Se ho un JPanel (in un JScrollPane) 819x615, ed un altro JPanel alto 44 e largo quanto è largo il JPanel contenitore, se imposto un numero di righe per il GridLayout uguale a 20 (ad esempio) e aggiungo al JPanel 20 pannelli alti 44, ognuno di questi pannelli ha la sua altezza originaria (44), ma se scendo sotto una certa soglia questa altezza aumenta. Ad esempio se ne metto solo 2, questi tenderanno a occupare metà spazio per il primo e metà per il secondo.
Come posso fare per fare in modo che ciò non accada?
Ho provato con un sacco di metodi, ad esempio anche a ridimensionare il JPanel contenitore in base a quante righe ci sono moltiplicato per 44, ma non funziona.

EDIT:
Per il momento ho trovato un "trucco". Ho messo 2 pannelli in un JContentPane. Uno a nord e uno al centro. Quello a nord lo uso per metterci i pannellini alti 44, con gridLayout. Quello al centro lo lascio vuoto, per far sì che si espanda fino ad occupare tutto lo spazio possibile. Così ottengo l'effetto desiderato.
__________________
^ThE CyBoRg^

Ultima modifica di fbcyborg : 13-03-2010 alle 12:52.
fbcyborg è offline   Rispondi citando il messaggio o parte di esso
Old 15-03-2010, 13:06   #2
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Hai mai dato un'occhiata alla classe javax.swing.Box?
E in alternativa: il tuo GridLayout a singola colonna e N righe non è che potrebbe comodamente essere espresso usando una JList?
__________________

As long as you are basically literate in programming, you should be able to express any logical relationship you understand.
If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it.
(Chris Crawford)
banryu79 è offline   Rispondi citando il messaggio o parte di esso
Old 15-03-2010, 13:42   #3
fbcyborg
Senior Member
 
L'Avatar di fbcyborg
 
Iscritto dal: Jan 2004
Città: ROMA
Messaggi: 2055
No non conoscevo javax.swing.Box.
Credo che non sia possibile usare una JList nel mio caso. A me serve una lista di pannelli che contengono JLabel e JButton. Non so se sia possibile fare lo stesso con una JList, ma a occhio direi di no!
__________________
^ThE CyBoRg^
fbcyborg è offline   Rispondi citando il messaggio o parte di esso
Old 15-03-2010, 14:22   #4
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da fbcyborg Guarda i messaggi
No non conoscevo javax.swing.Box.
Credo che non sia possibile usare una JList nel mio caso. A me serve una lista di pannelli che contengono JLabel e JButton. Non so se sia possibile fare lo stesso con una JList, ma a occhio direi di no!
Ah, ok. E' che non sapevo quale fosse l'"entità" che popola le tue righe. Allora te la giochi di layout managers, preferred e maximum size dei componenti e finezze/acorgimenti vari.

Box la puoi usare per generare delle "scatole", verticali od orizzontali, in cui incapsulare i tuoi componenti.
Inoltre puoi generare delle aree "di riempimento" (component) a dimensione fissa o a espansione (le "colle") che puoi infilare tra i tuoi componenti per gestirne il layout.

Nel tuo caso potrebbe funzionare un'impostazione del genere:
ogni "riga" che infili nel grid layout è una Box orizzontale [Box.createHorizontalBox()] al cui interno infili il tuo pannello che racchiude tutti i vari componenti, ad esempio.
Comunque per farti un'idea più precisa puoi cercare il tutorial relativo (How to use BoxLayout) nel Really Big Index dei Java Tutorials.
__________________

As long as you are basically literate in programming, you should be able to express any logical relationship you understand.
If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it.
(Chris Crawford)

Ultima modifica di banryu79 : 15-03-2010 alle 14:24.
banryu79 è offline   Rispondi citando il messaggio o parte di esso
Old 15-03-2010, 14:24   #5
fbcyborg
Senior Member
 
L'Avatar di fbcyborg
 
Iscritto dal: Jan 2004
Città: ROMA
Messaggi: 2055
Ok! Grazie per le dritte!
__________________
^ThE CyBoRg^
fbcyborg è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Lenovo ThinkPad X1 Carbon Gen 14: il business ultraleggero si rinnova dall’interno Lenovo ThinkPad X1 Carbon Gen 14: il business ul...
Jabra Evolve3 85: le cuffie sia per l'intrattenimento che per il lavoro Jabra Evolve3 85: le cuffie sia per l'intratteni...
MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB per far girare in locale anche i modelli più grandi MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB...
Recensione vivo X500 Pro Max: la fotografia mobile ha un nuovo protagonista Recensione vivo X500 Pro Max: la fotografia mobi...
WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà WoW Forever: la beta è stato uno dei mome...
Il Cybertruck ha i giorni contati? Musk ...
Meta porta la voce su Muse, e a sponsori...
Perché il disco principale di Win...
Quanta acqua consuma l'IA? Da cinque goc...
Airbnb lancerà un assistente AI per pian...
25 miliardi sul tavolo: i sauditi voglio...
TV Haier QLED da 65'' a meno di 400€ su ...
Il meglio degli sconti Amazon del weeken...
Il rumore degli aerei in sottofondo può ...
Ecco un tapis roulant pieghevole da 14 k...
Roborock Qrevo 2 Pro Set, coupon da 50€ ...
Gemini addestra l'IA con le chat private...
Addio ai floppy disk nei centri di contr...
Crolla il prezzo di Google Pixel 11 da 5...
I satelliti spia russi Kosmos 2613 e Kos...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 11:17.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v