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

📄 keyeventexam.java

📁 Java程序设计实用教程源代码 本书源代码按章分别放置在不同的文件夹中,所有程序均在JDK1.6环境下编译运行正常,除了第13章需要建立ODBC数据源之外,其他程序只要有Java运行环境即可直接运行
💻 JAVA
字号:
import javax.swing.*;
import javax.swing.table.*;
import java.awt.*;
import java.awt.event.*;
public class keyEventExam
    extends JFrame {
  private JPanel contentPane;
  private int[] x = new int[15];
  private int[] y = new int[15];
  private String s[] = new String[15];
  JButton b[] = new JButton[15];
  JLabel label = new JLabel("单击选中,然后用←、↑、→、↓移动");
  public keyEventExam() {
    super("键盘事件示例");
    contentPane = (JPanel)this.getContentPane();
    contentPane.setLayout(null);
    this.setSize(new Dimension(400, 280));
    contentPane.add(label);
    label.setBounds(0, 0, 250, 30);
    int k1, k2, k3, k4;
    k1 = k2 = k3 = k4 = 70;
    for (int i = 0; i < 15; i++) {
      b[i] = new JButton(String.valueOf(i));
      if (i % 4 == 0)
        b[i].setBackground(Color.blue);
      if (i % 4 == 1)
        b[i].setBackground(Color.red);
      if (i % 4 == 2)
        b[i].setBackground(Color.yellow);
      if (i % 4 == 3)
        b[i].setBackground(Color.pink);
      b[i].addKeyListener(new demo());
      b[i].addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(ActionEvent e) {
          for (int i = 0; i < 15; i++) {
            if (e.getSource() == b[i]) {
              for (int j = 0; j < 15; j++)
                s[j] = b[i].getText();
            }
          }
        }
      });
      contentPane.add(b[i]);
      if (i % 3 == 0) {
        b[i].setBounds(k1, 40, 50, 50);
        k1 = k1 + 51;
      }
      else if (i % 3 == 1) {
        b[i].setBounds(k2, 91, 50, 50);
        k2 = k2 + 51;
      }
      else if (i % 3 == 2) {
        b[i].setBounds(k3, 142, 50, 50);
        k3 = k3 + 51;
      }
    }
    for (int i = 0; i < 15; i++) {
      x[i] = b[i].getBounds().x;
      y[i] = b[i].getBounds().y;
    }
    setVisible(true);
  }

  public static void main(String args[]) {
    keyEventExam app = new keyEventExam();
    app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  }

  class demo
      extends KeyAdapter {
    public void keyPressed(KeyEvent e) {
      if (e.getKeyCode() == KeyEvent.VK_UP) {
        for (int i = 0; i < 15; i++) {
          if (s[i].equals(String.valueOf(i))) {
            y[i] = y[i] - 2;
            if (y[i] <= 20)
              y[i] = 20;
            b[i].setLocation(x[i], y[i]);
          }
        }
      }
      else if (e.getKeyCode() == KeyEvent.VK_DOWN) {
        for (int i = 0; i < 15; i++) {
          if (s[i].equals(String.valueOf(i))) {
            y[i] = y[i] + 2;
            if (y[i] >= 180)
              y[i] = 180;
            b[i].setLocation(x[i], y[i]);
          }
        }
      }
      else if (e.getKeyCode() == KeyEvent.VK_LEFT) {
        for (int i = 0; i < 15; i++) {
          if (s[i].equals(String.valueOf(i))) {
            x[i] = x[i] - 2;
            if (x[i] <= 20)
              x[i] = 20;
            b[i].setLocation(x[i], y[i]);
          }
        }
      }
      else if (e.getKeyCode() == KeyEvent.VK_RIGHT) {
        for (int i = 0; i < 15; i++) {
          if (s[i].equals(String.valueOf(i))) {
            x[i] = x[i] + 2;
            if (x[i] >= 330)
              x[i] = 330;
            b[i].setLocation(x[i], y[i]);
          }
        }
      }
    }
  }
}

⌨️ 快捷键说明

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