繁体   English   中英

如何在任务栏中的图标上添加点击事件?

[英]How do i add a click event on an icon in the taskbar?

我的Form1显示在底部的任务栏中。 我希望当我点击图标时它会做一些事情。 不是最大化形式,而是做其他事情。

我有一个form1点击事件:

private void Form1_Click_1(object sender, EventArgs e)
        {
            notifyIcon1.Visible = true;
            notifyIcon1.ShowBalloonTip(30000);
        }

但这只有在表单最大化时单击表单时才有效。 我希望它只在我点击任务栏中的图标时才能工作。 右下角不是托盘图标,而是底部的任务栏上。

编辑**

我在任务栏中找不到表单图标的任何点击事件我到目前为止所做的是使用form1 resi8ze事件并且做了:

private void Form1_Resize(object sender, EventArgs e)
        {
            if (WindowState == FormWindowState.Normal)
            {
                this.WindowState = FormWindowState.Minimized;
                notifyIcon1.Visible = true;
                notifyIcon1.ShowBalloonTip(30000);

            }
        }    

我也在Form1 Load事件中做过:

this.WindowState = FormWindowState.Minimized;

因此现在的结果是,当我运行程序时,表单图标始终位于任务栏中,表单永远不会最大化调整大小或打开。 当我点击任务栏中的图标时,气球提示工作正常。

现在的问题是:

  1. 将鼠标移到图标上时,以某种方式删除窗体的窗口。
  2. 锁定/禁用/避免用户多次单击该图标。 用户点击图标后等待5分钟并再次启用它。

我认为您需要熟悉WindowsAPICodePackTaskbar API 我从来没有完成你所需要的,但这些是非常强大的API,可能会派上用场。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM