Foxtable(狐表)用户栏目专家坐堂 → 启动后如何先显示主窗口然后显示其他登录窗口?


  共有1547人关注过本帖树形打印复制链接

主题:启动后如何先显示主窗口然后显示其他登录窗口?

帅哥,在线噢!
lur320
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1031 积分:8978 威望:0 精华:0 注册:2015/8/12 16:28:00
启动后如何先显示主窗口然后显示其他登录窗口?  发帖心情 Post By:2024/7/24 10:42:00 [只看该作者]

 原先设计是由一个模式窗口用来登录,填密码等信息。
主窗口不显示,等到模式窗口密码正确再关闭。旧代码里面并没有指定mainform。只指定了关闭登录窗口后的maintable是哪一个。

后来反馈模式窗口经常看不见,或者被桌面的其他东西挡住,切不出来,而且主窗口没出来的时候,任务栏看不到程序主体,只在进程里面有。


所以想改为,先显示主窗口,然后再主窗口上层显示模式窗口。

但是软件并没有为主窗口设计界面,就是没有mainfrom。。。。只有maintable。。

如何实现?

旧代码如下:
afterprojectopen:
Forms("登录").open


Forms("登录")里面的确认按钮:
e.form.close

Forms("登录")的afterclose:
MainTable = Tables("指令单")

改为新代码如下:

MainTable = Tables("指令单")  这里并没有显示出主窗口。还是先显示了登录界面,并且任务栏看不见系统图标。
Forms("登录").open



[此贴子已经被作者于2024/7/24 10:43:21编辑过]

 回到顶部
帅哥,在线噢!
lur320
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1031 积分:8978 威望:0 精华:0 注册:2015/8/12 16:28:00
  发帖心情 Post By:2024/7/24 10:47:00 [只看该作者]

afterprojectopen:
BaseMainForm.open
Forms("登录").open

大概是思路就是这样, 但是basemainform没有open的指令。

怎么写?

 回到顶部
帅哥,在线噢!
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110858 积分:564240 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/7/24 10:55:00 [只看该作者]

没有用的,AfterOpenProject没有执行完毕是显示不了的。再说已经显示主界面,在登录也不合理。

把登录的模式窗口显示到任务栏即可,登录窗口afterload:
e.form.baseform.showintaskbar=true

 回到顶部
帅哥,在线噢!
lur320
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1031 积分:8978 威望:0 精华:0 注册:2015/8/12 16:28:00
  发帖心情 Post By:2024/7/24 11:00:00 [只看该作者]

主界面不加载数据,界面的按钮也是空的。这些和登录有关的是在登录界面的确定按钮里面,通过每个人的权限配置字符串抓取来后,逐一让主界面按钮可见或不可见,以及设定系统的权限。
每个按钮在点击的时候,都会和权限的全局变量进行比对。


哪如何在系统afteropenproject代码结束后,立刻显示登录的窗口?

就是模式窗口的打开不放在afteropenproject,放哪里可以在主窗口之后立刻显现?


[此贴子已经被作者于2024/7/24 11:01:09编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110858 积分:564240 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/7/24 11:09:00 [只看该作者]

放到计划管理

 回到顶部
帅哥,在线噢!
lur320
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1031 积分:8978 威望:0 精华:0 注册:2015/8/12 16:28:00
  发帖心情 Post By:2024/7/24 11:13:00 [只看该作者]

 搞定了,做了一个折中的。。
在systemidel里面做了这个,但是感觉没有立刻显现。

If Vars("loginsys") = False Then
    Forms("登录").open
    Vars("loginsys") = True
End If

 回到顶部