zoukankan      html  css  js  c++  java
  • Ext TabPanel items高度宽度自适应

     

    写Ext的时候经常会遇到一些莫名其妙,令人感到非常神奇的问题,甚至都没办法用语言去描述它,搞的人想请教一下百度或Google都不知道该去怎么问,简直能够令人发疯。
    先来看张截图吧。

    Ext TabPanel

    有没有注意到里面的GridPanel很难看?因为它被它外面的那个Panel给“压迫”了,它伸展不开,呵呵。接着看看当前的JS代码。

    Ext.onReady(function(){
      vargrid=newExt.grid.GridPanel({
     
        columns:[
     
          {header:'商品编号'},
          {header:'商品名称'},
          {header:'商品单价'},
          {header:'订购数量'},
          {header:'合计'}
        ],
        store:newExt.data.JsonStore({}),
        bbar:newExt.PagingToolbar({})
      });
      varpanel=newExt.Panel({
     
        items:[{
     
          autoHeight:true,
          contentEl:'topPanel'
        },{
     
          xtype:'tabpanel',
          activeTab:0,
          items:[{
     
            title:'商品明细',
            items:grid
          },{
     
            title:'会员资料'
          },{
     
            title:'收货人信息'
          },{
     
            title:'寄件人信息'
          },{
     
            title:'发票信息'
          }]
        }]
      })
    })
    

      

    怎么改呢?如果我为GridPanel的高度宽度设置一个死值问题肯定是可以解决的,但是这样无法适应不同的分辨率及浏览器的大小。这是autoHeight为true没用,在它的bodyStyle中设置高度为100%也同样没用。GridPanel有一个viewConfig配置选项,如果它的父容器(商品明细)的layout为fit,那么可以通过设置viewConfig的forceFit为true使它占满父容器。
    GridPanel修改成这样:

    vargrid=newExt.grid.GridPanel({
     
       columns:[
     
         {header:'商品编号'},
         {header:'商品名称'},
         {header:'商品单价'},
         {header:'订购数量'},
         {header:'合计'}
       ],
       viewConfig:{
           forceFit:true
       },
       store:newExt.data.JsonStore({}),
       bbar:newExt.PagingToolbar({})
    });
    

      

    它所在的Panel修改成这样:

    {
      title:'商品明细',
      layout:'fit',
      items:grid
    }
    

      

     

    清空缓存,刷新一下,晕了,还是没变。%>_<%
    为什么还是不行呢?其实GridPanel已经占满它的父容器了,问题是它的父容器并没有占满其自身的父容器(就是TabPanel)。接着修改,设置panel的layout为border,令其顶部panel的region为north,而tabpanel的region则为center,这样就都填充满了。

    Ext TabPanel

    Ext TabPanel

    完整代码如下:

    暗夜之中,才见繁星;危机之下,暗藏转机;事在人为,为者常成。
  • 相关阅读:
    VirtualBox设置共享文件夹和镜像访问的方法
    虚拟机文件越来越大解决方案
    linux磁盘清理方法 Linux 下垃圾清理工具 BleachBit
    linux上怎么切换不同版本的arm-linux-gcc?只需改一行函数
    windows桌面添加右键环境
    各种机械键盘轴的差别,究竟什么轴好
    XML是什么,它能够做什么?——写给XML入门者
    MATLAB中导入数据:importdata函数
    理解ThreadLocal
    Leetcode:best_time_to_buy_and_sell_stock_II题解
  • 原文地址:https://www.cnblogs.com/zenghansen/p/3507397.html
Copyright © 2011-2022 走看看