#利用DialogResult属性实现主程序的打开当前窗口的关闭

#利用DialogResult属性实现主程序的打开当前窗口的关闭利用DialogResult属性实现主程序的打开当前窗口的关闭首先介绍一下非模式化窗体show()和模式化窗体showdialog()的概念:两种方法都能打开显示窗体,1.非模式化窗体show()建立新窗口后仍能对原窗口进行操作,比如点击frm窗口上的“登录”按钮,会弹出FrmMain窗口,弹出后仍能对原窗口frm进行操作(移动,点击登录按钮等操作)2.模式化窗体showdialog()建…

大家好,又见面了,我是你们的朋友全栈君。

利用DialogResult属性实现主程序的打开当前窗口的关闭

首先介绍一下非模式化窗体show()和模式化窗体showdialog()的概念:
两种方法都能打开显示窗体,
1.非模式化窗体show()建立新窗口后仍能对原窗口进行操作,比如点击frm窗口上的“登录”按钮,会弹出FrmMain窗口,弹出后仍能对原窗口frm进行操作(移动,点击登录按钮等操作)
2.模式化窗体showdialog()建立新窗口FrmMain后在关闭本窗口前不能对原窗口frm进行任何操作,除非FrmMain窗口被关闭。
新建一个button按钮
在frm1窗体上新建一个button按钮,建立click事件

 private void button1_Click(object sender, EventArgs e)
        { 
   
            this.DialogResult = DialogResult.OK;
            this.Close();    //关闭当前窗口
        }

在主程序program.cs上码入

 FrmMain frm=new FrmMain();
            
            if (frm.DialogResult==DialogResult.OK)
            { 
   
                Application.Run(new FrmMain());
            }

分析:
点击button按钮后,当前模式窗体的dialogresult属性被设置为ok。关闭窗口(因为是showdialog,所以需要关闭当前窗口才能显示FrmMain窗口),然后执行if语句,运行FrmMain窗口。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/152200.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Pytest(16)随机执行测试用例pytest-random-order

    Pytest(16)随机执行测试用例pytest-random-order前言通常我们认为每个测试用例都是相互独立的,因此需要保证测试结果不依赖于测试顺序,以不同的顺序运行测试用例,可以得到相同的结果。pytest默认运行用例的顺序是按模块和用例命名的ASCII编码

    2022年7月30日
    7
  • 十二平均律与五线谱

    十二平均律与五线谱在第一讲中我们已经提到了纯八度 中央 do 和高音 do 想必朋友们已经用耳朵有了感性的认识 并知道纯八度的拍音是由频率比为 1 2 的两个单音构成 物理和数学的原因决定了纯八度的两个单音的频率比例 但这远远不足以构成音乐的 接下来我们就要学习如何在这两个单音之间产生更多的单音 在展开这些知识之前 本着理工科追本溯源的精神 我们先了解一下乐理是如何发展起来的 然后再谈理论 一 乐理发展史 之一人类的

    2025年6月30日
    4
  • jmeter测试并发200_jmeter并发测试实例

    jmeter测试并发200_jmeter并发测试实例相对并发和绝对并发相对并发:指在一个时间段内发生的事情 绝对并发:指在同一时刻发生的事情一:相对并发在jmeter的测试计划中添加线程组,设置线程属性,2秒之内启动2000个线程,其对应的相对并发为1000(线程数/启动时间)二:绝对并发一般使用同步定时器实现绝对并发,即当所有请求集合完毕之后一块出发1、jmeter线程组里面可以简单设置多线程,但是当你设置1秒钟50个线程时去看结果其实50个请求跑完并不是在1秒钟之内2、由于测试的机器本身性…

    2022年9月1日
    5
  • AcceptEx浅析

    AcceptEx浅析AcceptEx函数的定义如下:BOOLAcceptEx(  SOCKETsListenSocket,       SOCKETsAcceptSocket,       PVOIDlpOutputBuffer,       DWORDdwReceiveDataLength,   DWORDdwLocalAddressLength,   DW

    2022年9月29日
    3
  • 搭建lnmp=(nginx+mysql+php)

    搭建lnmp=(nginx+mysql+php)

    2021年8月17日
    49
  • executescalar mysql_ExecuteScalar

    executescalar mysql_ExecuteScalar这两个答案和一点点思考使我想到了一个接近答案的东西。首先再澄清一下:该应用程序是用C#(2.0+)编写的,并使用ADO.NET与SQLServer2005进行通信。镜像设置是托管主体和镜像的两个W2k3服务器以及托管作为监视器的快速实例的第三个服务器。这样做的好处是,故障转移对于使用数据库的应用程序几乎是透明的,它将对某些连接引发错误,但从根本上讲一切都会很好地进行。是的,我们得到了奇怪的误报…

    2022年6月30日
    23

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号