1、Extjs 布局非常是灵活。可是吐槽下CSS,太难重写,想自己重构一套都难哎...

  1. var viewport = new Ext.Viewport({
  2. layout:'border',
  3. items:[
  4.  
  5. {
  6. //中间部分
  7. region:'center',
  8. id: 'centerPanel',
  9. iconCls:'',
  10. title:'${centerTitle}',
  11. autoScroll:false,
  12. header:false,
  13. layout: 'fit',
  14. items:[mainTabs]},
  15. {
  16. //布局左边west部分
  17. region : 'west',
  18. width:220,
  19. collapsible: true,
  20. split:true,
  21. header:false,
  22. border:false,
  23. frame:false,
  24. xtype:'panel',
  25. layout:'anchor',
  26. collapseMode:'mini',
  27. layoutConfig:{columns:1},
  28. items:[{
  29. split:true,
  30. region:'west',
  31. header:false,
  32. autoScroll:false,
  33. border:false,
  34. anchor:'100% 10%',
  35. xtype: 'panel',
  36. html:'<table border="0" cellpadding="0" cellspacing="0" width="100%" height="60" background="./resource/image/banner_background/${theme}.png"> <tr > <td style="padding-left:15px;padding-top:10px"><img class="IEPNG" src="${banner}" /> </td> </tr></table>',
  37. collapsible: true
  38. },{region:'west',
  39. width: 220,
  40. anchor:'100% 84%',
  41. collapsible: true,
  42. minSize: 200,
  43. border:false,
  44. maxSize: 350,
  45. split: true,
  46. collapseMode:'mini',
  47. iconCls:'book_previousIcon',
  48. title: '${westTitle}',
  49. layout:'accordion',
  50. layoutConfig:{
  51. animate:true,
  52. activeOnTop : ${activeOnTop}
  53. },
  54. items: [
  55. #foreach($card in $cardList)
  56. {
  57. autoScroll:true,
  58. border:false,
  59. contentEl: 'div.card.${card.menuid}',
  60. #if(${card.iconcls}&&${card.iconcls}!="")
  61. iconCls:'${card.iconcls}',
  62. #end
  63. title:'${card.menuname}'
  64. }
  65. #if(${card.isNotLast})
  66. ,
  67. #end
  68. #end
  69. ]
  70. },{
  71. split:true,
  72. region:'west',
  73. collapsible: true,
  74. header:false,
  75. autoScroll:false,
  76. //border:false,
  77. anchor:'100% 6%',
  78. region:'center',
  79. layout: {
  80. type:'hbox',
  81. padding:'3 3 3 3',
  82. pack:'start',
  83. align:'top'
  84. },
  85. defaults:{margins:'0 5 0 0'},
  86. xtype: 'panel',
  87. items:[configButton,closeButton]
  88. }]
  89. }
  90. ]});

说明

1.Viewport一个panel 来固定region:'center', 也就是center部分

2.再使用一个panel,使用layout:'anchor',布局方式,anchor布局将使组件固定于父容器的某一个位置,使用anchor布局的子组件尺寸相对于容器的尺寸,即父容器容器的大小发生变化时,使用anchor布局的组件会依据规定的规则又一次渲染位置和大小。

3.新增第二部的panel。加入3个子panel布局。而且配置它们的anchor。来填充父容器,保证改变3个中得一个,其它2个能自己主动填充空间,进行自己主动适应。

4.这里提示一点:因为是使用4个panel 组装成的区域,能够使用collapseMode:'mini',来控制关闭右側的面板。

实现效果:

