viewport

  • viewport表示整个页面的显示视口,他把页面渲染到浏览器的body中,他的大小等于浏览器body的大小,如果整个页面需要占据整个浏览器body(全屏显示),可以使用该控件作为顶层控件。
  • 大部分需要在浏览器中显示的模块通常都会使用viewport作为顶层控件,然后在其下添加其他界面控件。
  • 在模块文件中,非容器控件只有被添加到viewport或者容器(如panel控件)才会被显示,比如文本框控件text只有被添加到viewport或者panel才会被显示,佛祖额如果模块不在单独的窗口中运行text不会被直接显示。

面板panel

面板panel是常用的容器控件,它具有标题栏,顶部底部左侧右侧工具条栏,底部按纽栏以及伸缩等特性。继承自panel的控件包括容器form,window,tab等,非容器grid,tree等,这些控件都具有panel的基本特性。

工具条和菜单

工具条和菜单是常用的界面交互控件,通过点击工具条按钮或菜单项来选择功能项并触发相应的操作。工具条通常位于界面的顶部,菜单可以嵌入到工具条或者作为右键弹出式菜单。

工具条菜单项item的使用

item控件可以作为工具条按钮,菜单,标签和菜单分割线等使用,添加到工具条即可作为工具条按钮。
设置item的text属性为’-’,可以把item作为分割线,
设置为“->”可以作为填充条;
设置为item的xtype属性为tbtext,可以作为标签使用,也可以添加label作为标签控件,
在工具条中添加标签建议使用前者。在item下添加子item控件,可以自动生成菜单项,以此类推可以生成递归的子菜单项。在工具条下添加text控件可以把文本框嵌入到工具条。

工具条toolbar的使用

工具条是容器控件,在工具条下可以添加任意的控件,包括item,text,combo等。
工具条经典的用法有两种:

嵌入到容器控件tbar中

  1. 在模块根节点下添加viewport,并设置vireport的layout属性为fit
  2. 在viewport下添加panel控件
  3. 在panel下添加toolbar,并把toolbar的itemId属性设置为tbar,isConfig设置为true
  4. 在toolbar中添加item控件,并且设置text属性为button

isConfig

指定该控件是否作为父控件的配置项,true作为父控件的配置项,false作为父控件的子控件。

窗口window

窗口window控件时浮动的弹出式容器控件,常用作对话框界面。window控件一般添加到模块的根节点下,这样窗口可以在全屏自由显示和拖动,如果window控件添加到viewport控件内。则窗口的显示仅限制在本模块视图内

可编辑控件:文本框Text

text控件可以编辑任意的单行字符串,他的值类型是文本型。

  • fieldLabel:控件带的标签,运行期间读使用getFieldLabel方法,写使用setFieldLabel方法

界面布局方式

界面布局是指容器对直属子控件的位置采取的排列方式,常见的布局方式有-

  • absolute
  • accordion
  • anchor
  • auto
  • border
  • card
  • center
  • column
  • fit
  • form
  • hbox
  • table
  • vbox
    布局通常针对容器控件而言,容器控件是指可以包含子控件的控件,常见的容器控件包括
  • viewport
  • panel
  • window
  • form
  • tab
  • fieldset
  • container
    器中viewport作为顶层控件来使用,以全屏显示界面。
    容器控件通常具有layout属性,通过该属性来指定采用的布局方式。

absolute:绝对位置布局

容器内的子控件通过指定x和y属性来定位其相对于容器的坐标位置。该布局可以通过IEDE“布局设计器”来设计,可以可视化地设置子控件的位置和大小。

accordion:折叠布局

通过折叠子控件来设置布局,该布局每次仅展开一个子控件,对其他控件折叠。该布局添加的子控件通常为容器,比如panel.设置子控件的title属性为子项标题,iconCls为子项图标。

layoutType:

