jLabel.setText doesn't?
Hello everyone,
I have a Swing program that functions as a wrapper around a command
line program.
As the command line program runs it outputs various status messages.
I'ld like to pump these messages into the GUI specifically a jLabel but
theres a problem.
Try as I might I can't seem to get jLabel.setText(line); to output the
messages even though there is a call to System.out.println(line) that
IS working.
Here is my function, it's a little mangled due to me trying lots of
things to get this to work. But I think it makes it's point clear
enough...
private int execMe(String[] args){
try
{
Runtime rt = Runtime.getRuntime();
Process proc = rt.exec(args);
InputStream is = proc.getInputStream();
try{
InputStreamReader isr = new
InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
String line=null;
while ( (line = br.readLine()) != null){
System.out.println(line);
jLabel3.setText(line);
int val = jProgressBar1.getValue();
if(val < 100){
jProgressBar1.setValue(val++);
}else{
jProgressBar1.setValue(0);
}
repaint();
}
jProgressBar1.setValue(100);
}catch (IOException ioe){
ioe.printStackTrace();
}
// any error???
//int exitVal = proc.waitFor();
int exitVal = 0;
System.out.println("ExitValue: " + exitVal);
return(exitVal);
}catch (Throwable t){
t.printStackTrace();
}
return(1);
}
Please note the jProgressBar is not working either :(
Any ideas on what else I can do?
Thanx in advance!