ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 3037|回复: 1

[求助] combobox按向下键,失去焦点的问题。

[复制链接]

TA的精华主题

TA的得分主题

发表于 2013-9-13 15:03 | 显示全部楼层 |阅读模式
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 hktkzyz 于 2013-9-13 16:14 编辑

在“省份”后的combobox中,按向下键头(我添加了一个展开列表的按键事件,本问题应该和这个事件没关系),当按到“上海市”(list最后一个)时,停止,还可以向上按。但是当按到“上海市”时,再向下按,就失去了焦点,也不知焦点跑哪里去了。
问题1:这是怎么回事?原因何在?
       2:此时焦点跑到哪里去了?
       3:如何做才能使:按到“上海市”后,再按下键,不失焦点,而是还停留在“上海市”,还可以继续使用向上键。
            如果我没说清楚,大家可以看看qq登陆时,在账号(如果有多个qq号的情况下)那按向下键头一样,当按向下键到最后一个qq账号时,再按向下键,已经到头,然后可以再按向上键,而不会失去焦点。


谢谢大家。

补充 :当我把listview给值后,发现原来一直按向下键头,再过了combobox的最后一项后,焦点是到了listview的第一项。
补充 : 想出思路了,就是当If ComboBox1.ListIndex = ComboBox1.ListCount-1,即combobox为最后一项时,让向下键失效,可是不知具体怎么做。

工作簿1.zip

31.55 KB, 下载次数: 31

TA的精华主题

TA的得分主题

发表于 2018-10-1 15:31 | 显示全部楼层
下拉列表选项循环,其他控件不获得焦点
  1. Private Sub cbx_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
  2.     Dim keys As Integer, i As Integer, cbxname As String
  3.     keys = KeyCode: i = cbx.ListCount
  4.     If cbx.Value = cbx.List(0) And keys = 38 Then
  5.         cbx.Value = cbx.List(i - 1): KeyCode = 0
  6.     ElseIf cbx.Value = cbx.List(i - 1) And keys = 40 Then
  7.         cbx.Value = cbx.List(0): KeyCode = 0
  8.     End If
  9.     keys = 0
  10. End Sub
复制代码
下拉列表到顶端、底端停留,其他控件不获得焦点
  1. Private Sub cbx_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
  2.     Dim keys As Integer, i As Integer, cbxname As String
  3.     keys = KeyCode: i = cbx.ListCount
  4.     If cbx.Value = cbx.List(0) And keys = 38 Then
  5.         cbx.Value = cbx.List(0): KeyCode = 0
  6.     ElseIf cbx.Value = cbx.List(i - 1) And keys = 40 Then
  7.         cbx.Value = cbx.List(i - 1): KeyCode = 0
  8.     End If
  9.     keys = 0
  10. End Sub
复制代码


您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2025-1-16 08:50 , Processed in 0.019106 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表