2017-04-10 7 views
0

JProgressBarを単純なゲームのヘルスバーとして使用しようとしています。私はプログラムを開始するためにそれがいっぱいに見えるようにしようとしています。これはJProgressBarのための私のコードです:、それはフルではありません、緑https://gyazo.com/4e6fc1879597ba67495bda183dbbf212 私が間違って何をやっている、または内部の文字列を持っている: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); 

これが結果です。

答えて

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

関連する問題