如何在GUI文本框而不是Eclipse控制台上打印输出?

时间:2015-05-10 21:28:40

标签: java swing random

我试图允许用户点击btnGenerate然后生成一个随机数,该数字被分配给一个短语,可以在eclipse的应用程序窗口中的按钮下面的框中打印出该短语。

问题是随机语句出现在Eclipse控制台而不是GUI上的文本框中。

感谢任何帮助。到目前为止,这是我的代码:

//generate crime button

JButton generateBtn = new JButton("Generate Crime");
generateBtn.setBackground(Color.LIGHT_GRAY);
generateBtn.setFont(new Font("HGHeiseiKakugothictaiW3", Font.BOLD, 20));
GridBagConstraints gbc_generateBtn = new GridBagConstraints();

gbc_generateBtn.fill = GridBagConstraints.BOTH;
gbc_generateBtn.insets = new Insets(0, 0, 5, 5);
gbc_generateBtn.gridx = 15;
gbc_generateBtn.gridy = 5;

frmHeroVillains.getContentPane().add(generateBtn, gbc_generateBtn);
generateBtn.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent arg0) {

        /*random number generator that generates a number between 1-4 and outputs a random crime to the updatePane depending on which 
        number was generated */
        int number =  ((int) (Math.random()*4)+1);
        switch (number) {
        case 1:
            System.out.println("Jewelry Heist on main street!");
            break;
        case 2:
            System.out.println("Mugging in China town!");
            break;
        case 3:
            System.out.println("Boeing 247 - Hijacked!");
        default:
            System.out.println("Nothing to Report.");
            break;


        }
    ;
    JLabel updateLabel = new JLabel("UPDATE ALERT.... " + number);
            GridBagConstraints gbc_updateLabel = new GridBagConstraints();
            gbc_updateLabel.gridheight = 3;
            gbc_updateLabel.insets = new Insets(0, 0, 5, 5);
            gbc_updateLabel.gridx = 15;
            gbc_updateLabel.gridy = 12;
            frmHeroVillains.getContentPane().add(updateLabel, gbc_updateLabel);}    }
);

1 个答案:

答案 0 :(得分:0)

public static void main(String[] args) throws Exception {

//Must throws Exception

    JPanel myOutput = new JPanel();
    myOutput.setVisible(true);
    myOutput.setBackground(Color.GRAY);

    JTextArea mynewText = new JTextArea();
    myOutput.add(mynewText);

    URL oracle = new URL("http://www.oracle.com/");
    BufferedReader in = new BufferedReader(new InputStreamReader(
            oracle.openStream()));
//InputStreamReader wrapped in BufferedReader

    String inputLine;
    inputLine = in.readLine();
    mynewText.setText(inputLine);

    in.close();

//In the target window class
mainWindow.add(myOutput);