启动任务后更新进度条最大值

时间:2019-05-07 21:49:55

标签: java swing swingworker

我正在寻找一种更新进度条最大值的方法。我想使用确定进度条来确定是否正确。我在下面设置了

public V remove(Object key)
{
    int h = hashFunction(key);

    while (elementData[h] != null)
    {
        if (elementData[h].getKey() != null && elementData[h].getKey().equals(key)) // linear probing to search
        {
            V store;
            store = elementData[h].value;
            elementData[h] = REMOVED;
            size--;
            return store;
        }
        h = (h + 1) % elementData.length;
    }
    return null;
}

目前,我不知道进度条的最大值。在Runner下方的块中,是SwingWorker的子类。直到该过程开始后,我才知道进度条的最大值。

1. via baking image (i,e making AWS CLI as part of Base AMI itself)
2. via cloud init
3. Install it as pre-req just before your service bootstraps.

我已经尝试过使用此方法,以后再进行或不进行调用。

final JDialog dialog = new JDialog(frame, "Progress Dialog", true);
progressBar = new JProgressBar(0, 500);
progressBar.setIndeterminate(false);
dialog.add(BorderLayout.CENTER, progressBar);
dialog.add(BorderLayout.NORTH, new JLabel("Progress..."));
dialog.setDefaultCloseOperation(JDialog.DO_NOTHING_ON_CLOSE);           dialog.setSize(300, 75);
dialog.setLocationRelativeTo(frame);

对我来说,invokeLater将不起作用,因为该任务尚未完成。我花了一天的大部分时间来尝试使此进度栏正常工作。任何帮助或方向改变将不胜感激!

1 个答案:

答案 0 :(得分:0)

上面的评论很棒!