Office中国论坛/Access中国论坛

标题: 怎样用if....语句判断启动窗体是哪个? [打印本页]

作者: bjcompass    时间: 2011-6-27 07:48
标题: 怎样用if....语句判断启动窗体是哪个?
如果现在的启动窗体是“abc”,怎样在库中一个事件代码中用"if.....     " 判断启动窗体是abc?
请各位老师指点!


作者: todaynew    时间: 2011-6-27 09:08
if Screen.ActiveForm.Name="abc" then
     msgbox Screen.ActiveForm.Name & "为活动窗体!"
end if

作者: bjcompass    时间: 2011-6-27 11:43
版主老大:您说的是判断活动窗体,我要判断的是数据库的启动窗体,就是数据库启动是显示的第一个窗体。请再费心指教。
作者: aslxt    时间: 2011-6-27 23:47
bjcompass 发表于 2011-6-27 11:43
版主老大:您说的是判断活动窗体,我要判断的是数据库的启动窗体,就是数据库启动是显示的第一个窗体。请再 ...

判断他后干什么用?
作者: aslxt    时间: 2011-6-27 23:52
当然,如果你一定要那样的话,也可以申明一个全局变量,string类型,启动窗体load事件中把启动窗体的名字传给那个全局变量。这样你就可以根据那个全局变量的值来判断是谁(窗体)第一个启动了。

作者: bjcompass    时间: 2011-6-28 09:56
本帖最后由 bjcompass 于 2011-6-28 09:58 编辑

判断他后干什么用?
我的思路是这样的:试用版的启动窗体比如是“AAA“,依据硬盘序列号产生注册码,注册以后的启动窗体改为“abc" 。如果注册版被拷贝到其他的机器上使用,可以用一个事件代码判断新硬盘序列号与注册时不同,把启动窗体重新改为“AAA" 并且再给与一定的试用次数。这一步已经做到了,但是之后每次到这个事件时都要判断做一次动作。我想可以在事件代码里设定第二个条件:启动窗体=“abc" 。
       在代码里写 if startupform=" abc"  不成功。
       思路是否可行?请各位老师指教,关键是启动窗体的代码是什么 ?
作者: todaynew    时间: 2011-6-28 16:59
bjcompass 发表于 2011-6-28 09:56
判断他后干什么用?
我的思路是这样的:试用版的启动窗体比如是“AAA“,依据硬盘序列号产生注册码,注册以 ...

Dim str As String
Dim dbs As DAO.Database
Set dbs = CurrentDb
str = dbs.Properties("StartUpForm")
if str="Form.abc" then
作者: bjcompass    时间: 2011-6-29 08:06
期待两天,终于等来高手救难,赶紧试试去!
这两天我也想出一个办法,不敢独享,告诉各位以表感谢:
在注册时用savedbsetting.......语句把启动窗体名字符串保存起来,判断时再用getdbsetting语句读取这个字符串。
可能还是版主的简单实用。
作者: bjcompass    时间: 2011-6-29 18:41
谢谢热心的 today 版主,无愧高手。给的东西非常好用!希望对版友都有帮助。




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