如果在用户点击编号按钮后告诉他们答案是否正确,数字是更高还是更低,如何创建一个在0到19之间取随机数的弹出窗口?
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class GridGame implements ActionListener {
JFrame main;
int rows = 4;
int cols = 4;
JButton button;
int winningNum;
public GridGame() {
main = new JFrame();
main.setContentPane(makePanelGrid());
main.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //JFrame.EXIT_ON_CLOSE static refrence
main.pack();
main.setVisible(true);
}
public JPanel makePanelGrid(){
JPanel grid = new JPanel();
grid.setLayout(new GridLayout(rows,cols,10,10));
for (int i=0;i<20;i++){
grid.add(new JButton(i+""));
winningNum= (int) (Math.random() * 19);
}
return grid;
}
public static void main(String[] Args){
new GridGame();
}
public void actionPerformed(ActionEvent e) {
if(e.getSource() == button){
}
}
答案 0 :(得分:1)
从你问的问题看来,好像你想从弹出框中输入一个输入?如果是这样,您可以使用JOptionPane的showInputDialog方法。它非常易于使用,这是一个特定于您想要做的示例。
您唯一需要做的就是定义一个int来存储此方法的结果。
public int showDialog()
{
int guess = 0;
try{
guess = Integer.parseInt(JOptionPane.showInputDialog("Guess a number between 0 and 19"));
}catch(Exception ex){
showDialog();
}
if(guess < 0 || guess > 19 )
showDialog();
return guess;
}
因此,您可以执行int answer = showDialog();
。
如果您只想在弹出框中显示消息,则可以使用showMessageDialog方法。
JOptionPane.showMessageDialog(null, "My message.");
如果猜测太高或太低,这应该可以显示。你也可以把它放在一个方法中:
public void showMessageDialog(String message)
{
JOptionPane.showMessageDialog(null, message);
}
这样您就可以传递要显示的消息。
我希望这会有所帮助。