用Java制作主菜单
嘿,伙计们,我有这个代码,我已经做了一段时间了。这是一款游戏,当点击开始按钮时,屏幕上会弹出一组按钮,其中一个按钮会突出显示,如果玩家点击突出显示的按钮,玩家将获得分数,但如果玩家没有点击正确的按钮,玩家将失去分数。游戏运行得很好,但当我尝试制作主菜单时,出现了问题。当我点击开始按钮时,它会打开一个窗口,游戏应该在这个窗口中,它有正确的窗口名,所以我知道它在工作,但是没有任何按钮。有人能帮我一下吗,因为我已经在这个问题上纠缠了大约一个星期了 谢谢用Java制作主菜单,java,swing,methods,jframe,jbutton,Java,Swing,Methods,Jframe,Jbutton,嘿,伙计们,我有这个代码,我已经做了一段时间了。这是一款游戏,当点击开始按钮时,屏幕上会弹出一组按钮,其中一个按钮会突出显示,如果玩家点击突出显示的按钮,玩家将获得分数,但如果玩家没有点击正确的按钮,玩家将失去分数。游戏运行得很好,但当我尝试制作主菜单时,出现了问题。当我点击开始按钮时,它会打开一个窗口,游戏应该在这个窗口中,它有正确的窗口名,所以我知道它在工作,但是没有任何按钮。有人能帮我一下吗,因为我已经在这个问题上纠缠了大约一个星期了 谢谢 import java.awt.*; impor
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.*;
import javax.swing.*;
public class ClickerMenu extends JFrame {
private JButton start, settings, exit, about;
public ClickerMenu() {
super("Main Menu");
setLayout(new FlowLayout());
start = new JButton(" Start Game ");
settings = new JButton(" Settings ");
exit = new JButton(" Exit ");
about = new JButton(" About ");
add(start);
add(about);
add(settings);
add(exit);
HandlerClass handler = new HandlerClass();
start.addActionListener(handler);
about.addActionListener(handler);
settings.addActionListener(handler);
exit.addActionListener(handler);
}
public class HandlerClass implements ActionListener {
public void actionPerformed(ActionEvent event) {
if (event.getSource() == start) {
ClickerMain main = new ClickerMain();
main.main(null);
}
if (event.getSource() == settings) {
}
if (event.getSource() == about) {
}
if (event.getSource() == exit) {
System.exit(0);
}
}
}
}
游戏代码是:
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.*;
import javax.swing.*;
public class Clicker extends JFrame {
private int counter = 0, place = 0, score, timer, holder, number, index;
private JButton button[] = new JButton[20];
randomButtons rbutton = new randomButtons();
public Clicker() {
super("Clicker The Game");
setLayout(new FlowLayout());
while (counter < button.length) {
button[counter] = new JButton("Clicker");
add(button[counter]);
counter++;
}
HandlerClass handler = new HandlerClass();
while (place < button.length) {
button[place].addActionListener(handler);
place++;
}
number = rbutton.randomButton();
button[number].setBackground(Color.RED);
System.out.println("number: " + number);
}
public class HandlerClass implements ActionListener {
public void actionPerformed(ActionEvent event) {
if ((JButton) event.getSource() == button[number]) {
++score;
button[number].setBackground(null);
} else {
--score;
button[number].setBackground(null);
}
number = rbutton.randomButton();
button[number].setBackground(Color.RED);
System.out.println(score);
}
}
public int Scoring(){
return score;
}
}
与其弹出一个新窗口,不如使用CardLayout在视图之间交换。主菜单可以是面板视图,游戏也可以是面板视图 阅读更多信息,您还可以看到一个使用主菜单的简单示例