创建通知图标表单

时间:2013-04-16 17:47:30

标签: c# winforms notifyicon notification-area

我是C#的新手,但我已经坚持了下来,并开始了我的第一个正确的计划。该程序由通知区域中存在的Notify Icon组成,单击该表单后,该表单将显示一段时间。

到目前为止,我已经拥有它所以程序启动(没有显示表单(这是一个FixedSingle所以它只显示为灰色框),但创建图标),并注册MouseClick事件,但这是我陷入困境的地方。我试图得到它,以便在单击图标时,该框将显示在通知区域的上方/旁边(直到发生模糊事件,或来自表单上的对象的事件),但是在谷歌搜索后半部分之后一个小时左右,我没有找到解决方案,可能是因为我不知道正确的话。

那么,有没有人知道需要发送什么命令才能使表格暂时出现在正确的坐标中(相对于通知区域)?

其他

我已将static void Main()修改为以下内容:

Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
new frmMain();
Application.Run();

所以new frmMain()作为它自己的实体存在,而不是作为Application.Run()的参数

修改

Righto,刚刚发现我可以使用this.Show()显示表单并显示表单,并且它是相反的this.Hide()将隐藏它。但我仍然无法确定通知区域的坐标,以及如何计算表格的新坐标,以便在其旁边/上方显示。

1 个答案:

答案 0 :(得分:1)

您可以使用:

  1. Screen.PrimaryScreen
  2. Screen.WorkingArea

  3. System.Drawing.Rectangle workingRectangle = Screen.PrimaryScreen.WorkingArea;
    this.Left = workingRectangle.Width - this.Width;
    this.Top = workingRectangle.Height - this.Height;
    this.Show();
    

    只要点击通知图标,就需要调用上面的代码。