【问题标题】:Show a progressbar in taskbar while form is minimized表单最小化时在任务栏中显示进度条
【发布时间】:2012-02-13 02:31:02
【问题描述】:

我想知道如何完成以下操作:

我想在我的窗口最小化时在任务栏上显示进度条的进度。请参阅here 以获得视觉描述。

看看任务栏上的图标是如何随着窗口中的主进度条逐渐变成绿色的?

谁能告诉我该怎么做?

更新:

我下载了 windows api 代码包并在我的项目中引用它并编写了以下代码,但是当我运行我的应用程序时没有任何反应,增加 pbar 并最小化:

    private void updatepbar()
    { 
        tpb.Value = progressBar1.Value;
    }

        timer1.Tick += new EventHandler(delegate { updatepbar(); });
        timer1.Interval = 1000;
        timer1.Start();

我做错了什么? 非常感谢

【问题讨论】:

标签: c# winforms windows-7 progress-bar minimized


【解决方案1】:

http://windowsteamblog.com/windows/b/developers/archive/2009/07/28/windows-7-taskbar-dynamic-overlay-icons-and-progress-bars.aspx

Taskbar.ProgressBar.State = 
(TaskbarButtonProgressState)Enum.Parse(
        typeof(TaskbarButtonProgressState), 
        (string)comboBoxProgressBarStates.SelectedItem);

if (Taskbar.ProgressBar.State != TaskbarButtonProgressState.Indeterminate)
   Taskbar.ProgressBar.CurrentValue = progressBar1.Value;

【讨论】:

    【解决方案2】:

    它仅适用于 Windows7,您可以轻松使用 Microsoft-Api。

    WindowsTeamBlogMSDN 上的一个很好的例子来解释。

    【讨论】:

      【解决方案3】:

      您可以在主窗体中使用标准进度条 - Windows 7 会检测到它并自动在任务栏上模仿它:

      来自http://windowsteamblog.com/windows/b/developers/archive/2009/07/28/windows-7-taskbar-dynamic-overlay-icons-and-progress-bars.aspx

      如果您已在应用程序顶部使用标准进度条 水平窗口,DMW 将拾取它并默认显示其 进度作为应用程序顶部的叠加层。但是,您可以 以编程方式控制您的进度条行为 应用程序的图标。

      【讨论】:

      • 虽然这是我的情况,但我没有看到这样的效果。我的主窗体中有一个进度条,但是当我最小化我的应用程序时没有任何反应。
      猜你喜欢
      • 1970-01-01
      • 2010-12-14
      • 2011-10-15
      • 2012-12-27
      • 1970-01-01
      • 1970-01-01
      • 2013-07-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多