专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > VFP

怎么达成用一个表单锁住其它表单的目的

发布时间:2010-05-24 21:18:06 文章来源:www.iduyao.cn 采编人员:星星草
如何达成用一个表单锁住其它表单的目的?
  想在程序的运行过程中,用一个表单来锁住所有的活动表单,只有这个表单RELEASE后,其它的表单,菜单,工具条才可以使用,请各老师支招!

  谢谢!
------解决方案--------------------
引用:
Quote: 引用:

您的意思是假如一个用户开了一个表单 后锁屏了 走开了,  现在另一个用户 需要用跟另一个身份和权限来操作这个表单, 于是就进行有货切换,  激活这个表单, 用新的权限来操作这个表单吗,
还是  新用户输入正确密码以后这个表单就销毁了. 新用户重新开这个表单


大致是这样。
 
  只可以仅顶层表单活动时才能锁定,意思是当前的操作人员一定要完成所有的操作才能锁系统。其它用户如果要使用系统要么用当前用户解锁,要么输入自己的ID和密码进行用户切换即可,切换后系统回到顶层表单,然后可以执行所有有权限的操作。

那你需要的不是表单, 而是一个 容器 一个跟主表单一样大的容器,  正常时 容器是不可见的. 锁定是容器是可见的 但是容器盖住了其他的所有的控件  所以其他对象都是不可操作的, 容器上有输入密码解锁的文本框和 切换用户的按钮 和文本框. 等切换成功后. 再把容器设为不可见的. 顶层表单就可以操作了.  用一个表单搞定 根本不用考虑 多表单的模式和非模式关系和活动表单的设置;

小提示:你可以用一个透明容器里套一个不透明的容器 来达到 跟表单一样的视觉效果
贴个简单的效果实例


------解决方案--------------------
运行FORMA表单时,这样:
Public FORMA    && 也可以用其他变量名
DO FORM FORMA.SCX NAME FORMA

然后
FORMA.COMMAND1.CLICK
FORMA.Enabled=.F.  
DO FORM FORM1  &&锁住FORMA不让执行任何的事件
SELE 1
USE A
SELE 2
USE B
REPL VALUEA WITH "ABC"

......

FORM1.RELEASE  &&释放FORM1,放开FORMA。
FORMA.Enabled=.T.
RETU
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: