TC官方合作论坛

标题: 谁能告诉我 为什么 tc里 tab键是奇葩的 选中输入框的文本 ... [打印本页]

作者: 花云寒    时间: 2014-6-15 20:47
标题: 谁能告诉我 为什么 tc里 tab键是奇葩的 选中输入框的文本 ...
谁能告诉我 为什么 tc里 tab键是奇葩的 选中输入框的文本 而不是 换到下一个输入框?


为什么这么奇葩。。


为什么。。


作者: 星.月    时间: 2014-6-15 22:48
打开TC-------应用示例---------脚本技巧----------实现TAB切换控件焦点
作者: frg0922    时间: 2014-6-15 23:30
  1. //很多同学说文档里面全部是中文代码没有英文代码
  2. //所以这个示例给大家以中英文代码混写展示

  3. 空间 实现TAB切换控件焦点
  4. //默认空间
  5. WM_KEYDOWN=256//按下一个键
  6. WM_KEYUP=257//释放一个键
  7. WM_SETFOCUS=7//获得焦点后
  8. WM_KILLFOCUS=8//失去焦点

  9. VK_TAB=9//TAB

  10. //上面的消息以及一些键盘的常量定义大家可以参考文档里面的 第12章 ASCII表与虚拟键码表

  11. max=3//控件的数量
  12. 控件名=数组[1]//控件的名字最好定义在统一的方便代码的实现
  13. //也可以把控件名写到一个数组里面也是可以的

  14. 功能 初始化()
  15.     //这里添加你要执行的代码
  16.     控件名=数组空间.重定义(控件名,1,max)//重新构造数组大小
  17.     控件名[0]="编辑框0"
  18.     控件名[1]="编辑框1"
  19.     控件名[2]="编辑框2"
  20.    
  21. 功能结束

  22. //消息路由功能
  23. 功能 实现TAB切换控件焦点_消息路由(句柄,消息,w参数,l参数,时间,x坐标,y坐标)
  24.    
  25.     select(消息)
  26.         case 256://WM_KEYDOWN select的条件不能为变量只能为常量
  27.         if(w参数==VK_TAB)//当按下TAB键的时候设置下一个控件的焦点
  28.             for(i=0;i<max;i++)//用循环遍历当前焦点所在的控件
  29.                 if(句柄==control.gethandle(控件名[i]))
  30.                     if(i==(max-1))//如果当前是最后一个控件,自动把焦点移动到第一个控件
  31.                         window.setfocus(control.gethandle(控件名[0]))
  32.                         返回 真//处理完成后必须直接返回真,否则不能正常执行
  33.                     endif
  34.                     window.setfocus(control.gethandle(控件名[i+1]))//设置下一个控件的焦点
  35.                     返回 真//处理完成后必须直接返回真,否则不能正常执行
  36.                 endif
  37.             endfor                    
  38.         endif
  39.     endselect
  40.    
  41.     返回 假
  42. 功能结束

  43. 空间结束
  44. //空间结束语句
复制代码





欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/) Powered by Discuz! X3.1