我想实现单击notifyicon时,如果是左键,就把窗口的Visible取反,如果是右键,就弹出右键菜单。
但是我的contextMenuStrip.Show方法的参数不知道该如何设,他需要相对于屏幕的坐标,一般的控件我可以用他的PointToScreen来得到,可是NotifyIcon非继承自control,不晓得该怎么办。

解决方案 »

  1.   

      private void notifyIcon1_Click(object sender, EventArgs e)
           {
                if (this.Visible)
                    this.Visible = false;
                else
                    this.Visible = true;
                if (this.WindowState == FormWindowState.Minimized)
                    this.WindowState = preState;
                else
                    this.WindowState = FormWindowState.Minimized;
            }
    参考
      

  2.   


    多谢一楼,这个我会的
    主要是if(e.MouseButton == MouseButtons.Right)时 我要menuStrip1.Show,可是show的参数不知道该怎么算,也就是菜单弹出的屏幕点。
      

  3.   

    直接设置NotifyIcon的ContextMenuStrip属性不就行啦,不需要自己Show的,自己会出来
      

  4.   

    OK,搞定了,我以为自己处理单击事件会影响ContextMenu属性,呵呵,谢谢各位,结贴。