2017-04-10 162 views
0

我正在嘗試使用JProgressBar作爲簡單遊戲的健康欄。我試圖讓它充滿並且可以啓動程序。這是我的代碼JProgressBar的:JProgressBar沒有顯示正確

progressBar = new JProgressBar(); 
    progressBar.setMinimum(0); 
    progressBar.setMaximum(model.user.getTotalHp()); 
    progressBar.setValue(model.user.getTotalHp()); 
    progressBar.setForeground(Color.GREEN); 
    progressBar.setString(model.user.getHp() + "/" + model.user.getTotalHp()); 
    progressBar.setBounds(450 + insets.left, 370 + insets.top, 
      size.width+40, size.height + 45); 
    add(progressBar); 

這是結果:https://gyazo.com/4e6fc1879597ba67495bda183dbbf212 我在做什麼錯了,這不是完整的,綠色的,或者有內部的字符串。

回答

1

的字符串不畫,因爲你需要調用這個第一:

progressBar.setStringPainted(true); 

我用下面的代碼和進度條渲染罰款:

JFrame frame = new JFrame("test"); 
JProgressBar progressBar = new JProgressBar(); 
progressBar.setMinimum(0); 
progressBar.setMaximum(100); 
progressBar.setValue(50); 
progressBar.setForeground(Color.GREEN); 
progressBar.setString("50/100"); 
progressBar.setStringPainted(true); 
frame.add(progressBar); 
frame.setVisible(true); 

也許你總要來了作爲0或可能是一個浮點四捨五入到0.

+0

感謝這真的有幫助 –

+0

如果它回答這個問題,請考慮標記爲接受的答案,謝謝! – Charlie