zoukankan      html  css  js  c++  java
  • 登陆窗体的模式与非模式显示

                 今天做机房收费系统时,调试了半天窗体也不能显示,只是代码运行一遍就自动关闭了,一点一点的调试运行才找到问题的原因,因为,窗体的模式与非模式显示没有设置好。

    Sub main()
        
        Dim frmLoginchild As New frmLogin
        frmLoginchild.Show vbModal   '登陆窗体以模式方式登陆,这个窗体不卸载或隐藏,则下面的代码不运行
        '判断登陆窗体是“确定”还是“取消”
        If Not frmLoginchild.Ok Then
            
            End
            
        End If
        
        Unload frmLoginchild
        frmMainForm.Show                  '显示主窗体界面
      
    End Sub
             开始,我忘了把登陆窗体设置成模态方法,窗体总是执行一遍就迅速卸载,模式设置对于应用程序有时是非常有用的,对于登陆窗体如果,不设置模态,想使它实现判断是否执行的功能,可以用API函数实现,具体也不太清楚,实现起来应该会比这种方式麻烦些。

              把登陆窗体模式化后,发现主窗体还是显示不出来,想了一下,可能是设置成模式窗体的原因    

    Show 方法

    用以显示 MDIForm Form 对象。不支持命名参数

    语法

    object.Show style, ownerform

    Show 方法的语法包含下列部分:

    部分 描述
    object 可选的。一个对象表达式,其值为“应用于”列表中的一个对象。如果省略 object则与活动窗体模块关联的窗体缺省为 object
    Style 可选的。一个整数,它用以决定窗体是模式还是无模式 。如果 style 为 0,则窗体是无模式的;如果 style 为 1,则窗体是模式的。
    ownerform 可选的。字符串表达式,指出部件所属的窗体被显示。对于标准的Visual Basic 窗体,使用关键字 Me。

    说明

    如果调用 Show 方法时指定的窗体没有装载,Visual Basic 将自动装载该窗体。

    Show 在显示无模式窗体时,随后遇到的代码则要执行。Show 在显示模式窗体 (modal form) 时,则随后的代码直到该窗体被隐藏或卸载时才能执行。

    Show 在显示模式窗体时,除了模式窗体中的对象之外不能进行输入(键盘或鼠标单击)。对其它窗体进行输入前程序必须隐藏或卸载模式窗体(通常是处于响应用户某些操作状态)。MDIForm 不能是形式的。

    在模式窗体显示时,虽然应用程序中的其它窗体失效,但其它应用程序不会失效。

    应用程序的启动窗体在其 Load 事件调用后会自动出现。

    下面的例子说明如何使用ownerform 参数:

    Private Sub cmdShowResults_Click()
       ' 显示模式窗体 frmResults.
       frmResults.Show vbModal, Me
    End Sub
         然后,我把登陆窗体成功验证后面,加上了隐藏窗体,于是,程序就可以正常显示出来了,有时一点点代码在程序中却起着,很重要的作用,还需要我们认真思考代码如何运行?运行的原因?我们才能找到问题的答案。
    
    
    
    
    
    
  • 相关阅读:
    C语言不进行类型检查 和函数能够不进行前向声明
    EventBus 《二》 Android EventBus的简单使用
    android开发之SnackBar的使用
    iOS语音播放之切换听筒和扬声器
    使用NSURLConnection的网络请求与封装
    Mina Basics 02-基础
    Mina Basics 02-基础
    jquery移除事件,绑定事件,触发事件
    jquery移除事件,绑定事件,触发事件
    jquery移除事件,绑定事件,触发事件
  • 原文地址:https://www.cnblogs.com/lilongsheng1125/p/4978697.html
Copyright © 2011-2022 走看看