Java 高低网格游戏

标签 java user-interface grid numbers

如何创建一个弹出窗口,在用户单击编号按钮后采用 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){
    }
}

最佳答案

从你问的问题来看,你似乎想从弹出框中输入内容?如果是这样你可以使用 JOptionPaneshowInputDialog方法。它非常容易使用,这里有一个特定于您想要执行的操作的示例。

您唯一需要做的就是定义一个 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, "我的消息。");

这应该适用于显示猜测是否太高或太低等。您也可以将其放入如下方法中:

public void showMessageDialog(String message)
{
    JOptionPane.showMessageDialog(null, message); 
}

这样您就可以将您想要显示的消息传递给它。

我希望这会有所帮助。

关于Java 高低网格游戏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26474265/

相关文章:

java - 我正在向某人现有的 Swing 代码添加一个组合框。我在这里做错了什么?

actionscript-3 - 以 OOP 正确的方式访问父类

css - Susy 网格 : change the size of 12-column div without changing the overall grid size?

java - 当光标位于 JDialog 之外时更改光标

java - 如何在顶部菜单栏的多个anchorPanes之间切换?

java - JSF, writeAttribute ("value", str, null) 通过 ValueExpression.getValue() 获得的字符串失败

jquery - Kendo网格detailInit访问父网格

javascript - Javascript 和 jQuery 中图像上的可点击网格

JavaFX Shape3D 对象不适用于 Android 手机

java - 如何将整数元素插入排序数组