代码之家  ›  专栏  ›  技术社区  ›  r4ccoon

CSharp WinForm模式窗口,可点击主窗口

  •  0
  • r4ccoon  · 技术社区  · 15 年前

    语言C,WinForm

    我该如何创建一个模态窗口或当它仍然显示 我仍然可以单击或与主窗口交互。

    谢谢。

    请输入一些代码或链接。

    5 回复  |  直到 15 年前
        1
  •  1
  •   MusiGenesis    15 年前

    只需使用将窗体作为参数的Form.Show()的重载,如下所示:

    Form f = new Form();
    f.Show(this);
    

    这将使窗体始终位于调用它的窗体之上,但仍允许您单击并访问调用窗体。

        2
  •  3
  •   Thomas Levesque    15 年前

    使对话框非模态(使用 Show 而不是 ShowDialog 使它成为最顶级的( TopMost = true )

        3
  •  1
  •   sindre j    15 年前

    我想这里有些混乱;

    模式是当窗口阻止基础窗口时,必须关闭该窗口才能使基础窗口重新获得控制权。Form.ShowDialog(所有者)用于完成此操作。

    非模态是一个与底层窗口“并行”打开的窗口。两个窗口都可以访问并响应鼠标和键事件。显示(所有者)以完成此操作。

        4
  •  0
  •   Nikolay R    15 年前

    根据定义,Modality意味着您无法单击其他任何地方。您可以创建另一个窗体并用show()方法显示它。

        5
  •  0
  •   Sherwin    15 年前

    show()方法允许您单击任何地方,而showdialog()不允许