以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  listview行数据的keydown事件如何写?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=77355)

--  作者:ehomecd
--  发布时间:2015/11/17 9:03:00
--  listview行数据的keydown事件如何写?
listview 已经在RowActivate写了代码,让双击打开【游戏个人数据】窗口,如何写代码,让按下空格键,打开【成长勋章】窗口,
RowActivate代码当前如下:

Dim lvw As WinForm.ListView = e.Form.Controls("ListView1")
Dim vr As WinForm.ListViewRow = lvw.Current \'获取ListView的当前行
If vr Is Nothing Then \'如果不存在当前行,也就是内有选定任何一行
    Return
End If
Dim dr As DataRow = vr.tag \'获取此行对应的DataRow
Dim ps As Integer = Tables("龙源宝藏").FindRow("学生编号 = \'"& dr("学生编号") &"\'")
    If ps > 0 Then
        Tables("龙源宝藏").Position = ps
Forms("游戏个人数据").Open
End If


图片点击可在新窗口打开查看此主题相关图片如下:2015年11月17日.png
图片点击可在新窗口打开查看


--  作者:ehomecd
--  发布时间:2015/11/17 9:06:00
--  
解决了在 KeyDown写。。

Dim lvw As WinForm.ListView = e.Form.Controls("ListView1")
Dim vr As WinForm.ListViewRow = lvw.Current \'获取ListView的当前行
If vr Is Nothing Then \'如果不存在当前行,也就是内有选定任何一行
    Return
End If
Dim dr As DataRow = vr.tag \'获取此行对应的DataRow
Dim ps As Integer = Tables("龙源宝藏").FindRow("学生编号 = \'"& dr("学生编号") &"\'")
    If ps > 0 Then
        Tables("龙源宝藏").Position = ps
End If

If e.KeyCode = Keys.space
Forms("成长勋章").open
End If