Foxtable(狐表)用户栏目专家坐堂 → [讨论]2个模式窗口相互切换不正常的现象?


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

主题:[讨论]2个模式窗口相互切换不正常的现象?

帅哥哟,离线,有人找我吗?
新福星
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1959 积分:15526 威望:0 精华:0 注册:2011/7/16 20:59:00
[讨论]2个模式窗口相互切换不正常的现象?  发帖心情 Post By:2022/2/17 10:30:00 [只看该作者]

A&B 2个模式类型的窗口,在各自窗口中的标签加入如下双击事件:
  B窗口如下代码
        e.Form.Close     
        Forms("A").open

  A窗口如下代码
        e.Form.Close     
        Forms("B").open
第一轮切换是正常的。
在模式窗口下如下表现:
比如先打开A窗口,双击A窗口标签可以打开B窗口,然后再双击B窗口标签,就无法打开A窗口了。
同理打开B窗口,双击B窗口标签可以打开A窗口,然后再双击A窗口标签,就无法打开B窗口了。
窗口AfterLoad事件里有  e.Form.BaseForm.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None


但是在独立窗口可以无限的来回切换。

   
    

 回到顶部
帅哥哟,离线,有人找我吗?
程兴刚
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7237 积分:40614 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2022/2/17 10:43:00 [只看该作者]

将e.form换成forms(“xx”)试试

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107739 积分:548028 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/2/17 10:51:00 [只看该作者]

模式窗口是阻塞式的,不能这样用。先打开的模式窗口不能关闭,只能隐藏。无法来回切换的

比如先打开A窗口,然后打开B窗口,B窗口要重新打开A窗口,需要把B窗口关闭,然后显示A窗口。

A窗口打开B窗口的按钮
e.Form.baseform.hide 
Forms("B").Show

B窗口的打开A窗口的按钮
Forms("A").Show
e.Form.close

 回到顶部
帅哥哟,离线,有人找我吗?
新福星
  4楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1959 积分:15526 威望:0 精华:0 注册:2011/7/16 20:59:00
  发帖心情 Post By:2022/2/17 11:11:00 [只看该作者]

谢谢!但是没有看明白!希望是可以无限循环切换。
是不是AB窗口切换程序应该是对称的吧?
实际语句是下面这样的
  Forms("登录窗口").Close
    If  Forms("身份证登陆").opened Then
        Forms("身份证登陆").show       
    Else     
        Forms("身份证登陆").open
    End If




 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


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

模式窗口是阻塞式的,无法来回切换的。阻塞式意思就是在这个窗口里的所有操作没有完成前,窗口是无法关闭的。A模式窗口双击打开B模式窗口,在B模式窗口关闭之前,A模式窗口双击事件就不算结束,因为消息循环被B模式窗口阻塞,只有B窗口关闭了,A窗口的双击事件执行才算真正结束

希望是可以无限循环切换还是使用独立窗口吧

 回到顶部