Extjs - 当复合字段内的项目增长/调整大小时如何调整兄弟姐妹的位置

发布于 2024-11-25 06:35:18 字数 734 浏览 2 评论 0原文

我有一个包含两个文本字段项的复合字段。第一个文本字段的 Growth 属性设置为 true。当第一个文本字段的宽度自动调整大小时,它会与右侧的字段重叠。我希望后续项目随着前一个字段的增长而调整/移动其位置到右侧。 例如,

  new Ext.form.CompositeField({
       autoHeight: true
       , autoWidth: true
       , items:[{
           xtype:'textfield'
           , flex: 1
           , growMax: 125
           , growMin: 80
           , width: 80
           , grow: true
           , listeners: {
               'autoSize': function () { 
               // what should I do here??  i tried accessing the 
               // ownerCt syncSize() but didn't work
            }            
        }}
        , {
           xtype:'textfield'
           , flex: 1
           , width: 80
        }]
     });

提前谢谢您。

I have a composite field with two textfield items. The first textfield's grow property is set to true. When the first textfield's width autoresize, it overlaps the field to the right. I would like the succeeding items to adjust/move it's position to the right as the preceeding field grows.
e.g

  new Ext.form.CompositeField({
       autoHeight: true
       , autoWidth: true
       , items:[{
           xtype:'textfield'
           , flex: 1
           , growMax: 125
           , growMin: 80
           , width: 80
           , grow: true
           , listeners: {
               'autoSize': function () { 
               // what should I do here??  i tried accessing the 
               // ownerCt syncSize() but didn't work
            }            
        }}
        , {
           xtype:'textfield'
           , flex: 1
           , width: 80
        }]
     });

Thank you in advance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

随遇而安 2024-12-02 06:35:18

这似乎是 extjs 的错误。但是,我找到了解决方法:

    'autoSize': function () { 
           if (this.width == this.el.dom.offsetWidth)
               return;
           this.width = this.el.dom.offsetWidth;
           this.ownerCt.doLayout();
        }

这是 fiddle

This seem to be bug of extjs. However, I 've found workaround:

    'autoSize': function () { 
           if (this.width == this.el.dom.offsetWidth)
               return;
           this.width = this.el.dom.offsetWidth;
           this.ownerCt.doLayout();
        }

Here is fiddle

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文