问题标签 [progressmonitor]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
eclipse-plugin - Eclipse Jobs API:如何跟踪另一个作业安排的作业的进度?
为安排和加入另一个 Eclipse 作业的 Eclipse 作业使用进度监视器的正确方法是什么?我希望子任务与主要任务相关联。
理想情况下,我希望能够告诉子任务使用SubProgressMonitor
从主监视器创建的运行,但是我看不到这样做的方法。我查看了该Job.setProgressGroup(..., ...)
方法,但文档表明该组应该使用IJobManager.createProgressGroup()
.
这是上下文的代码片段:
java - Using Eclipses Progress Monitor Window in a standalone Application
I'm writing an SWT/JFace application and was wondering if it is possible to use the Progress Monitor Window from Eclipse in my standalone application. For clarification: I'm speaking of this:
and not the ProgressMonitorDialog
.
If this is not easily achievable, what would be an easy way to implement this for my own?
java - 单击“在后台运行”后返回进度监视器对话框
我有一个这样的用户工作:
当此作业开始时,我会看到一个带有 3 个按钮的进度对话框:在后台运行、取消和详细信息,显示作业的进度。这也显示在状态栏上。如果我按“在后台运行”,对话框将被隐藏,但您仍会在状态栏上看到进度。如果我想取消作业,我不能再取消了,因为即使我按下状态栏中的小按钮(在进度视图中显示后台操作)也无法再次显示对话框。
如果有人可以帮助我,我会很高兴:)。
java - 摇摆进度监视器不工作
我正在尝试学习ProgressMonitor
Java Swing。我创建了这个简单的测试代码 -
}
关于这个的几个问题——
如果我取消
isFrameReady
选中,程序NullPointerException
会在我分配按钮的动作侦听器的那一行显示 a。如果我保留上述检查,则单击该按钮不会执行任何操作。
保持上述检查然后调试它,我让它等待一段时间,然后它到达动作监听器所在的行。在这种情况下,它可以工作,但会立即退出,说它不能
invokeAndWait
从事件处理线程调用。
我在这一切中缺少什么?有人可以解释如何让它工作。
java - 为什么 ProgressMonitor 在第二次调用时不显示?
我编写了一个程序,它使用默认 java 运行时中的进度条类。它完美地工作,除了它只工作一次。我用它来显示加载到我的 GUI 中的各种图像,它在启动时运行良好。但是,一旦我再次调用它,它只会显示一个没有内容的 JFrame。我可以拖动 JFrame 和一切,只是它不会显示任何东西。考虑到它在第一次运行时有效,但之后就不行了,这很奇怪。这是我的代码:
关于如何解决它的任何想法?
java - 如何在 Swing 中刷新 ProgressMonitor?
ProgressMonitor
旨在处理长操作,但如果直接使用,则不会刷新。
java - 以线程安全的方式使用 ExecutorService 和 ProgressMonitor
我首先定义 ProgressMonitor:
并在同一线程上使用 ExecutorService 和 invokeAll() 来处理 Callables 列表:
每个 Callable 的形式为:
IE; 每个 Callable 调用 progressBarUpdate():
每个 doSomeStuff() 都有自己的异常处理,如果发生错误或抛出异常,则返回空值。这就是为什么返回类型是 List 并且在这种情况下返回 null 的原因。Callables 和它们返回的文件列表之间没有交叉,它们都在那里维护自己的文件列表。
我发现它工作正常,但偶尔会抛出以下形式的 InterruptedException:
显示达到监视器最大值时 setProgress() 调用 close() :
并且 close() 包含许多其他非线程安全调用。
我已经修改了我的代码,因此不满足条件 nv>=max 并且我在 invokeAll() 之后显式调用 ProgressMonitor.close(),但我仍然不相信这种方法是完全线程安全的。
有没有其他人遇到过这种情况并找到了坚如磐石的解决方案?
谢谢
格雷厄姆
PS。请注意,ProgressMonitor 不是 Swing 小部件,而是封装了 Swing 组件。因此,我确保 ProgressMonitor 不在 EDT 上运行。
java - ProgressMonitorInputStream 不会在 SwingWorker 中更新
我正在尝试从我的 GUI 应用程序中创建一个简单的实用程序,用于从网站获取数据。特别是其中一个网站的加载时间非常长。所以我决定最好使用 ProgressMonitorInputStream 来通知用户我的程序没有简单地冻结。但是,我一直遇到它阻止 EDT 的问题。为了解决这个问题,我添加了一个 SwingWorker,但现在程序根本无法显示 ProgressMonitor 更新。我究竟做错了什么?
java - 如何通过进度监视器到几个子程序?
假设我有一个 API 方法,该方法旨在执行长期操作,因此接收监视器作为参数,如
如果我在这个方法中有一个操作要做,我会编写代码,例如,写一个图像
但是,如果我在 single 中执行几个长期子例程doSave
怎么办?如何使该监视器以 50% 或其他方式测量每个?
java - 如何在 Eclipse 插件中的 IProgressMonitor 中精确设置?
该方法org.eclipse.core.runtime.IProgressMonitor.worked(int)
接收表示增量的整数。这意味着,唯一可用的单位是自然单位。例如,它不能是百分比。
所以,如果我在作业中处理一些文件,我不能报告计数阶段,因为我应该调用的第一个方法是org.eclipse.core.runtime.IProgressMonitor.beginTask(String, int)
需要我知道总量。
如何实现?
更新
我在下面写了一个包装器,但这看起来很荒谬,需要这样做: