1

所以我有一个网格面板,它可以水平或垂直自动滚动。单击搜索按钮后将显示网格面板。如果面板有很多数据,面板将为垂直滚动条提供一个空间。但是每当我排序或转到下一页时,它不会为标题提供垂直滚动条的空间。它看起来像这样↓</p>

在此处输入图像描述

每当我转到没有垂直滚动条的最后一页,然后返回到有滚动条的第一页时,它都会在标题上为垂直滚动条留出空间。只是转到下一页然后返回上一页,并且排序也是如此,它不会给空间。

我认为模式是,当面板一开始没有滚动时,它会给一个空间,但是当面板已经有一个滚动时,它就不会为标题留出空间。

顺便说一句,我不能使用reserveScrollbar,因为客户端想要自动滚动。

这是我的看法:

Ext.define('Uph.view.contents.approval.ListGrid', {
    extend: 'Ext.grid.Panel',
    alias: 'widget.apv-listgrid',
    id: 'apv-listgrid',
    enableColumnHide: false,
    scrollable: true,
    columnLines: true,
    columns: [{
        text : 'Time',
        itemId: 'grAplDatetime',
        flex: 1,
        width: 60,
        dataIndex: 'aplDatetime',
        renderer: function(value) {
            if ( !value || value.length === 0 ) {
                return '';
            }
            return Uph.Function.formatYmdHi(value);
        }
    },{
        text     : 'Group Name',
        itemId: 'grPageName',
        flex: 1,
        width: 60,
        dataIndex: 'pageName',
    },{
        text     : 'Detail',
        width: 50,
        resizable: false,
        itemId: 'grDetail',
        sortable: false,
    },{
        text     : 'Preview',
        width: 80,
        resizable: false,
        itemId: 'grPreview',
        sortable: false,
    },{
        text     : 'Appr',
        width: 50,
        resizable: false,
        itemId: 'grApproval',
        sortable: false,
    }],

    bbar: {
        xtype: 'cps-pagingtoolbar'
    },
    viewConfig: {
        loadMask: false,
        listeners: {
            refresh: function(v) {
                Ext.resumeLayouts(true);
            }
        }
    }
});

希望可以有人帮帮我。谢谢你。

4

1 回答 1

0

百万年后,我终于通过从扩展“Ext.toolbar.Paging”的自定义分页类中删除代码解决了这个问题。

我删除了这个,现在它可以正常工作了:

Ext.suspendLayouts();

这也是因为它不再有用了:

Ext.resumeLayouts(true);

我的任务是从 extjs4.2 升级到 extjs6.5,所以也许它在那个版本上运行良好,但不知何故它在新版本上引起了一些问题。

于 2018-06-15T02:20:42.913 回答