⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 keyset.java~1~

📁 希望大家多多交流
💻 JAVA~1~
字号:
package system;

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

import system.*;

//键设置界面
public class KeySet extends JDialog{
  //默认键设置
  private static final int UP = KeyEvent.VK_UP;
  private static final int DOWN = KeyEvent.VK_DOWN;
  private static final int LEFT = KeyEvent.VK_LEFT;
  private static final int RIGHT = KeyEvent.VK_RIGHT;

  private static final int WIDTH = 300;
  private static final int HEIGHT = 250;

  public KeySet(JFrame owner){
    super(owner,true);//模式对话框
    this.initUI();
  }

  //初始化界面
  public void initUI(){
    JPanel p = new JPanel();
    p.setLayout(new GridLayout(2,4));

    JLabel up = new JLabel("向上键:");
    JTextField upField = new JTextField(6);
    JLabel down = new JLabel("向下键:");
    JTextField downField = new JTextField(6);
    JLabel left = new JLabel("向左键:");
    JTextField leftField = new JTextField(6);
    JLabel right = new JLabel("向右键:");
    JTextField rightField = new JTextField(6);

    p.add(up);
    p.add(upField);
    p.add(down);
    p.add(downField);
    p.add(left);
    p.add(leftField);
    p.add(right);
    p.add(rightField);

    this.getContentPane().add(p);

    //=======================为文本域注册监听器==============================
    this.addFieldListener(upField,Config.UP);
    this.addFieldListener(downField,Config.DOWN);
    this.addFieldListener(leftField,Config.LEFT);
    this.addFieldListener(rightField,Config.RIGHT);
  }

  //为文本域注册监听器
  public void addFieldListener(final JTextField f,int key){
    //以文本形式显示默认的的键
    f.setText(KeyEvent.getKeyText(key));

    f.addKeyListener(new KeyAdapter(){
      public void keyTyped(KeyEvent e){
        int k = e.getKeyCode();

        if ( (k > 0 && k < 9) ||
             (k > Character.getNumericValue('a') || k < Character.getNumericValue('z'))) {
          String name = e.getKeyText(k).substring(0,1);//获得按键的文本
          f.setText(name); //以文本形式显示设置的键
          Config.saveSystemConfig(); //保存设置
          Config.loadSystemConfig(); //重新加载系统配置
        }
      }
    });
  }

  //显示键设置的静态方法
  public static void showKeySetDialog(JFrame owner){
    new KeySet(owner).show();
  }

  public void show(){
    this.setTitle("设置");
    this.setResizable(false);
    this.setSize(this.WIDTH,this.HEIGHT);

    Dimension s = Toolkit.getDefaultToolkit().getScreenSize();
    int width = s.width;
    int height = s.height;
    this.setLocation((width - this.WIDTH)/2,(height - this.HEIGHT)/2);

    super.show();
  }

  public static void main(String[] args){
    KeySet.showKeySetDialog(null);
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -