|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jun 2004
Messaggi: 760
|
[JAVA Swing] setSize in percentuale
Ciao a tutti...
sto sviluppando una GUI e mi servirebbe poter indicare le dimensioni del frame in percentuale rispetto alla risoluzione dello schermo, ma non mi sembra che con setSize sia possibile, vero? C'é un modo per farlo? grazie
__________________
Gandalf_BD -------------------------------------------- "When you aim at perfection, you discover it's a moving target" |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Con la classe Toolkit ottieni la dimensione dello schermo (larghezza e altezza in pixel).
Codice:
Toolkit t = Toolkit.getDafaultToolkit(); Dimension screenSize = t.getScreenSize(); double width = screenSize.getWidth(); double height= screenSize.getHeight(); Ad esempio: vuoi creare un Frame di larghezza pari al 70% della larghezza dello schermo: Codice:
// double frameWidth = (width * 70.0) / 100.0; double frameWidth = width * 0.7; Ciao
__________________
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) |
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Jun 2004
Messaggi: 760
|
Grazie... funziona, ma a dire la veritá cercavo qualcosa di "built-in", che mi permettesse di fare anche il posizionamento di pulsanti e roba varia in modo proporzionato... strano che non ci sia, no?
![]() L'unico problema della tua soluzione é che per posizionare anche gli altri oggetti devo fare una miriade di calcoli Quote:
grazie
__________________
Gandalf_BD -------------------------------------------- "When you aim at perfection, you discover it's a moving target" |
|
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Quote:
Se gli "altri oggetti" come li chiami tu sono appunto altri componenti contenuti all'interno del Frame principale non devi fare nessun calcolo: le posizioni specificate sono sempre relative al posizionamento del contenitore, non devi mica specificarle in coordinate assolute del monitor. @EDIT: Sorry, scemo io, adesso ho capito cosa intendevi. Guarda, non so che tipo di interfaccia devi realizzare (leggi: quanto complessa) ne come tu intenda posizionare i componenti dentro il Frame. Perchè in realtà la posizione di un componente dentro un container è stabilita e gestita dal LayoutManager associato al container stesso: quindi in teoria tu non hai questo problema, a patto di usare i container giusti con i LayoutManager correttamente settati. Usare bene i LayoutManger non è banale, consiglio a priori (non ho la più pallida idea di quale livello di competenza/conoscenza/esperienza in Java - Swing tu disponga) uno studio approfondito della materia, onde evitare perdite di tempo più avanti e inutili frustrazioni. Ciao
__________________
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 : 29-09-2008 alle 14:18. |
|
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jun 2004
Messaggi: 760
|
ma perché, per esempio, quando posizioni un JButton devi specificare la posizione e le dimensioni nella setBounds...
__________________
Gandalf_BD -------------------------------------------- "When you aim at perfection, you discover it's a moving target" |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Stai usando un editor visuale di qualche IDE?
__________________
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) |
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Jun 2004
Messaggi: 760
|
sto usando Visual Editor con Eclipse
__________________
Gandalf_BD -------------------------------------------- "When you aim at perfection, you discover it's a moving target" |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
D'accordo, conosco VE di fama, non l'ho mai usato.
Comunque il problema resta; ho risposto nel mio secondo post che ho editato. Ovvero: piazzare i componenti all'interno di un container affidando il loro posizionamento al LayoutManager del container stesso, e non tramite setBounds(). C'è qualche motivo che ti impedisce l'uso dei LayoutManager?
__________________
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) |
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Jun 2004
Messaggi: 760
|
Ok, grazie
in realtá, il tuo edit l'ho letto solo ora Grazie... andró a dare una ripassatina ai LayoutManager
__________________
Gandalf_BD -------------------------------------------- "When you aim at perfection, you discover it's a moving target" |
|
|
|
|
|
#10 | |
|
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Quote:
Ovviamente studia bene anche tutti gli altri.
__________________
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) |
|
|
|
|
|
|
#11 |
|
Senior Member
Iscritto dal: Jun 2004
Messaggi: 760
|
Sappi che menzionandomi i Layout Manager mi hai ufficialmente salvato la vita
grazie
__________________
Gandalf_BD -------------------------------------------- "When you aim at perfection, you discover it's a moving target" |
|
|
|
|
|
#12 | |
|
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Quote:
Buon lavoro
__________________
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) |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 14:37.





















