Как разработать компонент Extjs, такой как средство выбора даты?

Я разработчик платформы ExtJs 6.0.

Я хочу разработать такой компонент, как date что когда пользователь щелкает по нему, открывается окно, и в этом окне есть текстовые поля и другие Extjs компоненты. Моя проблема заключается в том, что я хочу использовать этот компонент в качестве редактора ячеек сетки. он не показывает компонент. Другими словами, я хочу разработать собственный сборщик.

Что делать?


person MohammadReza Hasanzadeh    schedule 15.11.2015    source источник


Ответы (1)


Вы можете расширить Ext.form.field.Picker и реализовать createPicker:

Абстрактный класс для полей с одним триггером, который открывает всплывающее окно «сборщик» под полем, например. список меню со списком или средство выбора даты. Он обеспечивает базовую реализацию для переключения видимости средства выбора при нажатии триггера, а также навигации с помощью клавиатуры и некоторых основных событий. Размер и выравнивание средства выбора можно контролировать с помощью свойств конфигурации matchFieldWidth и pickerAlign/pickerOffset соответственно.

Обычно вы не используете этот класс напрямую, а вместо этого используете его в качестве родительского класса для конкретной реализации поля средства выбора. Подклассы должны реализовать метод createPicker для создания компонента средства выбора, подходящего для поля.

Это может выглядеть так:

Ext.define('Fiddle.view.FooPicker', {

    extend: 'Ext.form.field.Picker',

    xtype: 'foo-picker',

    createPicker: function(){

        return Ext.widget('container',{
            padding: 20,
            floating: true,
            items: [
                {
                    xtype: 'textfield'
                },
                {
                    xtype: 'box',
                    html: 'Foo'
                }
            ]
        })

    }

});

https://fiddle.sencha.com/#fiddle/1139

person CD..    schedule 15.11.2015