【问题标题】:How to close BalloonTip programmatically?如何以编程方式关闭 BalloonTip?
【发布时间】:2011-07-15 22:36:13
【问题描述】:

我的应用程序中有一个托盘图标。当我在后台加载某些内容时,我将显示气球提示 20 秒。但是,如果后台加载提前完成,比如在 10 秒内,我想隐藏气球提示。目前隐藏气球提示的唯一方法是点击气球提示中的关闭图标。

    Public Tray As NotifyIcon
    Tray = New NotifyIcon

    Tray.BalloonTipIcon = ToolTipIcon.Info
    Tray.BalloonTipText = "Loading"
    Tray.BalloonTipTitle = "Please Wait"
    Tray.ShowBalloonTip(20 * 1000)

是否可以在到达指定时间之前以编程方式隐藏气球提示?

【问题讨论】:

    标签: .net vb.net system-tray trayicon


    【解决方案1】:

    试试这个:

    Tray.Visible = true;
    

    更多信息here。

    希望有所帮助!

    【讨论】:

      【解决方案2】:

      当然有更好的方法来做到这一点。 “请稍候”类型的反馈最好使用进度条或沙漏鼠标光标来完成。您可以通过在任务栏按钮中显示进度来使用 Windows API 代码包使其在 Win7+ 上更加出色。

      无论如何,您可以通过显示另一个带有短暂超时的气球或隐藏通知图标来弹出一个气球。

      【讨论】:

      • 这不是本次讨论的内容。也许提问者只是在用这个例子?
      【解决方案3】:

      您可以随时隐藏气球提示(可见属性)。

      请注意,托盘图标和气球是由 explorer.exe(“开始菜单栏”)拥有和控制的,所以如果你没有正确清理它,它会一直留在那里。你需要主动告诉它消失。为气球设置一个计时器只是告诉探索者展示它的时间。您需要主动发送反消息才能将其隐藏。

      【讨论】:

        【解决方案4】:

        我个人认为打电话会更容易

        Tray.Show(0);
        

        这应该强制它立即隐藏托盘气球而不隐藏托盘图标本身......

        【讨论】:

          【解决方案5】:

          至少在当前使用 .Net Framework 4 客户端配置文件的 Windows 8.1 上,
          在保持 System.Windows.Forms.NotifyIcon notifyIcon1 可见的同时弹出 BallonTip
          想要背靠背:

              notifyIcon1.Visible = false;
              notifyIcon1.Visible = true;
          

          【讨论】:

            猜你喜欢
            • 2015-11-26
            • 2020-07-08
            • 2013-07-04
            • 2010-11-17
            • 2016-03-08
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多