EXT经验--在调试中通过查看handler的第一个参数的xtype得知该参数信息及该handler的归属...

EXT模拟了OPP的思想,因此很多问题可以像JAVA语音那样去思考它。在实际阅读EXT时,常常需要我们搞清楚某个函数、某个对象的归属。如某个参数变量、方法属于哪个类,如下:

这是我今天在群中发出的问题,不过没人回答,然后在调试状态中,我自己试出了一个方法,终于搞清楚这个很长时间困扰我的问题了。如下:

handler函数的实参g调用getXType方法获取到它的xtype。

实际上,在EXT的API中,我们所熟悉的formPanel、gridPanel均有这个方法:(相信所有EXT的CommponentMgr均含有此方法。)

找到了g的所属类,handler函数中的stopEditing、startEditing方法也就找到了。--在EditorGridPanel中

 

小结:由于在EXT的handler中一般第一个参数为当前的handler的所属对象,所以通过调用第一个参数的getXType方法不仅可查询该参数的信息,而且可得知当前handler的归属类。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您可以通过 `actioncolumn` 类型的列来向表格添加按钮。这个列类型可以在每一行添加一个或多个按钮,每个按钮可以触发不同的操作。您可以为每个按钮设置一个处理函数或者使用 `handler` 属性来为所有按钮设置一个共同的处理函数。 下面是一个使用 `actioncolumn` 列类型向表格添加按钮的例子: ```javascript Ext.require(['Ext.grid.*']); Ext.onReady(function() { // 创建一个简单的数据存储 var store = Ext.create('Ext.data.Store', { fields: ['name', 'email', 'phone'], data: [ { 'name': 'Lisa', "email":"lisa@simpsons.com", "phone":"555-111-1224" }, { 'name': 'Bart', "email":"bart@simpsons.com", "phone":"555-222-1234" }, { 'name': 'Homer', "email":"homer@simpsons.com", "phone":"555-222-1244" }, { 'name': 'Marge', "email":"marge@simpsons.com", "phone":"555-222-1254" } ] }); // 创建一个表格 var grid = Ext.create('Ext.grid.Panel', { renderTo: Ext.getBody(), store: store, height: 250, width: 500, title: 'Employee Directory', columns: [ { header: 'Name', dataIndex: 'name' }, { header: 'Email', dataIndex: 'email', flex: 1 }, { header: 'Phone', dataIndex: 'phone' }, // 添加一个 actioncolumn 列类型 { xtype: 'actioncolumn', width: 50, items: [{ icon: 'https://cdn3.iconfinder.com/data/icons/faticons/32/refresh-01-512.png', tooltip: 'Click to refresh', handler: function(grid, rowIndex, colIndex) { alert('Refresh button clicked!'); } }] } ] }); }); ``` 这个例子,我们添加了一个 `actioncolumn` 类型的列,其包含一个刷新图标的按钮。当用户单击此按钮时,将调用处理函数 `handler`,在这个例子,我们使用 `alert` 函数来显示一个消息框,但您可以根据需要替换它。 希望这个例子对您有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值