layoutType是预定义的布局方式类型,可以快速配置容器的布局。以下为有效类型:anchorForm:设置layout为anchor布局。使所有子控件垂直排列,并且锚定子控件相对于容器的位置。容器和子控件之间设置合适的间距,子控件标签默认右对齐。
我写这个主要使因为我看都没有用layout这个属性的基本都是用的layoutType
之后每一种布局如果存在对应的这layoutType我都会开子标题写下来

fit:适配布局

把首个子控件布满整个容器控件。使用该布局的容器只能包含单个控件,如果包含多个控件只有首个控件被展示。

效果如下:确实只有一个子控件可以显示

layoutType

fit好像没有预加载内容

anchor: 锚定布局

子控件锚定相对于容器控件的位置和大小。如果容器大小变动,所有锚定的子控件会根据锚定规则自动设置位置和大小。

layoutType: anchorForm

anchorForm,设置layout为anchor布局。使所有子控件垂直排列,并锚定子控件相对于容器的位置。容器和子控件之间设置合适的间距,子控件默认右对齐。

vbox:垂直盒子布局

在容器内对所有子控件按垂直方向进行排列。设置子控件的flex属性可以按照比例指定高度。
vertical是垂直

layoutType: vboxForm

vboxForm:设置layout为vbox布局。使所有子控件垂直排列。容器和子控件之间设置合适的间距,子控件标签默认右对齐

layoutType: vboxLeft

vboxLeft: 设置layout为vbox布局,并且设置布局的对齐方式为left

layoutType: vboxCentor

vboxCentor:设置layout为vbox布局。并设置布局的对齐方式为centor

layoutType: vboxPackCentor

设置layout为vbox布局。并且设置布局的对齐方式为centor,pack为centor

table:表格布局

按表格的方式对所有子控件进行布局。容器layout属性设置为“@{type:‘table’, columns:3}”表示表格占3列。设置子控件rowspan和colspan属性可以指定跨几行几列。

可以看出控件4使垮了两列的。
其他layoutType还有tableColumn1,2,3,4,5,6就使跨几列的问题不在详细写了

card:卡片布局

把所有子控件作为卡片,每次仅显示一张卡片,其他卡片都隐藏。该类布局很适合作为向导界面,或应用于需要动态切换界面的场景。该布局添加的子控件通常作为容器控件,比如container或者panel;

tagConfigs

是panel的一个属性对象或任意的脚本添加到该控件的配置项中。如设置为{foo:‘bar’}将为该控件增加配置项foo,其值为bar.
这里定义了一个函数:

{viewCard: function(card){var me = this;me.getLayout().setActiveItem(card);}
}

这里card也没有typeLayout

cilckEvent

为每一个item设置一个cilck事件,使得点击该item可以跳转到对应的panel面板

app.cardLayout.viewCard('panel1');//viewCard()方法在cardLayout的tagConfigs里面定义

具体截图:

效果截图:

其他布局实在再多了,等我有空在慢慢补齐。

