跳转焦点
请问  一个问题,假如一个控件中,可能有有3个焦点吗,如dtpicker时间控件中 
如何设置按回车自动跳转下一个焦点去 ,而不是跳出这个控件,以下是引用wbin在2004-3-22 15:01:35的发言:
2楼的是跳出控件,3楼的是在控件内部年月日间循环跳转。除非你启动了窗体的keydown事件,截获了该控件的相同事件。
 也不是循环跳转,就是按顺序来,“2004”>"03">"22"然后再按回车跳出,有人会吗?
还有我可以直接修改2004字样的,但我每次都只能修改一次
如“2004”我把他改为“2003”,你如果再改,那就改不了!2004-03-20

解决方案 »

  1.   

    晕,怎么看不懂呢?
    时间控件dtpicker
    显示时候不是2004-03-23吗,就是鼠标第1次只能点2004,我想选种2004后按回车自动到03,然后再按回车自动到23,
      

  2.   

    继续顶,有人给出这样的函数
    我看不懂Private Declare Sub keybd_event Lib "User32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwflags As Long, ByVal dwExtraInfo As Long)
    If KeyCode = 13 Then
            keybd_event 39, 0, 0, 0
            keybd_event 39, 0, 2, 0
    End If
      

  3.   

    keybd_event VB声明 
    Declare Sub keybd_event Lib "user32" Alias "keybd_event" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long) 
    说明 
    这个函数模拟了键盘行动 
    参数表 
    参数 类型及说明 
    bVk Byte,欲模拟的虚拟键码 
    bScan Byte,键的OEM扫描码 
    dwFlags Long,零;或设为下述两个标志之一 
    KEYEVENTF_EXTENDEDKEY 指出是一个扩展键,而且在前面冠以0xE0代码 
    KEYEVENTF_KEYUP 模拟松开一个键 
    dwExtraInfo Long,通常不用的一个值。api函数GetMessageExtraInfo可取得这个值。允许使用的值取决于特定的驱动程序 
    注解 
    这个函数支持屏幕捕获(截图)。在win95和nt4.0下这个函数的行为不同