Access交流中心

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

请教在子窗体中对某些记录禁止删除

马山杨梅  发表于:2008-10-29 10:39:16  
复制

当子窗体中“职业”字段为“老师”时,这条记录不能删除。(即屏幕上方工具栏和右击快捷菜单里删除符号变灰,相当于可以删除属性为“否”)

当光标放到其它记录,只要“职业”字段不是“老师”时,都可以删除。

谢谢!

 

Top
符鸿敏 发表于:2008-10-29 19:45:01

     在子窗体的键按下事件中,写如下代码:

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
      Me.AllowDeletions = IIf(Me.职业 = "老师", False, True) '允许删除
       

End Sub
 



符鸿敏 发表于:2008-10-29 20:05:33

对不起,前面说错了。

应该是在子窗体的鼠标按下事件和鼠标释放事件中写如下代码

 

 

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
      Me.AllowDeletions = IIf(Me.职业 = "老师", False, True) '允许删除
 End Sub

 

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
       Me.AllowDeletions = IIf(Me.职业 = "老师", False, True) '允许删除
End Sub



马山杨梅 发表于:2008-10-30 08:51:48

谢谢符老师!完全是我需要的那种效果。真的很灵。

我冒昧地再请求您告诉我,在这个基础上再加上同时不允许编辑,这条代码该怎么写。(我的意图是职业=老师时这些记录不能被编辑和删除,而不妨碍其它记录的新增修改)

若实现这样的效果就能够在输入窗体上依据标记字段(在后台)的值来彻底限制没有权限的操作员修改删除重要的记录,保障数据库的安全,又不妨碍他前期的编辑修改操作。比我以前设置表有效性规则来限制的办法更简单,更科学。

期待中!



符鸿敏 发表于:2008-10-30 18:38:00
Me.AllowEdits = IIf(Me.职业 = "老师", False, True) '允许编辑


马山杨梅 发表于:2008-10-30 20:07:06

感谢您的帮助,谢谢了!!!



Frank 发表于:2010-07-01 19:32:56
又学到了一招!

武凡 发表于:2010-07-18 09:45:29
我也学习来了,好丰富的知识呀

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