none
NotifyIcon的问题; RRS feed

  • 问题

  • 我用C#做的一个程序,里面用到了NotifyIcon控件,代码:

            private void notifyIcon1_Click(object sender, EventArgs e)
            {
                if (((MouseEventArgs)e).Button == MouseButtons.Left)
                {
                    notifyIcon1.Visible = true;
                    if (this.Visible)
                        this.Hide();
                    else
                    {
                        this.Show();
                        if (this.WindowState == FormWindowState.Minimized)
                            this.WindowState = FormWindowState.Normal;
                        this.Activate();
                    }
                }
            }

    目的就是用户单机通知图标的时候,显示/隐藏主窗口。在XP下没有问题,但是在WIN7下,不知道为何,当我第一次点通知图标的时候,它一定会消失不见。我必须点那个向上的小箭头,显示所有通知图标,此时再点通知图标才会按照我程序的去执行,这是为何?


    da jia hao!
    2011年4月28日 3:32

答案

  • Windows 7 中默认会把非系统图标全部自动隐藏到向上箭头的框中去,只会显示气球通知的时候图标才出来,如果您希望您的程序一直显示任务栏的小图标,请单击任务栏,并选择属性,然后找到 Notification Area,然后单击 Customize。在接下来的对话框中,选择您程序额图标,在右边下拉列表选择 Always show icon and notification。

    这个问题属于 Windows 版的,与 C# 及其程序无关。


    Mark Zhou
    2011年4月28日 7:39
  • dear
    这跟代买无关,跟您的OS设定有关,你可按下小箭头 → 设定 →  然后会跳出很多应用程式的图示,选择你要显示的城市 → 设定"显示图示及通知"
    秘訣無它,唯勤而已 http://www.dotblogs.com.tw/yc421206/
    2011年4月28日 12:07

全部回复

  • Windows 7 中默认会把非系统图标全部自动隐藏到向上箭头的框中去,只会显示气球通知的时候图标才出来,如果您希望您的程序一直显示任务栏的小图标,请单击任务栏,并选择属性,然后找到 Notification Area,然后单击 Customize。在接下来的对话框中,选择您程序额图标,在右边下拉列表选择 Always show icon and notification。

    这个问题属于 Windows 版的,与 C# 及其程序无关。


    Mark Zhou
    2011年4月28日 7:39
  • dear
    这跟代买无关,跟您的OS设定有关,你可按下小箭头 → 设定 →  然后会跳出很多应用程式的图示,选择你要显示的城市 → 设定"显示图示及通知"
    秘訣無它,唯勤而已 http://www.dotblogs.com.tw/yc421206/
    2011年4月28日 12:07
  • 但我其实是在图标处于活动状态的时候去点的,此时他就不应该消失啊。(我的程序的图标一般情况下是隐藏起来的,有时候会显示出来,如果这个时候我去点,图标就会消失,这明显不合理。。。)

    da jia hao!
    2011年4月29日 2:23