Как ... с MigLayout - PullRequest
       32

Как ... с MigLayout

9 голосов
/ 29 июня 2010

Я пытаюсь создать макет, который будет выглядеть так:

+---+--------+---+
|   |        |   |
|   |        |   |
+---+        +---+
|   |        |   |
|   |        |   |
+---+--------+---+

Центральная клетка должна быть в два раза шире других. Я пытаюсь добиться этого с помощью такого кода:

    val panel = new JPanel(new MigLayout("debug", "grow","grow" ))
    panel.add(new JPanel)
    panel.add(new JPanel, "span 2 2")
    panel.add(new JPanel, "wrap")
    panel.add(new JPanel)
    panel.add(new JPanel)

Но в результате все мои клетки имеют одинаковую ширину:

+----+----+----+
|    |    |    |
|    |    |    |
+----+    +----+
|    |    |    |
|    |    |    |
+----+----+----+

Что я делаю не так? Я использую Scala, но я не думаю, что проблема здесь.

UPDATE Может быть, кто-то может объяснить, почему это не сработало. Даже если я попытаюсь воспроизвести пример из руководства QuickStart, это не сработало:

альтернативный текст http://www.freeimagehosting.net/uploads/d306693273.png

Мой код:

    val panel = new JPanel(new MigLayout("debug", "grow","grow" ))
    wrapTab.add(new JPanel)
    wrapTab.add(new JPanel, "span 2 2")
    wrapTab.add(new JPanel, "wrap")
    wrapTab.add(new JPanel)
    wrapTab.add(new JPanel, "wrap")
    wrapTab.add(new JPanel)
    wrapTab.add(new JPanel)

И в результате все столбцы имеют одинаковый размер.

1 Ответ

11 голосов
/ 30 июня 2010
val panel = new JPanel(new MigLayout("debug", 
              "[grow 25][grow 50][grow 25]","grow" ))
panel.add(new JPanel)
panel.add(new JPanel, "spany 2")
panel.add(new JPanel, "wrap")
panel.add(new JPanel)
panel.add(new JPanel)
...