extjs学习04——extjs的初级UI设计1
来源:互联网 发布:登录注册页面模板源码 编辑:程序博客网 时间:2024/06/09 17:09
extjs学习04——extjs的初级UI设计1学习自dojo china陈治文老师的extjs视频教程本篇日志是对视频章节的小结一、Ext.Button说明:改组件代替了传统submit,reset,button等html控件。构造参数:-text:按钮上的名称属性:-text:获得当前按钮上的名称 -minWidth:按钮的最小宽度方法:-setText:设置按钮上的名称事件:-click:当点击按钮时触发Ext.onReady(function(){var _button = new Ext.Button({renderTo:Ext.getBody(),//此处采用document.body也等同;renderTo始终渲染在页面的bodytext:"确定", handler:function(){【只能代替click事件】 alert(“hello”); }});alert(_button.text); _button.setText(“取消”); 【_button.text=“取消” 是无效的,因为text属性是read only的】 listeners:{【推荐使用】 “click”:function(){ alert(“world”); } } _button.on(“click”,function(){【extjs的传统写法,写法灵活】 alert(“extjs”); }); });引申属性:-renderTo:将当前对象所生成的html对象存放进指定的对象中【在里面】//-applyTo:将当前对象放在构建的对象上【在上面】构造参数:-handler:指定一个函数句柄,在默认事件触发时调用,此时的默认事件为click 【当点击按钮时触发的函数(可以用于代替click事件). 】-listeners:在对象初始化之前,将一系列事件进行定义的手段,在进行组件化编程时特别有用。【一个配置对象,包含一个或多个事件处理函数,在对象初始化时添加到对象。 它应该是addListener指定的一个有效的监听器配置对象, 一次添加多个事件处理函数。 】二、Ext.form.TextField说明:该组件代替了传统的text组件属性:-fieldLabel:文本框的标签名称方法:-getValue():得到当前文本框的值Ext.onReady(function(){var _panel = new Ext.Panel({renderTo:Ext.getBody(),layout:"form",【指定一个form布局】labelWidth:30,listeners:{"render":function(_panel){【在对象被添加进指定容器元素后触发】_panel.add(new Ext.form.TextField({id:"txt_name",fieldLabel:"姓名"}));}}【add方法如果放在此处会出错,因为add方法一定要在_panel对象完全构建完成后才能执行 ,而Ext却不是逐行执行的,所以要放在render事件里面,是运行时方法】});new Ext.Button({text:"确定",renderTo:Ext.getBody(),handler:function(){alert(Ext.getCmp("txt_name").getValue());}});});引申:Ext.layout.FormLayout:只有在此布局下才能正确显示文本框的标签名,布局的宿主 对象必须是Ext.Container或者是Ext.Container的子类在应用FormLayout布局时只要在宿主对象的构造参数中指定layout:”form”即可。Ext.getCmp(String _id):得到id为**的组件对象三、Ext.Panel说明:从某种意义来讲,彻底改变了网页界面是通过html table进行布局的历史属性:-title:面板的标签名-width:指定面板的宽度-height:指定面板的高度-frame:为true时把四个角变成圆角方法:-addButton(String/Object _config,Function _handler,Object _scope):添加一个按钮对象到面板中-add(Ext.Component/Object _component):添加一个组件到面板中事件:-render:当前对象被正确构造后触发Ext.onReady(function(){var _panel = new Ext.Panel({title:"...",frame:true,width:200,height:300, layout:"form",listeners:{"render":function(_panel){_panel.add({xtype:"textfield",fieldLabel:"name"});【xtype机制】_panel.add(new Ext.form.TextField({fieldLabel:"address"}));}}});_panel.addButton({text:"..."});【这种方式的按钮是由form创建的】_panel.addButton(new Ext.Button({text:"...",minWidth:100})); 【这种方式是由我们添加好了再放进去的】 【此处的addButton是设计时方法,需要在当前对象未构建前运行】_panel.render(Ext.getBody()); 【在render方法之后执行addButton方法是无效的】 _panel.applyToMarkup(Ext.DomHelper.append(Ext.getBody(),{tag:"div",cls:"contain",cn:[{tag:"div",cls:"center"}]},true).child("div") );});引申:属性:-xtype:在Extjs的可视化组件部署中有一种xtype机制,即通过指定xtype的值,来告诉容器组件如何初始化包含组件,如xtype:”textfield”,表示使用Ext.form.TextField来进行初始化。四、通过构造参数方式进行组构-items:指定包含在面板中的组件的配置数组-buttons:指定包含在面板中的按钮的配置数组Ext.onReady(function(){var _panel = new Ext.Panel({title:"...",frame:true,width:200,height:300layout:"form",labelWidth:45,defaults:[xtype:"textfield",width:180],items:[{fieldLabel:"name"},{fieldLabel:"address"}],buttons:[{text:".1.."},{text:".2.."}]});_panel.applyToMarkup(Ext.DomHelper.append(Ext.getBody(),{tag:"div",cls:"contain",cn:[{tag:"div",cls:"center"}]},true).child("div"));});
0 0
- extjs学习04——extjs的初级UI设计1
- extjs学习05——extjs的初级UI设计2
- extjs学习06——extjs的初级UI设计3(Window实例)
- extjs学习07——extjs的初级UI设计4(Window实例改进)
- EXTJS初级UI设计进阶阶段
- EXTJS初级UI设计进阶教程(2)
- EXTJS初级UI设计进阶教程(3)
- EXTJS初级UI设计进阶教程(2)
- EXTJS初级UI设计进阶教程(3)
- ExtJs基础UI设计进阶教程(1)
- extjs学习03——extjs的面向对象程序设计
- extjs学习08——extjs的ajax初步简介
- 1、Extjs——ExtJs简介
- [第3讲]ExtJs基础UI设计进阶教程(1)
- Extjs——初步学习
- Extjs学习——绘图
- ExtJS初级培训1--实例--调试环境的搭建
- extjs学习01——开篇:extjs资料集锦
- 矩阵快速幂
- OC中的关键字以及一些基础概念
- Tomcat发布项目时,浏览器地址栏图标的问题
- 路由端口映射的作用
- 暴力求解法之简单枚举--除法
- extjs学习04——extjs的初级UI设计1
- 限制访问SQL Server的客户端IP地址
- hdu 4737 A Bit Fun
- 互斥锁和读写锁
- 大鵬古城遊
- Android监听键盘开启关闭的方法
- 特殊的线性表-串-顺序存储
- LeetCode-3Sum
- C语言面试题(嵌入式开发方向,附答案及点评)