58,452
社区成员




import javax.swing.JPanel;
import javax.swing.JLabel;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
public class GamePanel extends JPanel {
private static final long serialVersionUID = 1L;
private ChessMain main;
/**
* Create the panel.
*/
public GamePanel(ChessMain main) {
this.main = main;
setLayout(null);
JLabel lblNewLabel = new JLabel("游戏界面");
lblNewLabel.setBounds(89, 65, 182, 18);
add(lblNewLabel);
JButton btn_return = new JButton("结束");
btn_return.setBounds(125, 111, 113, 27);
add(btn_return);
btn_return.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
main.swapPanel(ChessMain.P_MENU);
}
});
}
}
import javax.swing.JPanel;
import javax.swing.JLabel;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
public class MenuPanel extends JPanel {
private static final long serialVersionUID = 1L;
private ChessMain main;
/**
* Create the panel.
*/
public MenuPanel(ChessMain main) {
this.main = main;
setLayout(null);
JLabel label = new JLabel("菜单界面");
label.setBounds(81, 66, 72, 18);
add(label);
JButton btn_start = new JButton("开始游戏");
btn_start.setBounds(149, 110, 113, 27);
add(btn_start);
btn_start.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
main.swapPanel(ChessMain.P_GAME);
}
});
}
}
import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
public class ChessMain extends JFrame {
private static final long serialVersionUID = 1L;
private JPanel contentPane;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
ChessMain frame = new ChessMain();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
private MenuPanel menuPanel;
private GamePanel gamePanel;
public static final int P_MENU = 1;
public static final int P_GAME = 2;
/**
* Create the frame.
*/
public ChessMain() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
contentPane.setLayout(new BorderLayout(0, 0));
setContentPane(contentPane);
menuPanel = new MenuPanel(this);
gamePanel = new GamePanel(this);
contentPane.add(menuPanel);
}
public void swapPanel(int wPanel) {
contentPane.removeAll();
switch (wPanel) {
case P_GAME:
contentPane.add(gamePanel);
break;
case P_MENU:
contentPane.add(menuPanel);
break;
default:
break;
}
validate();
repaint();
}
}