Office中国论坛/Access中国论坛

标题: [示例]用屏幕键盘在指定位置插入特殊字符 [打印本页]

作者: 轻风    时间: 2011-11-22 16:48
标题: [示例]用屏幕键盘在指定位置插入特殊字符
本帖最后由 轻风 于 2011-11-24 14:39 编辑

网友问题: 如何用ACCESS做一个屏幕键盘
目的:想实现这样一个功能,通过点击鼠标可以在文本框中输入一些特殊字符。(虽然可以打开输入法的软键盘来输入,但是对于一些不是很熟悉电脑的人来说,还是比较麻烦的)
要求:可以在文本框中得任意位置插入。(不是在最后面追加)


刚开始我没看清楚网友的问题,是要插入特殊符号,就告诉他直接调用WINDOWS的屏幕键盘,简单方便:
  1. Shell "osk.exe", 1
复制代码
可惜屏幕键盘没有特殊符号,看来真要自己弄一个了。

此示例可在任意位置插入特殊字符,也可选定任意字符替换特殊字符,如下图:

[attach]47420[/attach]




只是有一个问题还没解决,就是假如在空白文本框中输入一段文字,在焦点未离开文本框时,用鼠标或方向键更改光标位置,此时要插入特殊符号时,不知如何获取光标位置(不知在哪个事件中获取),只会被插入到最后,如果可以解决请告知。如下图:

[attach]47422[/attach]


[attach]47423[/attach]


作者: t小宝    时间: 2011-11-22 17:08
本帖最后由 t小宝 于 2011-11-22 17:09 编辑
只是有一个问题还没解决,就是假如在空白文本框中输入一段文字,在焦点未离开文本框时,用鼠标或方向键更改光标位置,此时要插入特殊符号时,不知如何获取光标位置(不知在哪个事件中获取),只会被插入到最后,如果可以解决请告知。

简单的方法是用标签代替插入字符按钮,这样文本不会失去焦点。

方法二是离开文本框前记录文本框的SelStart属性,单击按钮后把焦点返回文本框,并设回原来的SelStart。
作者: andymark    时间: 2011-11-22 18:23
学习一下
作者: 轻风    时间: 2011-11-22 21:33
t小宝 发表于 2011-11-22 17:08
简单的方法是用标签代替插入字符按钮,这样文本不会失去焦点。

方法二是离开文本框前记录文本框的SelS ...

版主能帮我改一下吗?
作者: 轻风    时间: 2011-11-24 11:55
重新上传了附件,把“更改事件”的代码改到“更新后事件”中(忘了以前为什么要用更改事件),可以解决以上问题。
作者: wang1950317    时间: 2011-11-24 12:18
真是好东西!大师级作品。
作者: ysh5858    时间: 2012-1-16 20:38
学习了!顶顶...




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3