【问题标题】:Add Flex value dynamically to controller in extjs将 Flex 值动态添加到 extjs 中的控制器
【发布时间】:2013-03-13 09:20:30
【问题描述】:

我在“视图”中给出了一些项目(容器),布局为hbox。现在我想通过“控制器”为每个项目赋予flex 值。我该怎么做?

我浏览了文档,但找不到像 setFlex 这样的方法。

编辑

Ext.apply(Ext.getCmp('IdHere'), {flex: 1});

我从这个link 得到了答案。 但现在的问题是,即使我正在动态更改 flex 值,容器的视图也没有改变。它保持不变。

我最初没有在“视图”中分配 flex 值,如here

【问题讨论】:

    标签: extjs extjs4 extjs4.1 extjs-mvc


    【解决方案1】:

    我的第一个猜测是需要通过调用doLayout() 重新运行布局过程我不太确定,但我认为您必须调用包含hbox 布局的父元素。

    【讨论】:

    • 我知道这种方法。但我不知道如何使用。我在容器而不是父容器上使用此方法。再次感谢。 :)
    • 请帮我解决这个问题:) stackoverflow.com/q/15429321/1577396
    【解决方案2】:

    获取您的父容器(您在其上应用了布局 hbox 或 vbox),然后获取项目,最后更改 flex 并更新布局

    var ct = me.up('#parentComponent');
     ct.items.get('itemId1').flex = 2;
     ct.items.get('itemId2').flex = 2;
     ct.updateLayout();
    

    【讨论】:

      猜你喜欢
      • 2015-09-07
      • 1970-01-01
      • 2012-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-16
      相关资源
      最近更新 更多