我正在尝试制作一款游戏,其中按钮会亮起,并且用户必须在给定时间内按下按钮。
目前,我的程序有 12 个可以执行某些操作的按钮。我试图让程序随机调用这些按钮。到目前为止,我只有 12 个按钮,当用户按下这些按钮时,它们只会更改文本。
现在我需要一种方法来制作它,以便它们被随机地按下程序本身而不是用户。关于如何在 java 中完成此操作有什么想法吗?
// **** Panels for buttons ****
JPanel panelButtons = new JPanel(); // making the panel for the buttons
panelButtons.setLayout(new GridLayout(3, 4)); // setting the layout of the buttons to 3x4 as shown above
b1 = new JButton(" ⃝"); // creating button and setting its default text
b1.setFont(fontText); // setting the font
b1.addActionListener(new ActionListener(){ // action listener to do something when pressed
public void actionPerformed(ActionEvent e) {
sendMessage(user + "1" ); // sends the name of the user that pressed the button and which button
String field1 = b1.getText(); // gets the text from the button and stores it in a String
if(field1 == " ⃝"){ // checks if the string is equal to an empty circle
b1.setText("⬤"); // if true then change to a full circle
}
else if (field1 == "⬤"){ // opposite of the above if statement
b1.setText(" ⃝");
}
}
});
panelButtons.add(b1); // adding the button to the panel
b2 = new JButton(" ⃝"); // creating button and setting its default text
b2.setFont(fontText); // setting the font
b2.addActionListener(new ActionListener(){ // action listener to do something when pressed
public void actionPerformed(ActionEvent e) {
sendMessage(user + "2" ); // sends the name of the user that pressed the button and which button
String field2 = b2.getText(); // gets the text from the button and stores it in a String
if(field2 == " ⃝"){ // checks if the string is equal to an empty circle
b2.setText("⬤"); // if true then change to a full circle
}
else if (field2 == "⬤"){ // opposite of the above if statement
b2.setText(" ⃝");
}
}
});
panelButtons.add(b2); // adding the button to the panel
最佳答案
您可以创建一个包含按钮的列表。使用随机数生成器在列表长度内创建一个随机数。使用该(随机)索引来修改相应的按钮。
关于java - 我的程序如何随机按下按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29253414/