Как… используя MigLayout
Я пытаюсь использовать MigLayout для своего проекта, но я пытаюсь понять логику.
Я хотел бы разместить 2 метки сверху и снизу определенной панели с полем 20 пикселей между метками и концами панели.
Кроме того, он должен быть отцентрирован по горизонтали.
Есть идеи, как это сделать?
1 ответ
Решение
Есть несколько способов сделать это (например, мы могли бы использовать вставки вместо gaptop/bottom). Вот простой пример:
JPanel p = new JPanel();
p.setLayout(new MigLayout("fill"));
p.add(new JLabel("1"), "top, gaptop 20px, center, wrap");
p.add(new JLabel("2"), "bottom, gapbottom 20px, center");
Приведенный выше пример использует top
а также bottom
расположить метки сверху и снизу панели. Более реалистичный пример, где у нас есть содержимое между этими метками, может быть примерно таким:
JPanel p = new JPanel();
p.setLayout(new MigLayout("debug, fill, insets 20 0 20 0", "", "[][grow][]"));
p.add(new JLabel("Top"), "center, wrap");
p.add(new JLabel("Center"), "center, grow, wrap");
p.add(new JLabel("Bottom"), "center");
В этом примере используются вставки для желаемого верхнего и нижнего промежутка в 20px, таким образом, промежуток в 20px не добавляется в строку меток.