以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]一种新的检索手段  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=49646)

--  作者:云淡风轻
--  发布时间:2014/4/22 9:29:00
--  [求助]一种新的检索手段

我在菜单设计了一个功能组,叫“条码枪扫描检索”,里面放一个文本框,实现只要鼠标聚焦到文本框,就可以用扫描枪连续操作,

代码:

Dim txt As String = RibbonTabs("档案检索").Groups("条码枪扫描检索").Items("文本框").Text
CurrentTable.filter = "档号 = \'" & txt & "\'"
RibbonTabs("档案检索").Groups("条码枪扫描检索").Items("文本框").GetFocus

第三行代码无法获得聚焦,每扫描一次后,必须手工聚焦到文本框,如何省略这步,直接连续操作?

位置:

 


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20140422092827.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2014-4-22 9:29:45编辑过]

--  作者:Bin
--  发布时间:2014/4/22 9:37:00
--  
看了一下,菜单没有KYEDOWN事件, 菜单控件也没有对应的选中焦点属性.  看起来是没有办法在菜单里实现这个效果了
--  作者:云淡风轻
--  发布时间:2014/4/22 9:39:00
--  
那窗口里的文本框有这个获得焦点事件吗?
--  作者:有点甜
--  发布时间:2014/4/22 9:40:00
--  

 测试了一下,菜单无法这样操控。

 

 变通一下处理吧,加一个窗口,然后加一个文本框,如果点击菜单,就把焦点移到窗口的文本框里。

 

 在扫描枪里录入以后,把窗口的值写回菜单。

 

 也就是说,你所有的操作,都是在窗口文本框里,菜单只是显示作用。


--  作者:云淡风轻
--  发布时间:2014/4/22 9:48:00
--  
意思我懂了,相当于窗口是临时存放数值,那有没有可以直接获取条码枪的值,而不借助文本框,将窗口文本框的值直接用代码获取?感觉条码枪的值好像一定要打开一个记事本或者可以录入的位置才写的进,如果直接获取呢?
[此贴子已经被作者于2014-4-22 9:49:04编辑过]

--  作者:有点甜
--  发布时间:2014/4/22 9:55:00
--  
以下是引用云淡风轻在2014-4-22 9:48:00的发言:
意思我懂了,相当于窗口是临时存放数值,那有没有可以直接获取条码枪的值,而不借助文本框,将窗口文本框的值直接用代码获取?感觉条码枪的值好像一定要打开一个记事本或者可以录入的位置才写的进,如果直接获取呢?
[此贴子已经被作者于2014-4-22 9:49:04编辑过]

 

可以直接获取,需要写个 钩子程序,检测键盘输入,如果输入的内容是连续且快速、最后以回车结束的,就判断成 扫描枪录入,截取内容出来。

 

比较麻烦,不建议尝试。

[此贴子已经被作者于2014-4-22 9:56:17编辑过]

--  作者:云淡风轻
--  发布时间:2014/4/22 9:58:00
--  
嗯,版主的思路很清晰,豁然开朗。谢谢你们的耐心指导!!
[此贴子已经被作者于2014-4-22 9:59:03编辑过]