C# 不可测外部过程的渐近进度条?

C# 不可测外部过程的渐近进度条?,c#,vb6,progress-bar,C#,Vb6,Progress Bar,当一个程序正在等待一个外部进程完成,并且无法测量其进度时,进度条应该做什么 我注意到这个答案暗示了一个字幕风格的进度条: 但是,如果有一个渐进的进度条,它会越来越慢,直到因为像素不能变得无穷小而停止。这是一个好主意吗?您将如何实施它 请用VB6和C#中的一种或两种语言回答。您可以表示进度,也可以不表示进度。如果这是一个“无法测量的外部过程”,那么你就不能。因此,由您自己决定进度条可以做什么,没有“应该”——这是一种设计选择。在我个人看来,一个简单的循环就可以了(螺旋?)-我不想让我的动画过渡到某

当一个程序正在等待一个外部进程完成,并且无法测量其进度时,进度条应该做什么

我注意到这个答案暗示了一个字幕风格的进度条:

但是,如果有一个渐进的进度条,它会越来越慢,直到因为像素不能变得无穷小而停止。这是一个好主意吗?您将如何实施它


请用VB6和C#中的一种或两种语言回答。

您可以表示进度,也可以不表示进度。如果这是一个“无法测量的外部过程”,那么你就不能。因此,由您自己决定进度条可以做什么,没有“应该”——这是一种设计选择。在我个人看来,一个简单的循环就可以了(螺旋?)-我不想让我的动画过渡到某种可以给人留下印象的东西,那就是进步已经达到了可测量的程度


编辑:我无法评论渐进进度条是否合适——我不知道它是什么。

你可以表示进度,也可以不表示进度。如果这是一个“无法测量的外部过程”,那么你就不能。因此,由您自己决定进度条可以做什么,没有“应该”——这是一种设计选择。在我个人看来,一个简单的循环就可以了(螺旋?)-我不想让我的动画过渡到某种可以给人留下印象的东西,那就是进步已经达到了可测量的程度


编辑:我无法评论渐进进度条是否合适——我不知道它是什么。

你不应该使用这种渐进进度条。您应该使用“不确定进度条”(请参见以下链接)

Microsoft用户体验(UX)设计指南为进度条提供了明确的规则:

使用不确定进度条进行需要 无限长的时间或访问未知数量对象的时间。 使用超时为基于时间的操作提供边界

(精彩部分由我介绍。)

  • 明确表示缺乏进展。进度条必须 如果没有进展,就不能前进。您不希望用户等待 对于一个永远不会完成的操作,它是无限期的
[编辑]

为了更好的易读性,我在此添加我从评论中添加的信息

WPF中的演练:如何实现

另外,如果您想使用动画,Visual Studio会在所有版本(我认为Express版本除外)中提供一个图标库,并允许您在项目中使用这些图标: . 您必须首先从ZIP格式中提取它们,但我相信您将掌握这项任务


然后,您可以在子文件夹
\Animations

中找到一个GIF动画
status\u anim.GIF
,您不应该看到这样的渐进进度条。您应该使用“不确定进度条”(请参见以下链接)

Microsoft用户体验(UX)设计指南为进度条提供了明确的规则:

使用不确定进度条进行需要 无限长的时间或访问未知数量对象的时间。 使用超时为基于时间的操作提供边界

(精彩部分由我介绍。)

  • 明确表示缺乏进展。进度条必须 如果没有进展,就不能前进。您不希望用户等待 对于一个永远不会完成的操作,它是无限期的
[编辑]

为了更好的易读性,我在此添加我从评论中添加的信息

WPF中的演练:如何实现

另外,如果您想使用动画,Visual Studio会在所有版本(我认为Express版本除外)中提供一个图标库,并允许您在项目中使用这些图标: . 您必须首先从ZIP格式中提取它们,但我相信您将掌握这项任务


然后,您可以在子文件夹
\Animations

中找到一个GIF动画
status\u anim.GIF
,但不确定它是否会改善用户体验。据我所知,如果没有明显的指标来确定任务需要多长时间,标准是使用微调器。不管怎样,这就是我所做的。基本上,任何一种形式的ProgressBar都不会告诉你“沙漏光标”已经没有意义了。只需使用它。进度条越来越慢会给用户留下不好的印象,我只需使用动画图像(如AJAX微调器)来显示您的应用程序正忙且仍在工作,只需让用户知道发生了什么,而不是怀疑它是否仍在工作。在现代版本的Windows上,“沙漏光标”将采用“AJAX微调器”、“旋转等待光标”等时尚外观。所以(VB6)只需执行
Screen.MousePointer=vbHourglass
,然后继续实现一些实际功能:)哼,不确定它是否真的能改善用户体验。据我所知,如果没有明显的指标来确定任务需要多长时间,标准是使用微调器。不管怎样,这就是我所做的。基本上,任何一种形式的ProgressBar都不会告诉你“沙漏光标”已经没有意义了。只需使用它。进度条越来越慢会给用户留下不好的印象,我只需使用动画图像(如AJAX微调器)来显示您的应用程序正忙且仍在工作,只需让用户知道发生了什么,而不是怀疑它是否仍在工作。在现代版本的Windows上,“沙漏光标”将采用“AJAX微调器”、“旋转等待光标”等时尚外观。所以(VB6)只需执行
S即可