ExtJS CheckboxGroup 标签换行

标签 extjs

我的复选框有问题。因此,这些复选框位于列中,较长的标签位于其复选框下方。有没有办法将列宽设置为最长标签?它必须是动态宽度。你能帮我吗?

最佳答案

您可以使用以下工具来测量所有标签并将最宽标签的宽度应用于所有标签 http://jsfiddle.net/Wr7Wr/1/

Ext.define('DynamicLabelFormPanel', {
    extend: 'Ext.form.Panel',

    initComponent: function() {
        // Need to create a hidden field to measure the text
        var field = new Ext.form.field.Text({fieldLabel: 'Testing', value: 'whateves', renderTo: Ext.getBody(), hidden: true});
        var metrics = new Ext.util.TextMetrics(field.labelEl);
        var widths = Ext.Array.map(this.items, function(item) {
            // Need to acount for the : 
            return metrics.getWidth(item.fieldLabel + ":");
        });
        var maxWidth = Math.max.apply(Math, widths);
        for (var i = 0; i < this.items.length; i++) {
            this.items[i].labelWidth = maxWidth;
        }
        this.callParent();
    }
}

作为一个插件,这可能会更好,但它会告诉你需要做什么

关于ExtJS CheckboxGroup 标签换行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14586089/

相关文章:

javascript - ExtJS5 MVVC CRUD ajax 代理会读取但不会读取其他

javascript - Visual Studio Code Sencha Ext JS 扩展问题

javascript - 从网络应用程序捕获照片、音频和视频

javascript - Extjs滚动到tabPanel内的位置

.NET 3.5 升级到 .NET 4.0 后未调用 ASP.NET 通用处理程序

javascript - ExtJS 6 : Validator on a textfield not working properly

javascript - 每个团队的缺陷和严重程度,缺陷计数不正确

javascript - IE6和IE7 ExtJS gridPanel标题消失

ExtJS 4 : Excel-style keyboard navigation in an editable Grid

javascript - Ext.onReady() 与 $(document).ready()