OpenLaszlo中的grid的双击事件
来源:互联网 发布:昆明理工大学网络教育 编辑:程序博客网 时间:2024/05/29 04:46
因为在开发中遇到要使用表格的双击事件 ,虽然文档里面有grid的doubleClick事件,但是不起作用,在Openlaszlo的官方论坛里面也有说到解决办法,基本思路是通过利用2次单击的事件差来执行一些事件,但是在随后的开发中发现那样的方法有缺陷。所有后来自己写了个grid的双击事件onRowDoubleClicked(即方法一)。(其实对表格里面的数据拖拉操作都可以,比如把表格a的某一item拖到表格b中(可以是移动操作也可以是复制操作));第二种方法实现双击事件:通过判断两次的单击时间差来实现双击事件的方法,但是这种方法经过我以前项目的实践,存在一定的问题,比如在单击和双击事件同时存在的时候就会出现等等,强烈建议大家最好不要用这种方法
方法一代码如下:
使用示例:
<?xml version="1.0" encoding="UTF-8"?>
<canvas debug="true">
<include href="./xgrid/xgrid.lzx"/>
<dataset name="dsTest" src="./xmldatas/data.xml" />
<xgrid x="50" y="50" height="150" width="600" datapath="dsTest:/datas" fontsize="12" multiselect="false" showhlines="true">
<gridtext text="序号" editable="false" width="50" datapath="position()" resizable="false" sortable="false" textalign="center"/>
<gridtext datapath="@name" editable="false" width="220" textalign="center">名称</gridtext>
<method event="oninit">
this._scrx.setVisible(false);
</method>
<method event="ondata">
var showvbar = (this.getNumItems() >5);
this._scrx.setVisible(showvbar);
</method>
<method event="onRowDoubleClicked" args="items">
var selected = this.getSelection();
if(selected!=null){
var name = selected.data.getAttr("name");
Debug.write("result of onRowDoubleClicked : name = " name);
}
</method>
</xgrid>
</canvas>
xgrid.lzx:
<library>
<include href="xgridrow.lzx" />
<class name="xgrid" extends="grid" _rowclass="xgridrow">
<method name="dorowdblclick" args="item">
this.onRowDoubleClicked.sendEvent(item);
</method>
<attribute name="onRowDoubleClicked" value="null"/>
</class>
</library>
data.xml:
<datas>
<data name="name1"/>
<data name="name2"/>
<data name="name3"/>
<data name="name4"/>
<data name="name5"/>
<data name="name6"/>
</datas>
xgridrow.lzx:
<library>
<class name="xgridrow" extends="basegridrow">
<method event="ondblclick">
ownerGrid.dorowdblclick(this);
</method>
</class>
</library>
- OpenLaszlo中的grid的双击事件
- Easyui中的Grid的行单击双击事件
- Extjs4的Ext.grid.Panel的行双击事件事件
- Ext Grid上的单击以及双击事件
- Ext Grid上的单击以及双击事件
- GXT grid 添加双击事件处理
- Ext Grid上双击触发事件
- kendo.ui.Grid绑定单双击事件
- ExtJS4.2 双击Grid单元格事件处理
- Openlaszlo中发送自定义事件的两种方式
- flex的双击事件
- kdtable的双击事件
- JAVA中的鼠标双击事件
- JAVA中的鼠标双击事件
- 关于 android 中的MapView 双击事件的问题?
- Android中的双击事件,GestureDetector无效的原因
- Extjs grid 获取双击的项数据
- TreeView控件的双击事件
- c#.net多线程编程教学——线程同步
- 学习感想
- ACE proactor example
- eMule源代码解析 -2
- ACE实现了一个通用的架构通信程序
- OpenLaszlo中的grid的双击事件
- C#生成缩略图代码
- eMule源代码解析 -3
- eMule源代码解析 -4
- Linuxsir:Linux 常用命令之一
- log4j日志文件:解决只有控制台输出没有文件输出的问题!
- EMule的配制以及编译
- 基于Web Service的系统集成技术在网络教育平台中的应用
- 初识C#线程