设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1972|回复: 4
打印 上一主题 下一主题

[模块/函数] [求助]这个自定义函数该怎样写?

[复制链接]
跳转到指定楼层
1#
发表于 2004-2-12 20:41:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我想自定义一个函数,目的是为了判断某个窗体中的NEW按钮是否可用.即Forms!FTYINPUT!NEW.Enabled = False
因为要在所有的窗口中调用,因此想定义一个函数.但如何定义才能达到我的目的?

就是Forms!FTYINPUT!NEW.Enabled这部分我想用一个变量来表达.这个变量如何定义?
[此贴子已经被作者于2004-2-12 13:07:54编辑过]

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅

点击这里给我发消息

2#
发表于 2004-2-12 22:51:00 | 只看该作者
Forms(窗体名变量).NEW.Enabled
这样要保证每个被调用的窗体上都要有NEW这个命令按钮。
3#
 楼主| 发表于 2004-2-12 23:40:00 | 只看该作者
真的非常感谢.如果你不教我,我要在每个窗体上加代码了.还有个问题请教,下面的我定义的.
Public Function right()
    PRG = "ftyinput"  FTYINPUT是传过来的打开的窗体名,我在是这个窗体中CALL RIGHT的.
    OPENV = DLookup("OPENV", "RI", "RG='" & PRG & "'")
    NEWV = DLookup("NEWV", "RI", "PRG='" & PRG & "'")
    SAVEV = DLookup("SAVEV", "PRI", "PRG='" & PRG & "'")
    EDITV = DLookup("EDITV", "PRI", "PRG='" & PRG & "'")
    DELETEV = DLookup("DELETEV", "PRI", "PRG='" & PRG & "'")
   
    If OPENV = 0 Then
    MsgBox "You are not right!", vbInformation, "Warring"
    DoCmd.CLOSE这里我的本意是如果打开窗体的权限为假,则关掉打开的窗口FTYINPUT,但是这里因为不能用EXIT SUB 命令.因此程序转回到FTYINPUT继续执行.有什么办法关掉FTYINPUT这个窗体,
    Else
   
    If NEWV = -1 Then
    Forms(PRG).NEW.Enabled = True
    Else
    Forms(PRG).NEW.Enabled = False
    End If
   
    If SAVEV = -1 Then
    Forms(PRG).SAVE.Enabled = True
    Else
    Forms(PRG).SAVE.Enabled = False
    End If
   
    If EDITV = -1 Then
    Forms(PRG).EDIT.Enabled = True
    Else
    Forms(PRG).EDIT.Enabled = False
    End If
   
    If DELETEV = -1 Then
    Forms(PRG).DELETE.Enabled = True
    Else
    Forms(PRG).DELETE.Enabled = False
    End If
   
    End If
   
End Function

点击这里给我发消息

4#
发表于 2004-2-12 23:54:00 | 只看该作者
这样不行,你应该有一个判断权限的函数,返回值要么是TRUE要么是FALSE,这样在窗体的OPEN事件过程中做判断,是TRUE就继续打开,否则就让CANCEL=-1,不打开窗体。
5#
 楼主| 发表于 2004-2-13 01:03:00 | 只看该作者
这样啊.谢谢你..
看样子我只好在窗体中多做一次判断了..

非常感谢..

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-6 23:27 , Processed in 0.086684 second(s), 29 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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