Domanda

Ho giocato in giro con GridBagLayout e io non riesco a capire quanti pixel ho intenzione di ottenere con un particolare weighting nei vincoli.

Ad esempio, dire che ho un contentPane 1000 pixel con tre JPanels in esso, con pesi (diciamo, weighty) di 0,1, 0,1, 0,8.

La prima ipotesi è che pannello 1 e 2 sarebbe 100 pixel ciascuno, e pannello 3 sarebbe 800. giri che non era.

Come posso ottenere un numero esatto di pixel di aspettarsi per quanto riguarda la ponderazione?

Questa domanda chiede sorta della stessa cosa, ma le risposte, mentre utile, non lo fanno rispondi alla domanda. : - /

È stato utile?

Soluzione

Non importa, penso di aver trovato la risposta qui :

When more than one column has a non-zero weight, the excess space is 
distributed among the non-zero weight columns using the weight values. 
In particular, if the excess space is P pixels, and the column weights 
for column^i is weight^i, then column^i gets exactly 
(weight^i * P) / (sum-of-all-column-weights). For example, if column 1 
has weight 1 and column 2 has weight 2 and the excess space is 90 pixels, 
column 1 will get 30 extra pixels and column 2 will get 60 extra pixels. 
Rows with a non-zero weight behave in similar fashion.

A quanto pare il problema è spazio in più che viene aggiunto alle cellule.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top