该窗体程序有一个托盘图标,所用窗体是VS默认的样式。希望程序运行时只显示托盘图标,不显示主窗体,该如何设置?主窗体名称为Timer。

解决方案 »

  1.   

    窗体实例名.hide()不要用Timer,和System.Threading.Timer不容易区分
      

  2.   

    在程序主窗体的Shown事件中添加代码:  this.Hide();
      

  3.   

    public partial class Timer : Form
    {
        private NotifyIcon ni;    public Timer()
        {
            InitializeComponent();        // 实例化图标组件
            this.ni = new NotifyIcon();
            this.ni.Icon = 指定托盘区图标;
            this.ni.Visible = true;
            // 设置窗体样式
            this.WindowState = FormWindowState.Minimized;
            this.ShowInTaskbar = false;
        }    protected override void OnShown(EventArgs e)
        {
            base.OnShown(e);
            // 设置隐藏
            this.Visible = false;
        }
    }
      

  4.   


       static void Main()
            {
                MyMainForm = new MainForm();
                Application.Run(MyMainForm);
                MyMainForm.Hide();
            }不起效果呀。这个窗体是VS的默认窗体,上面有最小化、最大化和关闭按钮的
      

  5.   

    在窗体的构造函数里面写
    this.ShowInTaskbar = false;
    this.FormBorderStyle = FormBorderStyle.None;
      

  6.   

    这是没效果的,因为根本就执行不到 MyMainForm.Hide() 这行,用4楼的方式
      

  7.   


    protected override void OnShown(EventArgs e)
            {
                base.OnShown(e);
                this.Visible = false;
            }