gpt4 book ai didi

java - 如何制作 JButton,按下时会执行新操作

转载 作者:行者123 更新时间:2023-12-02 01:45:15 25 4
gpt4 key购买 nike

我想创建一个石头/剪刀/布游戏并添加功能来实现一个按钮,该按钮使用户可以选择重玩游戏而无需重新运行程序,但是当我按下“再做一次”时"按钮计算机的随机选择总是相同的,如何做到从数组中选择一个新的随机字符串。

JButton button1 = new JButton("The choice");
JButton button2 = new JButton("Do it again");
JTextField tekst1 = new JTextField(20);
Container c = getContentPane();
c.setLayout(new FlowLayout());
c.add(tekst1);
c.add(button1);
c.add(button2);

button2.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent evt) {
if (!hasBeenClicked) {
button1.addActionListener(new ActionListener() {
String[] arr={"rock", "paper", "scissors"};
Random r=new Random();
int randomNumber=r.nextInt(arr.length);

public void actionPerformed(ActionEvent evt) {
tekst1.setText(arr[randomNumber]);
}
});
} else {
tekst1.setText("");
}
hasBeenClicked = ! hasBeenClicked;
}
});

最佳答案

发生这种情况是因为您在单击事件之外生成了一个随机数。将其移动到下面几行的方法中:

button1.addActionListener(new ActionListener() {
String[] arr={"rock", "paper", "scissors"};
Random r=new Random();

public void actionPerformed(ActionEvent evt) {
int randomNumber=r.nextInt(arr.length);
tekst1.setText(arr[randomNumber]);
}
});

关于java - 如何制作 JButton,按下时会执行新操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53769181/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com