PlayN + тройной макет
Есть ли простой способ сделать элементы в tripleplay wrap и продолжить дальше?
Например, если у меня есть этот код:
Group letters = new Group(AxisLayout.horizontal(), Style.HALIGN.left);
letters.addStyles(Styles.make(Style.TEXT_WRAP.is(true)));
root.add(letters);
for (int i = 0; i < 100; i++) {
letters.add(new Label(""+i));
}
Это показало бы некоторые числа (скажем, до 30), а остальные цифры исчезнут за кадром, то, что я хочу получить, выглядит примерно так:
01 02 03 ... 28
29 30 31 ... 50
Поэтому любой компонент, который не помещается на экране, будет добавлен ниже. Я попробовал несколько настроек, но не смог получить его
Спасибо
1 ответ
Style.TEXT_WRAP
применимо только к Label
s. В Tripleplay Uing of Swing нет аналога FlowLayout
это то, что я думаю, вы хотите.
Если вы действительно хотите выложить пачку текста, просто вставьте все в одну метку с включенным переносом текста. Но если вы пытаетесь расположить фактические элементы пользовательского интерфейса в потоке, то вам нужно написать свой собственный FlowLayout
, Вы также можете использовать TableLayout
, но это требует, чтобы вы знали, сколько столбцов вы хотите заранее.
Я всегда находил FlowLayout
быть странным способом выкладывать пользовательские интерфейсы, и никогда не нуждался в этом, поэтому я не написал один для Tripleplay UI.