Vaadin 24: самая простая сетка не отображается в VerticalLayout

Я новичок в vaadin и в настоящее время изучаю vaadin 24. Почему эта простая сетка не отображается?

public class MainView extends VerticalLayout {
    public MainView() {
        Grid<String> grid = new Grid<>();
        grid.setSizeFull();
        grid.addColumn(s->s);
        grid.setItems("foo");
        add(grid);
    }

Этот вопрос задавался давно, но рабочего решения найти не смог. В Firefox и Edge сетка отображается в виде горизонтальной линии. Я уже пробовал setSizeFull() для содержащего VerticalLayout (не показано в коде выше) и «обернуть» сетку в Div. Что мне не хватает?

Поскольку логическая попытка заставить сетку использовать весь экран не сработала, не могли бы вы поделиться, где вы добавляете этот вид? Используете ли вы макет на своем Route? Или это "UI"? У вас есть какой-либо дополнительный CSS или тема, работающая здесь?

cfrick 11.04.2023 19:30

Я только что проверил еще раз и обнаружил, что решение от @simon-martinelli (setHeightFull()) работает, спасибо, Саймон. grid.setMinHeight(100, Unit.PIXELS) (без setHeightFull()) тоже работает. Ответ Саймона принят.

r-uu 11.04.2023 20:28
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
2
79
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Проблема в том, как вы упомянули, что у VerticalLayout нет высоты.

Это работает для меня:

public class MainView extends VerticalLayout {

    public MainView () {
        setHeightFull();

        Grid<String> grid = new Grid<>();
        grid.setSizeFull();
        grid.addColumn(s -> s);
        grid.setItems("foo");
        add(grid);
    }

Спасибо, в моем случае решение состоит в том, чтобы присвоить сетке minHeight.

r-uu 11.04.2023 16:59

Добавление setHeightFull() работает, спасибо.

r-uu 11.04.2023 20:32

Другие вопросы по теме