|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?站点注册
×
本帖最后由 newease 于 2009-8-11 08:43 编辑
如何实现数据窗口的多行选择?
作一数据窗口通用对象(UserObject),在CLICKED事件中写入如下代码:
long lng_currentrow,lng_j
if row=0 then
return
else
lng_currentrow=row //当前鼠标点中行
end if
if keydown(keyshift!) then //按下SHIFT键
if i_lng_lastrow=0 then //上次没选中任何行
this.selectrow(lng_currentrow,true)
i_lng_lastrow=lng_currentrow //i_lng_lastrow为实例变量,记录上次单击的行
else
this.selectrow(0,false) //全都不选中
if lng_currentrow>i_lng_lastrow then
for lng_j=i_lng_lastrow to lng_currentrow
this.selectrow(lng_j,true)
end for
else
for lng_j=i_lng_lastrow to lng_currentrow step -1
this.selectrow(lng_j,true)
end for
end if
end if
else
i_lng_lastrow=lng_currentrow
if keydown(keycontrol!) then //按下CTRL键
if this.isselected(lng_currentrow) then
this.selectrow(lng_currentrow,false)
else
this.selectrow(lng_currentrow,true)
end if
else //无任何键按下
this.selectrow(0,false)
this.selectrow(lng_currentrow,true)
end if
end if
在窗口的OPEN事件中写入如下代码:
dw_1.object.datawindow.readonly=true |
|