0

我有一个程序现在调用另一个类来处理下载。这是获取下载百分比并设置进度条值和标签的主要代码。

byte data[] = new byte[1024];
        int count;
        while ((count = in.read(data, 0, 1024)) != -1)
        {
            downloaded += count;
            downloadedPerc = (downloaded/getModPackSize())*100;
            System.out.println(downloadedPerc);
            progressBar.setValue(downloadedPerc);
            label.setText(downloadedPerc + "%");
            fout.write(data, 0, count);
        }

我在progressBar.setValue(downloadedPerc+1); 上得到一个NullPointerException;线,我不知道为什么,为什么会这样?

4

2 回答 2

0

我认为这progressBarnull因为此时尚未设置,或者您设置的值被局部变量隐藏。

于 2012-09-10T07:51:10.477 回答
0

听起来progressBar变量是null,请确保您在代码的前面为该变量分配了一个值。您可以通过进行一些调试来验证这是否是问题所在。

于 2012-09-10T07:51:55.997 回答