设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

1234下一页
返回列表 发新帖
查看: 16815|回复: 33
打印 上一主题 下一主题

[窗体] 【Access小品】子窗体记录有选择性锁定实例

[复制链接]
跳转到指定楼层
1#
发表于 2010-1-11 13:19:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 todaynew 于 2010-1-11 13:38 编辑

有版友问子窗体记录有选择的锁定问题。对连续窗体或数据表窗体的记录进行有选择的锁定,看起来是一个麻烦的事情。因为对应字段的控件名就一个,你要锁定它的话所有的都锁定了,不会只针对一条或者几条记录来锁定。怎么解决这个问题呢?实际上说起来也不难,你可以利用获得焦点事件或者单击事件来处理。因为你获得焦点或者单击时,你可以对当前记录中的某个字段值进行判断,进而做出锁定或者不锁定操作。从结果上来看,此时的操作是对窗体所有记录的操作,但形式上你感觉是对当前记录的操作。

    以下这个所编写的子程序,并结合焦点或单击事件来使用就可以达到有选择的锁定子窗体记录的目的:

Private Sub 选择锁定(myctl As Control, B As Boolean)
'功能:有选择的锁定子窗体中的记录
'参数:myctl,作为判断的控件:B=true,myctl锁定,B=false,myctl不锁定
Dim ctls As Controls
Dim ctl As Control
Set ctls = Me.Form.Controls
For Each ctl In ctls
    If ctl.ControlType <> acLabel Then
        If myctl.Value = True Then
                 If B = True Then
                    ctl.Locked = True
                Else
                    If ctl <> myctl Then
                        ctl.Locked = True
                    End If
                End If
        Else
            ctl.Locked = False
        End If
    End If
Next ctl
End Sub



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

评分

参与人数 2经验 +11 收起 理由
purplerose + 5
5988143 + 6 原创内容

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2010-1-11 13:36:41 | 只看该作者
todaynew,最近高產~
網友的福音哦~
支持~
3#
发表于 2010-1-11 15:54:14 | 只看该作者
todaynew是ACCESS的福人!
4#
发表于 2010-1-11 16:12:19 | 只看该作者
"

回帖是一种美德,虽然这是广告.呵呵



Signature--------------------------------------------------------------------------------------------------------------------
Nothing is impossible for a willing heart.
ugg bailey button

ugg classic cardy




"
5#
发表于 2010-1-11 19:43:11 | 只看该作者
绝对支持,都是好贴!
6#
发表于 2010-1-13 13:53:24 | 只看该作者
嗯~顶
7#
 楼主| 发表于 2010-1-14 19:33:01 | 只看该作者
谢谢同志们支持
8#
发表于 2010-1-14 23:17:17 | 只看该作者
学习。
9#
发表于 2010-1-29 16:05:32 | 只看该作者
真不错,学习了,遍历控件
10#
发表于 2010-1-29 21:04:16 | 只看该作者
解决了我的问题,非常感谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-12-1 17:22 , Processed in 0.086472 second(s), 36 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表