dw_1.SetTransObject(SQLCA)=======================================给增加记录的按钮cb_append的click事件代码:long rowrow = dw_1.insertrow( 0)dw_1.setrow( row )dw_1.scrolltorow( row )dw_1.setfocus( )
================一下每个按钮都写上用户事件u_keydown========================
给cb_append定义一个用户事件u_keydown,事件号为pbm_keydown,当焦点落在该控件上时,按任意键都将触发u_keydown。u_keydown代码:if keydown(keyenter!) then//如果按了回车键,则触发clicked 事件this.triggerevent( clicked !)end if
===========================================
给插入记录的命令按钮cb_insert的clicked事件代码:long rowrow = dw_1.insertrow(dw_1.getrow() )dw_1.setrow( row )dw_1.scrolltorow( row )dw_1.setfocus( )
=============================================
删除记录按钮cb_delete的clicked事件代码:dw_1.deleterow( dw_1.getrow )
===============================================给显示记录的cb_retrieve的clicked事件代码:dw_1.retrieve( )
============================================存盘的命令按钮cb_update的clicked事件代码:dw_1.update()
============================================给返回的命令按钮cb_return的clicked事件代码:close(parent)
============================================以下代码希望实现,当焦点落在命令按钮上时,按回车键能代替鼠标。在数据窗口中,按回车键可以跳到下一个输入项,而不是下一行。当在最后一行的最后一列按回车键时,将增加一个空行。在最后一行按向下的箭头键↓时,也增加一个空行。================以上面代码为基础============================给数据窗口dw_1定义一个用户事件u_keyenter,事件号为pbm_dwnprocessenter,当焦点落在该控件上时,按回车键将触发u_keyenter。代码:int collong rowcol = getcolumn( )row = getrow ()if col<4 then//当前列不是最后一列(dw窗口为一个4列的表)setcolumn( col+1 )elseif row //当前列是最后一列但当前行不是最后一行setrow( row+1 ) //将下一行的第一列变为当前行scrolltorow( row+1 )setcolumn(1)else//当前列是最后一列且当前行是最后一行row = insertrow ( 0 ) //增加一行setrow( row ) //将新行的第一列变为当前列scrolltorow( row )setcolumn(1)end ifend ifreturn 1 //放弃系统原来的操作
==============================================给数据窗口dw_1再定义一个用户事件u_keyarrow,事件号为pbm_dwntabdownout,当焦点落在该控件上且位于最后一行时,按向下箭头键↓ 将触发u_keyarrow。代码:long rowrow = insertrow( 0 ) //增加一行setrow( row ) //将新行变为当前行scrolltorow( row )
===================================================================