【技能】Ext.Viewport 实现左三右一排列方式。的更多相关文章

  1. 没做过编译器就是被人欺——从一道变态的i++题猜编译器的行为(表达式从左往右扫描,同一变量相互影响)

    首先不要被人蒙了,如果是这样,根本编译不过: int i=1; int b=i+++++i; printf("%d %d\n", b ,i); Mingw报错:error: lva ...

  2. Oracle左连接,右连接

    Oracle左连接,右连接 数据表的连接有: 1.内连接(自然连接): 只有两个表相匹配的行才能在结果集中出现 2.外连接: 包括 (1)左外连接(左边的表不加限制) (2)右外连接(右边的表不加限制 ...

  3. js实现Mac触摸板双指事件(上、下、左、右、放大、缩小)

    前言 这几天在修复一个web问题时,需要捕获Mac触摸板双指事件(上.下.左.右.放大.缩小),但发现并没有现成的轮子,还是要自己造. 例如:jquery.mousewheel.js(添加跨浏览器的鼠 ...

  4. php的函数参数按照从左到右来赋值

    PHP 中自定义函数参数赋默认值 2012-07-07 13:23:00|  分类: php自定义函数,默|举报|字号 订阅     下载LOFTER我的照片书  |     php自定义函数接受参数 ...

  5. 《剑指Offer》第1题(Java实现):在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。

    一.题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该 ...

  6. SQL-内连接、外连接(左、右)、交叉连接

    本文测试基于以下两个表,student(左) \ teacher(右),使用数据库MariaDB,图形化界面HeidiSQL. 连接查询的概念:根据两个表或多个表的列之间的关系,从这些表中查询数据,即 ...

  7. 论气机之"左升右降"

      生命现象源于气机的出入升降运动. “出入废则神机化灭,升降息则气立孤危.故非出入,则无以生长壮老已:非升降,则无以生长化收藏”(<素问·六微旨大论>),升降是气机主要的运动形式之一,是 ...

  8. sencha touch TabPanel 加入导航按钮(向左向右按钮) 以及Carousel插件(2014-11-7)

    Carousel插件代码: /* * TabPanel的Carousel功能插件 * 取至 * https://github.com/VinylFox/Ext.ux.touch.SwipeTabs * ...

  9. 视图Ext.Viewport和窗口Ext.Window用法

    Viewport不需要再指定renderTo,而我们也看到Viewport确实填充了整个浏览器显示区域,并会随着浏览器显示区域大小的改变而改改.他有三个特点: 1).创建即可使用.不需要渲染,当组件在 ...

随机推荐

  1. Xshell查看日志的基础使用

    2018\11\26 下载安装不多说,官网免费版即可,附上链接:https://www.netsarang.com/products/xsh_overview.html 打开后新建连接,输入主机ip即 ...

  2. HDU 4309 Seikimatsu Occult Tonneru

    Seikimatsu Occult Tonneru Time Limit: 6000ms Memory Limit: 32768KB This problem will be judged on HD ...

  3. 二 HTable 源码导读

    户端调优的方法里面无非就这么几种:1)关闭autoFlush2)关闭WAL日志3)把writeBufferSize设大一点,一般说是设置成5MB        经过实践,就第二条关闭日志的效果比较明显 ...

  4. Spring-statemachine Action不能并发执行的问题

    Spring-statemachine版本:当前最新的1.2.3.RELEASE版本 这几天一直被Action是串行执行搞得很郁闷,写了一个demo专门用来测试: public static void ...

  5. ArcSDE学习笔记------了解ArcSDE

    刚来公司的时候一直在做地图服务,用的是ArcGIS,然后对地图的操作用的是普通的数据库操作.后来带我的一个同事让我学习一下ArcSDE.那么ArcSDE到底是什么呢?明明所有的操作我用普通数据库也实现 ...

  6. 理解Linq查询

    using System; using System.Linq; static class Program { static double Square(double n) { Console.Wri ...

  7. BZOJ 3196 线段树套平衡树

    (代码无比丑陋) //By SiriusRen #include <cstdio> #include <algorithm> using namespace std; int ...

  8. window下搭建Vue.Js开发环境

    一.安装node.js.https://nodejs.org/en/download/ 最新包会自动安装npm 二.安装完node之后,npm包含的很多依赖包是部署在国外的,在天朝,大家都知道下载速度 ...

  9. 微软加速Visual Studio和Azure DevOps 云升级

    在 2018 微软技术暨生态大会(Microsoft Tech Summit)上,微软宣布围绕 Visual Studio 和 Visual Studio Code 开发平台提供一系列新功能与服务,并 ...

  10. mysql 5.7 双主+主从配置

    mysql5.7安装及赋权 wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm rpm -ivh mysql57 ...