004-webbuilder所有布局相关推荐

  1. 整理的最新的前端面试题必问集锦 (持续更新)

    前端面试必问 一.HTML+CSS 1.HTML 001.标签上title属性与alt属性的区别是什么? title: 仔显示图片的时候,鼠标以上可以显示一些信息,一般为建议.提示类型 alt : 当 ...

  2. .NET Core 用 Blazor 做 jmeter 系列视频

    本文来安利大家宇辰大大的 .NET Core 用 Blazor 做 jmeter 系列视频 .Net Core 用Blazor做 jmeter 001之 Ribbon 布局 - Element Bla ...

  3. 004 Android之其他控件

    文章目录 ListView ListView常用属性 ListView基本使用 ListView动态插入数据 ListView实现图文混排 Adapter Adapter(适配器种类) 自定义Adap ...

  4. CSS布局及实例仿LOL主页

    浮动概述 如果将元素设置为浮动之后那么它将具备以下几个特点:1.浮动元素会被排除在文档流之外,(脱离文档流)元素是不占有之前的页面空间,其他元素会上前补位2.浮动元素会停靠在父元素的左边或右边,或者停 ...

  5. EXT.NET复杂布局(一)——工作台

    前面已经提到过EXT.NET了.EXT.NET是一组基于ExtJS库开发的开源的ASP.NET组件. 使用Ext.NET开发,比直接写JS更利于维护,也更方便开发.由于官方没有文档(只有DEMO),很 ...

  6. DIV布局——人电影网站(5页) HTML+CSS+JavaScript 学生DW网页设计作业成品 w

    HTML5期末大作业:网页制作代码 网站设计--人电影网站(5页) HTML+CSS+JavaScript 学生DW网页设计作业成品 web课程设计网页规划与设计 计算机毕设网页设计源码 常见网页设计 ...

  7. HTML如何改变表格浮动位置,css控制表格 样式 css布局 浮动及定位

    一.制作一张商品信息表,内容自定,要求用到行与列的合并 实例 html> 饮料商品信息表 table caption { font-family:"宋体"; font-siz ...

  8. Web应用快速开发平台 WebBuilder 8.6 企业版发布

    WebBuilder是一款强大的企业级Web应用快速开发平台,使用WebBuilder可以快速开发出强大而高效的跨平台的常规应用和移动应用系统. WebBuilder官网:http://www.gee ...

  9. 005-WebBuilder使用结构元素进行网页布局

    这个太零散了直接在代码上写的注释,第一份前端代码 <!DOCTYPE html> <html> <!--文档基本结构--><head><!--设置 ...

  10. 弹性布局最后一行的元素的对齐方式设置

    随着技术的不断更新换代,网页布局也增加了弹性布局方式,不得不说弹性布局是真的很好用,但好用的同时也给我们带来一些不便之处.比如在布局列表内容时经常会用到子项目的两端对齐,但最后一行不需要两端对齐 我们 ...

最新文章

  1. 丢失msvcr120d.dll、msvcr120.dll、msvcp120d.dll、msvcp120.dll问题解决方法
  2. Cookie简单使用方法
  3. 联想研发支出从未超过2% 被指还不如政府补贴多
  4. android TextView 的垂直滚动
  5. python3操作MySQL:查询
  6. python 字典取值的时间复杂度_五道常见的Python面试题一定不要答错!
  7. oracle 日期 加一秒,Leap Second (闰秒) 在ORACLE环境的影响
  8. go bson转换成json_如何快速提升 Go 程序性能?
  9. 美图秀秀美化图片之【增强】模块界面与功能设计
  10. svg.draw.js draw rectangle 画矩形
  11. Win10系统如何在Word中添加新字体
  12. 道一MD5校验工具发布
  13. excel部分网格线不见了_每天都要用到的excel技巧!建议大家收藏!
  14. 25匹赛马,没有秒表,五条跑道。用最少的比赛场次找出三匹跑得最快的马。过程分析
  15. 做人十条原则 做到了就离成功不远了
  16. 你知道吗?什么是 Responsive JavaScript ?
  17. 国内CMS内容管理系统
  18. 7-40 奥运排行榜
  19. RAID5磁盘阵列搭建——新手上路
  20. JAVAScript做的网页象棋

热门文章

  1. 【记录一下瑞典程序员6点半】
  2. splint简要手册
  3. Normal Matrix推导 (法向量变换矩阵)
  4. Day3 确知信号的类型、频域性质和时域性质
  5. C++、基于Qt和Qwt实现交互式曲线图
  6. 解决“This Application cannot run under a Virtual Machine”2023
  7. 以太网供电(POE)技术原理及过程分析 - 全文
  8. 模板——函数模板与类模板
  9. 西门子s7 200smart与英威腾GD系列变频器通讯程序 原创可直接用于生产的程序
  10. kubernetes(五)------taint(排斥)和toleration(亲和)