Как получить панель в макете vbox для заполнения контейнера? - PullRequest
0 голосов
/ 14 марта 2012

У меня проблемы с получением панели, чтобы заполнить пространство внутри панели контейнера. Контейнер представляет собой панель с макетом vbox, имеющую две дочерние панели. Я посмотрел на Extjs, как установить 100% высоты для панели vbox и есть что-то подобное, но это не похоже на работу.

Скриншоты: - http://i.imgur.com/nAbCr.png Снимок экрана сделан с того момента, когда я использую «подходящий» макет или даже не имею комбинированного списка или опций в содержащей панели. Итак, я хочу, чтобы панель «Параметры» расширялась до панели «Результаты». с нынешним макетом Vbox это то, что я получаю - http://i.imgur.com/cB0k1.png

Ext.define('PA.view.CreateReportView', {
    extend: 'Ext.panel.Panel',
    alias: 'widget.createreportview',
    id: 'createreport-panel',
    requires: [
        'PA.view.OptionsView', // options panel
    'PA.common.Connection'],

    title: 'Create Report',
    items: [{
        xtype: 'panel',
        layout: {
            type: 'vbox',
            align: 'stretch'
        },
        items: [{
            xtype: 'panel',
            border: false,
            height: '50px',
            items: [{
                xtype: 'combobox',
                ....
            }]
        }, {
            xtype: 'panel',
            border: false,
            flex: 1,
            items: [{
                xtype: 'optionsview', // options panel
                style: {
                    paddingTop: '10px'
                }
            }]
        }]
    }]
});

Ответы [ 2 ]

2 голосов
/ 15 марта 2012

Значение height: должно быть числом, а не строкой.Поэтому используйте height: 50 вместо.

1 голос
/ 15 марта 2012

Я думаю, у вас есть то, что вам нужно.Пара наблюдений: 1. Высоты должны быть заданы как целые числа (без суффикса px) 2. Для каждого контейнера, у которого будут дочерние элементы, должен быть определен макет для них, даже если есть значение по умолчанию - это может быть не то, что вы хотите.

Вот ваш макет работает достаточно хорошо http://jsfiddle.net/dbrin/NJjhB/

Еще одно предложение, которое я хотел бы добавить, - это использовать инструмент, подобный Illuminations for Developers - плагин firebug, который знает о среде ExtJS.

...