Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

如何让文本框之类的控件失去粘贴功能?

剑与星  发表于:2011-08-22 17:23:19  
复制

问题来源:设置一组合框只能列出列表值,输入非法值系统会警告,关闭系统警告功能,但此种情况下按窗体控制按钮关闭窗口的话,系统警告还是出来了,并且提示数据库出了问题云云,实在恼火。键盘输入可以用代码限制,但还可以用粘贴功能输入其他值,请教如何限制粘贴?

 

Top
煮江品茶 发表于:2011-08-22 17:37:25

不能因为三聚氰胺就不喝牛奶;不能因为瘦肉精就不吃红烧排骨;不能因为空气可能污染就把鼻子塞上棉花;不能因为不在数据列表中就屏蔽复制粘贴。局部问题有局部手段解决,不必大动干戈。于组合框不在列表中事件中处理便可以了。



剑与星 发表于:2011-08-22 19:38:16
不在列表事件实在让人无语,不信的话你直接按窗口的关闭按钮试下!

符鸿敏 发表于:2011-08-22 21:32:15

设置组合框属性→数据选项卡→限制列表→选 是 。

试试吧。



剑与星 发表于:2011-08-22 22:30:35

楼上的老大,是“限于列表”吧,没用,选中它的作用是:如果输入了不在列表中的值,系统会警告。1楼的大哥,NotInList事件中自己设 Response参数的值,确实可以取代系统警告信息,但直接按窗口的关闭按钮就会出问题,所以说这个事件是有BUG的。

这个限制粘贴的功能要用API编程吧?知道的大大请不吝赐教!



keat 发表于:2011-08-23 02:01:30

if keycode=vbkeyv then keycode=0

 



jia 发表于:2011-08-23 07:38:41

在“键按下”输入以下代码即可

DoCmd.CancelEvent



剑与星 发表于:2011-08-23 17:16:06
粘贴一般是能过鼠标动作实现的,在“键”事件中处理是没用的。

keat 发表于:2011-08-25 01:16:22

粘贴一般是能过鼠标动作实现的,在“键”事件中处理是没用的。
??



剑与星 发表于:2011-08-25 20:49:42
Access的帮助文件中说明:在MouseDown事件中,通过调用宏,在宏中使用CancelEvent操作可以限制鼠标右键,但坑爹的是,找遍帮助文件都找不到一个例子,自己试了一下,在该事件中,当按下右键时,把只含CancelEvent操作的宏名给OnMouseDown属性赋值,结果是,右键功能依旧,左键功能没有了!搞不懂是怎么回事



金爷 发表于:2011-08-25 23:48:12

工具 启动 允许默认菜单的 √去掉

设置好后要重启软件

但可以用键盘复制粘贴

键盘的方法参考上面几位的



剑与星 发表于:2011-09-09 23:47:27
还是偶自己找到办法了:设置窗体的“快捷菜单”属性为“否”——竟然这样简单!

总记录:11篇  页次:1/1 9 1 :