控件的焦点转移

csdeveloper2010 2010-04-07 04:33:34
假设我现在有一个checkbox,一个button,和一个textbox。如何使用上下键(切记是上下键vbkeyup/vbkeydown)使得焦点在三者键顺序传递。即假设现在焦点在checkbox上,用keyup将焦点转移到textbox,用keydown转移到button,以此类推
...全文
92 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
舉杯邀明月 2010-04-08
  • 打赏
  • 举报
回复
Private Sub Check1_KeyDown(KeyCode As Integer, Shift As Integer)
If (KeyCode = vbKeyUp) Then Text1.SetFocus: Exit Sub
If (KeyCode = vbKeyDown) Then Command1.SetFocus: Exit Sub
End Sub

Private Sub Command1_KeyDown(KeyCode As Integer, Shift As Integer)
If (KeyCode = vbKeyUp) Then Check1.SetFocus: Exit Sub
If (KeyCode = vbKeyDown) Then Text1.SetFocus: Exit Sub
End Sub

Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)
If (KeyCode = vbKeyUp) Then Command1.SetFocus: Exit Sub
If (KeyCode = vbKeyDown) Then Check1.SetFocus: Exit Sub
End Sub

  • 打赏
  • 举报
回复
把所有的tabstop=false
csdeveloper2010 2010-04-08
  • 打赏
  • 举报
回复
第一,不是tab不好用,而是希望能用上下键操作;所以我的目的是上下键,跟tab键无关。
第二,当焦点已经在button上的时候,按上下键根本不触发keydown事件;反而是焦点从其它控件移到button上的时候触发keydown事件,更奇怪的是还触发了两次,求解???
zst24 2010-04-07
  • 打赏
  • 举报
回复
第一问:楼主,怎样才能不让tab键不好用啊? 求思路!
第二问:焦点要在checkbox,button,textbox间移动,为啥从textbox移到button,又要从button移回textbox?
csdeveloper2010 2010-04-07
  • 打赏
  • 举报
回复
第一,需求不允许用tab键
第二,当焦点从textbox转移到button就触发了button的keydown事件(这不符合要求)。我现在是无法将焦点从button转移到textbox
chuifengde 2010-04-07
  • 打赏
  • 举报
回复
将控件的tabindex设为连续
然后在三者的keydown事件判断keycode为down时sendkeys "{tab}" up时sendkeys "+{tab}"
东方之珠 2010-04-07
  • 打赏
  • 举报
回复
用TAB键,或者上下箭头键是可以的,无须编程。但是,如果光标在文本框内,用箭头键不能转移焦点。

1,452

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