2014-09-03 66 views
1

我正在製作病毒掃描程序(開始製作一個),但我將JProgressBar設置爲不確定模式,並且setString(String str)方法不顯示字符串。如果我不使用不確定的進度條,則字符串顯示正常。不確定JProgressBar不顯示字符串

編輯: 一些代碼:

import javax.swing.JFrame; 
import javax.swing.JProgressBar; 

public class Testthing { 
    public static void main(String[] args) { 
     JFrame frame = new JFrame(); 
     JProgressBar bar = new JProgressBar(0, 100); 
     bar.setIndeterminate(true); 
     bar.setStringPainted(true); 
     bar.setString("Testing"); 
     frame.add(bar); 
     frame.setDefaultCloseOperation(3); 
     frame.setSize(500, 500); 
     frame.setLocationRelativeTo(null); 
     frame.setVisible(true); 
    } 
} 

此代碼創建以下框架: Frame image

+0

給我們一些代碼。 – AndreDuarte 2014-09-03 18:51:50

+1

@AndreDuarte你走了! – 2014-09-04 01:35:19

+0

您提供的代碼適用於我的機器,您運行的是哪種操作系統,jdk供應商和版本。 – pfranza 2014-09-04 11:41:36

回答

1

你要記得設置setStringPainted(true)爲true。 The default value is false

import java.awt.FlowLayout; 
import javax.swing.JFrame; 
import javax.swing.JProgressBar; 

public class ProgressBar { 
    public static void main(String[] args) { 
    JProgressBar progressBar = new JProgressBar(); 
    progressBar.setIndeterminate(true); 
    progressBar.setString("Loading..."); 
    // This is the important line 
    progressBar.setStringPainted(true); 


    JFrame f = new JFrame(); 
    f.setLayout(new FlowLayout()); 
    f.add(progressBar); 
    f.pack(); 
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    f.setResizable(false); 
    f.setLocationRelativeTo(null); 
    f.setVisible(true); 
    } 
} 
+0

這沒有幫助。抱歉。查看修改。 – 2014-09-04 03:25:47

+0

我提供的代碼示例是否適合您? – pfranza 2014-09-04 11:39:37