zoukankan      html  css  js  c++  java
  • <转载>C#中Show()和ShowDialog()的区别

    窗体和对话框要么是有模式的,要么是无模式的。“模式”窗体或对话框必须关闭或隐藏,然后您才能继续使用应用程序的其余部分。

    显示重要消息的对话框应始终是有模式的。模式对话框的一个示例是 Visual Studio 中的“关于”对话框。MessageBox是您可以使用的一个模式窗体。有模式对话框显示出来以后,那么开始打开的窗体或对话框就不能再获得焦点了。

    “无模式”窗体让您在此窗体与另一窗体之间变换焦点,而不必关闭初始窗体。用户在该窗体显示的同时可继续在任何应用程序的其他位置工作。例如:文本编辑软件里面的搜索功能,就是一个无模式的,因为搜索对话框出来以后,还可以操作编辑本文,即它不影响其他窗体获得焦点。

      将窗体显示为有模式对话框用form1.ShowDialog()方法。这个方法有一个可选参数 owner,该参数可用于指定窗体的父子关系。例如:

    在Form1代码段中:

    Form2 f2=new Form2();

    f2.ShowDialog(this);//this表示Form1当前实例

    这样f2实例就和Form1实例建立了一个父子关系,可以相互通讯。

    如果没有使用f2.ShowDialog(this)而直接使用的是无参的,要定义父子关系,则需要语句f2.owner=this;

     将窗体显示为无模式对话框则用form1.show()方法。

    注意   如果窗体显示为有模式,则在关闭该对话框之前,不执行 ShowDialog 方法后面的代码。但是,当窗体显示为无模式时,那么该窗体显示之后,会立刻执行 Show 方法后面的代码。

    转自:<maicar1235>

  • 相关阅读:
    卷积神经网络之ResNet网络模型学习
    进程调度
    进程基础知识
    顺序栈链栈
    图的基本概念和术语
    关系数据库SQL复习
    关系数据库域关系演算语言QBE
    关系数据库元组关系演算语言ALPHA
    关系数据库关系模型、数据结构、完整性、关系代数
    数据库数据模型和系统结构
  • 原文地址:https://www.cnblogs.com/ChangTan/p/1772975.html
Copyright © 2011-2022 走看看