also ich benutze in meinem programm eine while schlaufe, mit der ich verschiedene optionen von einem anderen programm auflisten will. das probelm ist nur das ich diese sogenanten commandos, in einem neuen fenster ausgeben möchte, und dies leider für jedes commando ein neues fenster öffnet! wenn ich aber nur eine if abfrage daraus mache, kriege ich nur ein commando, also das erste raus. was kann ich da machen!?
Code:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.awt.*;
import javax.swing.*;
public class Commands {
private String buffer = null;
public Commands(){
try
{
Process p = Runtime.getRuntime().exec("/opt/NXOSI/bin/imgr --help");
BufferedReader in = new BufferedReader(new InputStreamReader(p.getInputStream()));
while ((buffer = in.readLine()) != null)
{
CommandFrame();
System.out.println(buffer);
}
in.close();
}
catch (IOException e)
{
e.printStackTrace();
}
}
public void CommandFrame(){
JFrame commandframe = new JFrame();
commandframe.getContentPane().setLayout(new BorderLayout());
JPanel commandpanel = new JPanel();
commandpanel.setLayout(new BorderLayout());
JLabel commandlabel = new JLabel(buffer);
commandframe.getContentPane().add(commandpanel, BorderLayout.CENTER);
commandpanel.add(commandlabel);
commandframe.setTitle("Commands");
commandframe.setVisible(true);
commandframe.pack();
commandframe.setLocation(600, 500);
commandframe.setSize(300,100);
}
}