【发布时间】:2008-10-13 22:09:06
【问题描述】:
我正在开发一个基于表单的程序,但我被要求添加一些命令行支持,除了从命令行运行时表单会闪烁和关闭之外,它工作正常。无论如何在命令行运行时隐藏表单?有些代码确实引用了控件,所以 gui 需要可访问但不可见,这可行吗?
【问题讨论】:
标签: c# command-line
我正在开发一个基于表单的程序,但我被要求添加一些命令行支持,除了从命令行运行时表单会闪烁和关闭之外,它工作正常。无论如何在命令行运行时隐藏表单?有些代码确实引用了控件,所以 gui 需要可访问但不可见,这可行吗?
【问题讨论】:
标签: c# command-line
在您的 Main 方法中,您可以创建如下表单:
main = new MainForm();
然后进行所需的任何命令行处理。
当不在命令行模式时,只需调用:
Application.Run(main);
【讨论】:
我运行过的一些应用程序在表单类的构造函数中具有这种行为。基本上,当命令行参数的过程成功完成时,它们的构造函数处理命令行参数并调用 Environment.Exit(0)。在表单类的构造函数完成之前调用 Environment.Exit 可以有效地防止表单出现。
话虽如此,它很容易出错,我会说它一直没有作为应用程序启动的表单类。改用另一个类,它可以根据需要实例化和显示表单,或者改为处理命令行参数。
【讨论】: