我试图允许用户点击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);} }
);
答案 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);