Java - объяснение веса меша сетки для отображения отношения пикселей / формулы / преобразования - PullRequest
1 голос
/ 25 июля 2011

Я играл с GridBagLayout, и я не могу понять, сколько пикселей я собираюсь получить с конкретным weight в ограничениях.

Например,скажем, у меня есть 1000 пикселей contentPane с тремя JPanel с, с весами (скажем, weighty) 0,1, 0,1, 0,8.

Моя первая гипотеза состояла в том, что панель 1 и 2 будут по 100 пикселей каждая, а панель 3 будет 800. Оказывается, это не так.

Как получить точное количество пикселейожидать относительно веса?

Этот вопрос задает то же самое, но ответы, хотя и полезны, не отвечают на вопрос.: - /

1 Ответ

2 голосов
/ 25 июля 2011

Не берите в голову, я думаю, что нашел ответ здесь :

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.

Очевидно, проблема заключается в добавлении дополнительного пространства в ячейки.

...