最简单的layout:AnchorLayout
AnchorLayout是最简单的布局管理其,它只是将元素按照配置的属性在元素容器中进行定位。
让我们看一下它的render方法以理解如果进行布局:
onLayout : function(ct, target){
Ext.layout.AnchorLayout.superclass.onLayout.call(this, ct,
target);
//获取元素的尺寸
var size = this.getAnchorViewSize(ct, target);
var w = size.width, h = size.height;
if(w < 20 || h < 20){
return;
}
// 获取容器的尺寸
var aw, ah;
if(ct.anchorSize){
if(typeof ct.anchorSize == 'number'){
aw = ct.anchorSize;
}else{
aw = ct.anchorSize.width;
ah = ct.anchorSize.height;
}
}else{
//根据配置获取容器尺寸
aw = ct.initialConfig.width;
ah = ct.initialConfig.height;
}
//遍历元素,并调用元素的setSize方法,继承自boxComponent的setSize方法则触发resize事件从而触发layout方法。
var cs = ct.items.items, len = cs.length, i, c, a, cw, ch;
for(i = 0; i < len; i++){
c = cs;
if(c.anchor){
a = c.anchorSpec;
if(!a){ // cache all anchor values
var vs = c.anchor.split(' ');
c.anchorSpec = a = {
right:
this.parseAnchor(vs[0], c.initialConfig.width, aw),
bottom:
this.parseAnchor(vs[1], c.initialConfig.height, ah)
};
}
cw = a.right ?
this.adjustWidthAnchor(a.right(w), c) : undefined;
ch = a.bottom ?
this.adjustHeightAnchor(a.bottom(h), c) : undefined;
if(cw || ch){
c.setSize(cw || undefined, ch ||
undefined);
}
}
}
},
分享到:
相关推荐
安装扩大pecl install xlswriterIDE 助手composer require viest/php-ext-xlswriter-ide-helper:dev-master文档
ext-2.0ext-2.0ext-2.0ext-2.0ext-2.0ext-2.0ext-2.0ext-2.0ext-2.0ext-2.0ext-2.0ext-2.0ext-2.0ext-2.0ext-2.0ext-2.0ext-2.0ext-2.0ext-2.0ext-2.0ext-2.0ext-2.0ext-2.0ext-2.0
Ext入门-详细教程Ext入门-详细教程Ext入门-详细教程Ext入门-详细教程Ext入门-详细教程Ext入门-详细教程Ext入门-详细教程Ext入门-详细教程Ext入门-详细教程Ext入门-详细教程Ext入门-详细教程Ext入门-详细教程Ext入门-...
m3u8转mp4工具包 下载后执行命令: ...2、main方法接收三个参数...#EXT-X-VERSION:3 #EXT-X-MEDIA-SEQUENCE:0 #EXT-X-ALLOW-CACHE:YES #EXT-X-TARGETDURATION:11 #EXTINF:10.043378, 0000.ts ...... 4、懂得都懂,亲测有效
java运行依赖jar包
flarum-ext-chinese-search Flarum 论坛中文搜索插件 - 基于 xunsearch 搜索引擎开发 如何安装 安装 xunsearch 服务端 参照 注意安装 xunsearch 需要以下依赖库 gawk make gcc g++ zlib1g-dev 安装插件 composer ...
jcifs-ext-0.9.4.jar/jcifs-1.3.3.jar 单点登陆 解决maven仓库有jar包但是maven程序无法下载仓库jar包
ext3.0版本 刚刚开始学习,先下载下来再说
bandwidth splitter 破解版
android经常要用到解析img,将img解析成一系列文件分析问题
spketdwcs-ext-2.1.mxpspketdwcs-ext-2.1.mxpspketdwcs-ext-2.1.mxpspketdwcs-ext-2.1.mxpspketdwcs-ext-2.1.mxpspketdwcs-ext-2.1.mxpspketdwcs-ext-2.1.mxpspketdwcs-ext-2.1.mxpspketdwcs-ext-2.1.mxpspketdwcs-...
此代码仅供学习交流用,是在前人的代码上改的.算是学python的一些成果 可以下载M3U8文件,只需要贴M3U8的根文件就可以了,...#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=600000,RESOLUTION=720x406 600kb/hls/index.m3u8
OpenWrt-Lede_18.06.02 OrangePi Zero wifi-xr819 and soc-audio enabled! OrangePi Zero 安装OpenWrt 能够实现wifi和播放音乐。 详细安装和操作步骤: First Run boot-config: ...Click Create a backup of uboot (dtb...
webext-storage-cache WebExtensions模块:具有到期时间的类似地图的承诺缓存存储。 Chrome和Firefox。 该模块适用于内容脚本,背景页面和选项页面。 安装 您可以下载并将其包含在manifest.json 。 或使用npm : ...
WebExtension Vite Starter 驱动的 WebExtension( 、 等)入门模板。 特征 :high_voltage: 即时 HMR - 在开发者上使用Vite (不再刷新!) :kiwi_fruit: Vue 3 - Composition API... webext-bridge - 上下文之间的
ext2-linux-file-system:EXT2文件系统仿真器
解压即可得到jcifs-ext-0.9.4.jar, java环境资源,jdk1.6及以上
bugsnag-ext Bugsnag的有用扩展。 安装 将此行添加到应用程序的Gemfile中: gem 'bugsnag-ext' 然后执行: $ bundle 或将其自己安装为: $ gem install bugsnag-ext 用法 Bugsnag::Ext::ResqueRetry class ...
ExtCore Framework 6.0.0示例最简单的Web应用程序介绍是一个免费的开源跨平台框架,用于基于ASP.NET Core创建模块化和可扩展的Web应用程序。 它使用最佳和最现代的工具和语言(Visual Studio 2019,C#等)构建。 ...
$ npm install --save-dev web-ext-plugin # Or for yarn $ yarn install -D web-ext-plugin webpack.config.js const WebExtPlugin = require ( 'web-ext-plugin' ) ; module . exports = { plugins : [ new ...