簡體   English   中英

設置進度條的值時為什么會得到NPE?

[英]Why do I get a NPE when setting the value of a progressbar?

我有一個程序,現在可以調用另一個類來處理下載。 這是獲取下載百分比並為其設置進度條值和標簽的主要代碼。

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 行,我不知道為什么,為什么會這樣?

我會假設progressBarnull因為此時尚未設置它,或者您設置的值被局部變量隱藏了。

聽起來progressBar變量為null ,請確保在代碼的前面為該變量分配了一個值。 您可以通過進行一些調試來驗證這是問題所在。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM