`

Ext.Panel API翻译

阅读更多
Ext.Panel API翻译
引用网址:http://tianmoboping.blog.163.com/
activeItem : String/Number
用于设置当前活动的子组件,取值为此子组件的序号或者是id。但是它只能应用于那种一次只能显示一个子组件的布局类,例如:Ext.layout.Accordion, Ext.layout.CardLayout和Ext.layout.FitLayout。

allowDomMove;Boolean
是否可以在组件呈现的过程中移动组件的dom节点。默认值为true。

animCollapse : Boolean
设置是否在面板收缩时起用动画,如果Ext.Fx有效(被包含进来)则默认为true,否则为false。

applyTo:Mixed
x-panel对应的div的id。


autoDestroy : Boolean
如果要把一个子组件从panel中移除且此值为true,则在移除的过程中自动会销毁此组件,返之,则不会,必须要手工销毁,默认值为true。


autoHeight : Boolean
如果为true,把this.el.dom.style.height='auto'。默认值为false。

autoScroll : Boolean
为true时,则把this.body.dom.style.overflow='auto'。默认值为false。

autoShow : Boolean
为true时,检查组件是否被设成隐藏,如果有,则移除这个效果。

autoWidth : Boolean
同autoHeight一样。。

baseCls : String
this.baseCls的class(默认值为'x-panel')

bbar : Object/Array
面板底部的工具栏。它可是一个Ext.Toolbar对象,也可以是一个toolbar的config对象,或者是一个要加入到工具栏的按钮的config的数组。注意:这个属性在render后就无效了,如果要在render后使用它,请使用 getBottomToolbar获得引用。

bodyBorder : Boolean
如果为true则为this.el对应的元素显示边框,默认值为true。这只在border==true时才有效。如果border==true且bodyBorder==false,那么将显示1px的inset边框。给予this.el inset的效果。

bodyStyle : String/Object/Function
要应用到this.el上的css class。它的格式需求与Ext.Element.applyStyle一样,默认值为null。

border : Boolean
也是设this.body的边框的,默认值为true,此时,默认情况下边框为2px。当然,它还会被bodyBorder影响。

buttonAlign : String
加入到面板中的按钮的对齐方式,合法值为:'right','left','cente',默认值为'right'。

buttons : Array
Ext.Button的config数组,用于加入按钮到面板的footer中。

cls : String
this.el的class。

collapseFirst : Boolean
当显示title bar时,是否总把收缩、展开按钮放在所有其他按钮的前面。默认值为true。

collapsed : Boolean
在呈现时,是收缩还是展开。为true则收缩,默认值为false。


collapsedCls : String
当面板处于收缩状态时,this.el所对应的class,默认值为'x-panel-collapsed'。

collapsible : Boolean
此面板是否可收缩或者说是否能显示收缩、伸展按钮。真为显示。默认值为false。

contentEl : String
一个已存在的dom的id。作用是用于在afterRender后把它this.body.dom.appendChild掉。默认值为''。

ctCls : String
设this.container的class。

defaultType : String
当在构造函数中用items填加新成员时,如果没有设xType,那么就会以这个默认类型为xType加入组件。默认值为'panel'。


defaults : Object
加入此组件的所有子组件的默认config。如果这些加入的子组件设了config的话就以新设的为准。例如:{bodyStyle:'padding:15px'}。


disabledClass : String
当组件被设成disabled时的css,默认值为:"x-item-disabled"。

draggable : Boolean
是否能被拖动。默认值为false。当然也可以是一个Ext.Panel.DD config。Ext.Panel.DD是一个internal但非公开的类(我没有找到它的源代码),它的作用是移动一个proxy元素(Element)以代替本应跟随鼠标移动的panel.el。但是它在拖动过程中、放下时不提供任何其他动作,也就是说,如果你不作处理的话,鼠标一松,panel仍然在老地方。它是Ext.dd.DragSource的子类,所以,必须通过实现Ext.dd.DragDrop的方法来产生动作。示例代码如下:

new Ext.Panel({
    title: 'Drag me',
    x: 100,
    y: 100,
    renderTo: Ext.getBody(),
    floating: true,
    frame: true,
    width: 400,
    height: 200,
    draggable: {
//      Config option of Ext.Panel.DD class.
//      It's a floating Panel, so do not show a placeholder proxy in the original position.
        insertProxy: false,

//      Called for each mousemove event while dragging the DD object.
        onDrag : function(e){
//          Record the x,y position of the drag proxy so that we can
//          position the Panel at end of drag.
            var pel = this.proxy.getEl();
            this.x = pel.getLeft(true);
            this.y = pel.getTop(true);

//          Keep the Shadow aligned if there is one.
            var s = this.panel.getEl().shadow;
            if (s) {
                s.realign(this.x, this.y, pel.getWidth(), pel.getHeight());
            }
        },

//      Called on the mouseup event.
        endDrag : function(e){
            this.panel.setPosition(this.x, this.y);
        }
    }
}).show();



elements : String
一个panel有五个部分:header、tbar、body、bbar、footer。elements就是保存当前panel包含了几个部分,例如,一个panel有header、body,那么:element=='body,header',默认值为:'body'。


floating : Boolean
为true的话,它会使panel.el.style.position=absolute。并且,默认情况下带有shimming和shadow。为false则不改变原有显示方式。
注意:把floating设为true会导致panel以offsets大量负偏移的方式隐藏。这个诸 位试一下就晓得了。所以呢,如果设了floating=true。那么,你render后最好还要setPostion(x,y)一下。当然如果你让面板浮动,也要把width设成一个固定值,不然,它会向右扩展到viewport的边缘。


footer : Boolean
为true则明确地创建footer,为false就不创建,默认情况下,如果对footer没有什么特殊的,那么当一个或多个按钮被加到footer上面时,footer会被自动创建。


frame : Boolean
为true的话呢就就在panel外面加上自定义的圆角边框,为false的话就是1px宽的长方形边框。


header : Boolean
为true时header被创建,反之不被创建,默认情况下,当header不处于特殊情况时,如果title被设置,它会被自动创建,否则不会被创建,如是果title被设置,但是header为false,那么header也不会被创建。


headerAsText : Boolean
为真是在header中显示title,为假时隐藏它。默认值为true.


height : Number
panel的高度,默认为auto。


hideBorders : Boolean
为true时,隐藏panel的所有子组件的边框,为false则尊从子组件原有边框设置。

hideCollapseTool : Boolean
当collapsible=true且hideCollapseTool=true时,则隐藏控制收缩、伸展的那个按钮,为false时就显示它,默认值为false。


hideMode : String
隐藏模式,有三种: "visibility" (css visibility), "offsets" (negative offset position) and "display" (css display) - defaults to "display"。

hideParent : Boolean
用于设置是否隐藏组件的容器,即component.container。

html : String/Object
一个html碎片,或者是满足DomHelper语法的object,它用于设置panel的body部分的内容。默认值为''。

iconCls : String
用于设置header上的图标的class。例如:.my-icon { background: url(../images/my-icon.gif) 0 6px no-repeat !important;}


id : String
一个为component统一分配的id值。默认值为panel.el.id。

items : Mixed
单个成员或一个子组件的数组。每个成员都可以是任何从Ext.Component继承的object。

它的成员可以是component的引用,这样就会马上render,也可以是component的config。这时就会lazy render。当然,在config中,要注意加上xtype。这个东西不用讲了吧。

关于xtype的所有取值情况,请见Ext.Component.xtype的config说明。里面有讲到。关于它的值,其实很多例子上都有,如果传一个成员,则像:items:{……},传多个的话呢,就像:[{……},{……}]。

keys : Object/Array
一个keyMap config object。用于设置快捷键的。默认值为null。


layout : String
设置panel.container的布局。如果没有设置,那么默认为Ext.layout.ContainerLayout,合法的值有:absolute, accordion, anchor, border, card, column, fit, form和table。如果要设置布局的细节,则要用到layoutConfig了。


layoutConfig : Object
用于设置布局细节的,当layout有合法设置时它才有效果。如果要知道关于这个config的设置细节,请见各布局类:
Ext.layout.Absolute
Ext.layout.Accordion
Ext.layout.AnchorLayout
Ext.layout.BorderLayout
Ext.layout.CardLayout
Ext.layout.ColumnLayout
Ext.layout.FitLayout
Ext.layout.FormLayou
Ext.layout.TableLayout

listeners : Object
一个config对象用于包含一个或多个事件handler,它被addListener使用来注册事件。

maskDisabled : Boolean
是否在panel.disabled的时候显示mask。为true显示。反之不显示。
默认情况下,panel哪怕在disabled时,它的子元素也显示得很正常,用户根本不知道这个panel被禁用了,这给用户带来困扰,但是,有了mask,用户就能得到提示,哦,这个panel是不可用的,被禁用了。这给用户带来了新的体验。


minButtonWidth : Number
panel上所有按钮的最小宽度,单位是px。

monitorResize : Boolean
为true时,它自动监控window的resize事件,并且让viewport因此而变化。这个东西的经典应用就是为layout服务,而不用我们手工去调整某些组件的大小来适应窗口大小的变化。


overCls : String
当鼠标放到panel.el上面时的class。最爽的是,当鼠标out时,它会被自动删除,从而产生hover效果。


pageX : Number
组件相对于页面的x坐标

pageY : Number
组件相对于页面的y坐标

plugins : Object/Array
一个对象或对象数组,它为component提供自定义的功能。每个对象都是一个插件的引用,当然,前提是这个插件定义了init方法,在component初始化时,这个init方法将被调用。没用着。不说了。难翻译啊。

renderTo : Mixed
Ext.get(panel.renderTo)就是panel.container。用语言说不清楚,这样直接了当。

shadow : Boolean/String
为true就给panel显示一个阴影,为false不显示。当然,也可设置成为shadow的类型,详情见Ext.Shadow、Ext.Shadow.mode。注意,这个选项只有在floating = true时才发生作用。

shadowOffset : Number
阴影偏移,默认值为4,只有在floating = true时才发生作用。

shim : Boolean
是否为组件创建shim,什么是shim呢?存在这样的情况,用div做的菜单,但是,好死不死有个applet或flash盖在上面的话,那菜单就会被盖在下面。这件事情曾经一度让b/s人员郁闷,ext提供一个通用的解决方案,在要避免这个问题的组件的同一位置创建一个与它大小一样的iframe,且使得这个组件的z-index大于iframe。由于iframe不会被其他东西遮住,所以,z-index在iframe之上的东西也不会被遮,iframe相当于个垫子,把我们要用的东西垫高了,而shim英语里面也是薄垫片的意思。高呼extjs万岁。当然,iframe的src必须为''。

stateEvents : Array
事件数组,当这此事件触发时,组件状态被保存。

stateId : String
用于管理组件状态的id,默认值为组件的id.

stateful : Boolean
一个标志,它表示组件在创建时是否从某个地方加载组件状态。哪些属性能作为状态保存呢?只有internal属性可以。
为了让组件状态能保存,组件状态管理器提供者必须实现Ext.state.Provider,也就是要实重写它的set、get方法以保存/重读键/值对,一个内键的提供者是: Ext.state.CookieProvider。

为当前页面设置状态提供者的方法如下:
Ext.state.Manager.setProvider(new Ext.state.CookieProvider());

组件试图在stateEvents里面配置了事件时保存状态。你可以自己写点代码进行一处理,如在:beforestaterestore, staterestore, beforestatesave和statesave事件的处理代码中。

style : String
一个应用于panel.el上的样式,语法必须满足Ext.Element.applyStyles的接口。


tabTip : String
当panel是Ext.TabPanel中的一页时,为这个panel设tooltips的。不过,在render之前得先调用Ext.QuickTips.init()初始化一下。

tbar : Object/Array
panel顶部的工具栏,它可以是一个Ext.Toolbar,也可以是一个按钮数组或一个按钮的config。注意:在render之后,这个引用就没用了。如果要处理它请使用getTopToolbar。

title : String
显示在panel的header中的标题,当title被设置时,header就会被创建,除非header被设成false。如果你需要title,但不是在panel创建时,而是在之后的某个时刻,这时你需要为title设置一个非空值(如一个空格)或者是把header设为true。这样,panel在创建时才会创建header,不然,header将不会被创建。

titleCollapse : Boolean
当collapsible = true且titleCollapse=true时,用户点击panel标题栏的任意一处都会产生折叠/伸展效果,否则则只能通过单击那个按钮(上文有讲到)来产生这个效果了。


tools : Array
一个工具栏按钮数组,这个工具栏非同一般哦,不是tbar,也不是bbar,而是header上的标题栏,header上的标题栏是怎样的概念?你看到的panel的关闭按钮这个钮,超爽吧。每个工具栏元素以一个Element引用的方式向开发人员公开,通过
   tools.<tool-type>的方式引用。暴爽。
每个工具栏成员的config要包含下面属性:
id:string
  必需的,工具栏按钮的类型,可取值如下:

toggle (Created by default when collapsible is true)
close
minimize
maximize
restore
gear
pin
unpin
right
left
up
down
refresh
minus
plus
help
search
save
print

handler : Function
必需,当按钮被单击时被执行。它的参数说明如下:
  event:Ext.EventObject
  toolel:Ext.Element
  Panel : Ext.Panel宿主panel

scope : Object
qtip:String/Object
一个tips字符串或者是tips config,用于Ext.QuickTip.register.

hidden : Boolean
on : Object
自定义事件处理器的config,为addListener所用。


示例如下:
tools:[{
    id:'refresh',
    qtip: 'Refresh form Data',
    // hidden:true,
    handler: function(event, toolEl, panel){
        // refresh logic
    }
}]
  注意:除了toggle之外,其他工具栏成员都只是提供一个可视化的图标,没有任何功能,所以,如果你要加入它们,得自己写处理函数。


width : Number
component的宽度,单位用px,默认值为:auto。

x : Number
获得组件的x,相当于panel.el.style.left

xtype : String
这个东西不用说了,见Ext.Component的config里面的xtype。

y : Number
与x同理。

分享到:
评论

相关推荐

    ExtJS4+Accordion+SERVLET/STRUTS2+JSON+Ext.tree.Panel实例

    这个实例结合了多个技术,包括Accordion布局、Servlet、Struts2以及JSON数据交互,以及Ext.tree.Panel组件,以创建一个功能丰富的用户界面。 Accordion布局是ExtJS中的一个布局管理器,它允许在一个区域内组织多个...

    Ext.js教程和Ext.js API

    本教程和API文档聚焦于Ext.js 3.0版本,这是一个较早但仍然广泛应用的版本。 **Ext.js 3.0中文API**: API文档是开发任何库或框架时的必备参考资料。Ext.js 3.0的中文API提供了一个详细的类和方法参考,方便中文...

    一个简单的Ext.Window中插入图片的例子

    在开发过程中,Ext JS提供了丰富的API文档和社区资源,遇到问题时不要忘了查阅官方文档或在线论坛。同时,持续学习和掌握最新的前端技术和框架更新,对于保持竞争力至关重要。希望这个指南对你在使用`Ext.Window`...

    extJs 2.1学习笔记

    目录 1. ExtJs 结构树 2 ...25. extJs 2.0学习笔记(Ext.Element API总结) 69 26. extJs 2.0学习笔记(Element.js篇) 73 27. extJs 2.0学习笔记(DomHelper.js篇) 76 28. extJs 2.0学习笔记(ext.js篇) 77

    Ext2.x中文api 非常完美的中文api

    4. **类与对象**:在Ext2.x中,大部分功能都是通过类(Class)来实现的,如Ext.Panel、Ext.Window等。每个类都有其特定的方法和属性,开发者可以通过实例化这些类来创建对象。 5. **组件系统**:Ext2.x的核心是其...

    extjs grid.panel 项目 源码

    在源码中,我们应关注如何配置store的URL以连接后端API,以及如何定义fields来映射数据字段。 3. **Column模型**:Grid Panel的列定义在Column模型中,每个列可以包含字段名、标题、宽度、对齐方式、是否可排序等...

    Ext_2.2_API(chinese).rar_Ext 2.2 API_ext js 2_ext-2.2 api_ext2.2

    这个API文档的中文版,"Ext_2.2_API(chinese).rar_Ext 2.2 API_ext js 2_ext-2.2 api_ext2.2",是针对Ext JS 2.2框架的重要参考资料,对于开发者来说尤其有价值,特别是那些中文为母语的开发者,它使得理解框架的...

    Ext TreePanel Checked Ext复选框树

    6. **API调用**:`Ext JS`提供了API接口,如`getChecked()`和`setChecked()`,用于获取所有选中的节点或改变特定节点的选中状态。 7. **数据绑定**:复选框树的数据通常来源于后端服务,通过`Store`进行加载和同步...

    ext 3.2中文api目前最全

    3. **Grid Panel**:EXT的表格组件是其标志性特性之一,支持行选择、排序、分页、拖放等功能,可实现复杂的数据展示和操作。 4. **Form Handling**:EXT提供了强大的表单处理功能,包括各种表单字段、验证规则以及...

    editTreeGrid ext可编辑的treegridpanel

    TreeGrid在EXT JS中通常用作`Ext.tree.Panel`的变体,具有表格的列模型和排序功能。 3. **可编辑性** `editTreeGrid`的核心特性是其可编辑性,这意味着用户可以直接在TreeGrid的单元格中修改数据。EXT JS提供了`...

    ext 3.0中文API

    例如,`Ext.Panel`类是EXT中基础的容器组件,它有`setTitle`方法来设置面板标题,`setBodyStyle`方法来修改内容区域的样式,以及`show`和`hide`方法来控制显示和隐藏。此外,文档还会列出每个方法的参数、返回值和...

    Ext-window属性

    以下是对`Ext.Panel` API中与`Window`相关的属性的详细解释: 1. **activeItem**: 这个属性用于指定当前活动的子组件,可以是子组件的序号或ID。在支持一次仅显示一个子组件的布局中,如`Ext.layout.Accordion`、`...

    ext Panel+toolbar+button 实作带注释

    2. 阅读`panel.js`,理解Panel、Toolbar和Button的配置对象,以及如何通过EXT JS的API创建和管理这些组件。 3. 运行`exttest.html`,观察结果,调试代码以理解其运行逻辑。 4. 修改代码,尝试添加新的按钮或改变现有...

    Ext中文API

    在API中,你可以找到关于`Ext.Panel`的所有配置项和方法,如`title`(设置面板标题)和`dockedItems`(在面板边缘添加组件)。 接着,“英文API”是原版的ExtJS英文文档,对于深入理解某些高级概念和技术细节非常有...

    Ext下拉树、下拉表格

    如果在开发过程中遇到问题,可以查阅Ext的官方文档,那里有详尽的API参考和示例代码。同时,利用浏览器的开发者工具进行调试,可以帮助找出可能的错误并解决。 总结一下,本项目中的"Ext下拉树、下拉表格"涉及了Ext...

    EXT dojochina Ext方法重写.rar

    - **版本兼容性**:EXT.js的API可能会随着版本更新而变化,因此在重写时要考虑版本兼容性,以确保代码在升级EXT.js时仍能正常运行。 了解EXT.js中的方法重写对于开发高效且可维护的应用至关重要。通过合理使用这个...

    Ext.js(YuiGrid的学习)

    学习EXT.js的YuiGrid,首先需要熟悉EXT.js的基本组件和API,然后通过实例学习如何创建Grid,配置Store,设置列模型,以及处理各种交互事件。通过实践,你可以逐渐掌握这个强大的表格组件,为你的Web应用增添丰富的...

    Ext.3.0.中文文档

    3. **表格(Grid)**:深入理解Ext Grid Panel的使用,包括列定义、分页、排序、过滤和自定义编辑功能,以及如何处理大规模数据。 4. **表单(Form)**:掌握如何创建和使用各种表单元素,如文本字段、选择框、日期...

    Ext2 核心 API 中文详解 ExtJS2.0实用简明教程 ExtJS2.0教程 ExtJS2.0实用简明教程(easyjf) ext中文API+ sample

    2. **Ext.Panel**: 基础的容器组件,可以包含其他组件,支持多种布局模式。 3. **Ext.Grid**: 数据网格组件,用于展示和操作二维数据,支持排序、分页、行选择等功能。 4. **Ext.Form**: 表单组件,包含各种表单元素...

    ext的表格行编辑(roweditor)实现(c#)

    这个接口通常基于ASP.NET MVC或者Web API,负责处理数据的获取和更新操作。 1. **配置GridPanel** - `store`属性:设置数据存储,通常是Ext.data.Store对象,用于加载和保存数据。 - `columns`属性:定义表格列的...

Global site tag (gtag.js) - Google Analytics