###曾經我們製作過隨即生成任務的迷宮遊戲,今天的遊戲也有類似概念,但更強調了畫面話及按鈕的配置作用
在 Java 中製作一個「找找看」的遊戲可以是一個有趣的挑戰,這種類型的遊戲通常涉及在一個界面上隱藏某些目標,然後讓玩家通過點擊或操作來找到這些隱藏的物件。這類遊戲通常涉及圖形介面編程,事件處理和簡單的遊戲邏輯。下面是一個基本的實現流程:
要在 Java 中製作 GUI 程式,我們通常使用 Swing
或 JavaFX
。以下是使用 Swing
的基本思路:
JFrame
)。JPanel
或 JLabel
來代表不同的遊戲區域或隱藏目標。JButton
)或標籤(JLabel
)構成的格子。ActionListener
來實現這些功能。以下是一個基本的示例程式碼,展示如何使用 Swing
來構建一個簡單的「找找看」遊戲框架:
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;
public class FindTheTreasureGame extends JFrame {
private JButton[] buttons;
private int treasureIndex;
public FindTheTreasureGame() {
setTitle("找找看遊戲");
setSize(400, 400);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new GridLayout(4, 4));
buttons = new JButton[16];
Random random = new Random();
treasureIndex = random.nextInt(16); // 隨機選擇一個按鈕作為寶藏
for (int i = 0; i < 16; i++) {
buttons[i] = new JButton("?");
buttons[i].addActionListener(new ButtonClickListener(i));
add(buttons[i]);
}
}
private class ButtonClickListener implements ActionListener {
private int index;
public ButtonClickListener(int index) {
this.index = index;
}
@Override
public void actionPerformed(ActionEvent e) {
if (index == treasureIndex) {
buttons[index].setText("寶藏!");
JOptionPane.showMessageDialog(null, "恭喜,你找到了寶藏!");
} else {
buttons[index].setText("空的");
}
}
}
public static void main(String[] args) {
SwingUtilities.invokeLater(() -> {
FindTheTreasureGame game = new FindTheTreasureGame();
game.setVisible(true);
});
}
}