Foxtable(狐表)用户栏目专家坐堂 → 单元格操作


  共有3689人关注过本帖树形打印复制链接

主题:单元格操作

帅哥哟,离线,有人找我吗?
zhangxl1964
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:553 积分:5327 威望:0 精华:0 注册:2011/6/7 13:33:00
单元格操作  发帖心情 Post By:2013/11/28 11:31:00 [只看该作者]

老师:您好!

     如何实现用键盘的山下键来操作单元格的下拉列表的选择?

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251048 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/11/28 11:39:00 [只看该作者]

按空格进入编辑状态,再按空格打开下拉列表,用上下箭头按键选择项目,按回车确定选择

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/11/28 11:46:00 [只看该作者]

你好,本来就可以使用上下键来选择的.

如果希望按下键就打开下拉列表

可以在KeydOWN事件中
If e.Table.cols(e.Table.ColSel).name="第一列" Then
  If e.KeyCode=keys.Down Then
    If Tables("表A").Cols("第一列").DroppedDown=False Then
       e.Cancel=True
       Tables("表A").StartEditing
       Tables("表A").Cols("第一列").OpenDropDown       
    End If
  End If
End If


 回到顶部
帅哥哟,离线,有人找我吗?
zhangxl1964
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:553 积分:5327 威望:0 精华:0 注册:2011/6/7 13:33:00
下一步哪?  发帖心情 Post By:2013/11/28 12:37:00 [只看该作者]

If e.Table.cols(e.Table.ColSel).name="第一列" Then
  If e.KeyCode=keys.Down Then
    If Tables("表A").Cols("第一列").DroppedDown=False Then
       e.Cancel=True
       Tables("表A").StartEditing
       Tables("表A").Cols("第一列").OpenDropDown       
    End If
  End If
End If

可以用上下键打开了下拉列表,可下一步选择按上下键没起作用了,应该如何做?

谢谢!

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/11/28 12:58:00 [只看该作者]

你指焦点的是向下移动一个单元格吗?  打开还是移动,只能2者选其一啊,  怎么可能一个按键实现2个效果.

 回到顶部
帅哥哟,离线,有人找我吗?
zhangxl1964
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:553 积分:5327 威望:0 精华:0 注册:2011/6/7 13:33:00
下拉列表  发帖心情 Post By:2013/11/28 13:46:00 [只看该作者]

第一步:用上下键打开了下拉列表,在下拉列表中选择时,上下键可用吗?如何实现?(不用鼠标)

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/11/28 14:13:00 [只看该作者]


直接使用我的代码即可

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目3.table



 回到顶部
帅哥哟,离线,有人找我吗?
zhangxl1964
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:553 积分:5327 威望:0 精华:0 注册:2011/6/7 13:33:00
补充说明  发帖心情 Post By:2013/11/28 14:57:00 [只看该作者]

老师:您好!

      前面我没有说清楚,我是在MouseEnterCell事件中使用代码:
'生成数据表
Dim cmd As New SQLCommand
cmd.C
Dim dt As DataTable
cmd.CommandText = "SELECT DISTINCT 一级分类,二级分类,三级分类,食材名称,食材编号 From 食材库"
dt = cmd.ExecuteReader()
'生成目录树
Dim tb As New DropTreeBuilder
tb.SourceTable = dt
tb.TreeCols = "一级分类|二级分类|三级分类|食材名称|食材编号" 
tb.SourceCols = "食材编号"
tb.ReceiveCols = "食材编号" 
Tables("进销存").Cols("食材编号").DropTree = tb.Build()
现在可以用鼠标进行下拉列表的选项操作,就是不能用键盘键实施,故问如何实现用键盘键操作。

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/11/28 15:03:00 [只看该作者]

你这个是目录树啊? 目录树没有这样的功能,非要写也可以.需要自己设计下拉窗口,就比较麻烦了.   目录树真的有这个必要吗? 还不如手动点节点快呢.

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2013/11/28 21:36:00 [只看该作者]

 做个例子上来瞧瞧。

 回到顶部