📄 configdialog.java
字号:
/* * To change this template, choose Tools | Templates * and open the template in the editor. */package SnakeGame;import java.awt.BorderLayout;import java.awt.Color;import java.awt.Container;import java.awt.FlowLayout;import java.awt.Font;import java.awt.Frame;import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.Box;import javax.swing.JButton;import javax.swing.JColorChooser;import javax.swing.JDialog;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JTextField;/** * * @author Administrator */public class ConfigDialog extends JDialog { private Container c; private JFrame owner; private OwnPanel[] panel = new OwnPanel[4]; Box box1, box2; private JButton commitButton, cancelButton; Color[] color = new Color[4]; public ConfigDialog(Frame owner) { this.owner = (JFrame) owner; this.setSize(400, 200); this.setResizable(false); this.setTitle("Config Your Game"); this.c = this.getContentPane(); this.c.setBackground(Color.WHITE); this.c.setLayout(new FlowLayout()); this.box1 = Box.createVerticalBox(); for (int i = 0; i < panel.length; i++) { panel[i] = new OwnPanel(); panel[i].addActionListener(new ActionHandler()); this.box1.add(panel[i]); this.box1.add(Box.createVerticalStrut(4)); } this.panel[0].setText(" Background"); this.panel[1].setText(" Snake"); this.panel[2].setText(" Bean"); this.panel[3].setText(" EatedBean"); this.panel[0].setBack(ColorGroup.COLOR_BACK); this.panel[1].setBack(ColorGroup.COLOR_SNAKE); this.panel[2].setBack(ColorGroup.COLOR_BEAN); this.panel[3].setBack(ColorGroup.COLOR_EATEDBEAN); this.box2 = Box.createHorizontalBox(); this.commitButton = new JButton("确定"); this.commitButton.setFont(Font.getFont("Fixedsys")); this.commitButton.addActionListener(new ActionHandler()); this.cancelButton = new JButton("取消"); this.cancelButton.setFont(Font.getFont("Fixedsys")); this.cancelButton.addActionListener(new ActionHandler()); this.box2.add(this.commitButton); this.box2.add(Box.createHorizontalStrut(20)); this.box2.add(this.cancelButton); this.box1.add(this.box2); this.c.add(this.box1, BorderLayout.NORTH); this.setLocation((this.getToolkit().getScreenSize().width - this.getWidth()) / 2, (this.getToolkit().getScreenSize().height - this.getHeight()) / 2); this.setVisible(true); } public void setOwnerColor(Color temp) { this.owner.getContentPane().setBackground(temp); } private class ActionHandler implements ActionListener { public void actionPerformed(ActionEvent e) { for (int i = 0; i < color.length; i++) { if (e.getSource() == panel[i].reButton()) { color[i] = JColorChooser.showDialog(ConfigDialog.this, "Choose BackGround Color", Color.WHITE); if (color[i] != null) { panel[i].setBack(color[i]); } } } if (e.getSource() == commitButton) { color[0] = (color[0] == null ? ColorGroup.COLOR_BACK : color[0]); color[1] = (color[1] == null ? ColorGroup.COLOR_SNAKE : color[1]); color[2] = (color[2] == null ? ColorGroup.COLOR_BEAN : color[2]); color[3] = (color[3] == null ? ColorGroup.COLOR_EATEDBEAN : color[3]); ConfigDialog.this.setVisible(false); ColorGroup.setCOLOR_BACK(color[0]); owner.getContentPane().setBackground(color[0]); ColorGroup.setCOLOR_SNAKE(color[1]); ColorGroup.setCOLOR_BEAN(color[2]); ColorGroup.setCOLOR_EATEDBEAN(color[3]); ConfigDialog.this.dispose(); } else if (e.getSource() == cancelButton) { ConfigDialog.this.setVisible(false); ConfigDialog.this.dispose(); } } }}class OwnPanel extends JPanel { private JLabel temp1; private JTextField temp2; private JButton temp3; OwnPanel() { temp1 = new JLabel(); temp1.setFont(Font.getFont("Fixedsys")); temp2 = new JTextField(); temp3 = new JButton("Change"); temp3.setFont(Font.getFont("Fixedsys")); temp2.setEditable(false); temp2.setColumns(10); this.add(temp1); this.add(temp2); this.add(temp3); this.setLayout(new GridLayout(1, 3)); } public void setButtonName(String temp) { temp3.setName(temp); } public void setBack(Color temp) { temp2.setBackground(temp); } public void setText(String temp) { temp1.setText(temp); } public Object reButton() { return temp3; } public void addActionListener(ActionListener ac) { temp3.addActionListener(ac); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -