程序使用說明:
1.本程序由於是java代碼編寫,所以運行需安裝jdk並配置好環境變量。
2. 復制java代碼到記事本內,另存為Keyboard_events.java;
3.復制批處理代碼到記事本內,另存為運行.bat。
4.雙擊運行.bat批處理即可執行,當前窗體必須為軟件界面才能查詢。
批處理代碼:
@echo off javac Keyboard_events.java java Keyboard_events @pause del *.class
Java代碼:
import java.awt.Button; import java.awt.FlowLayout; import java.awt.Frame; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; public class Keyboard_events { // 定義該圖形所需的組件的引用 private Frame f; private Button but; Keyboard_events() { init(); } // 對圖形用戶界面初始化 public void init() { f = new Frame("鍵盤碼查詢器——by星雲"); f.setBounds(300, 100, 600, 500); // 設置窗口位置和大小 f.setLayout(new FlowLayout());// 默認邊界布局方式重置成流式布局 but = new Button("ESC或者ctrl+enter退出程序!");// 新建一個按鈕 f.add(but);// 將按鈕添加到窗體上。 dealwithEvent();// 加載事件處理 f.setVisible(true);// 設置窗體可見 } // 事件監聽器以及處理事件 private void dealwithEvent() { // 窗體關閉監聽 f.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); // 鍵盤監聽 but.addKeyListener(new KeyAdapter() { public void keyPressed(KeyEvent e) { //如果按下ESC或者按下CTRL+enter退出程序 if ((e.getKeyCode() == KeyEvent.VK_ESCAPE) || (e.isControlDown() && e.getKeyCode() == KeyEvent.VK_ENTER) ) { System.out.println(KeyEvent.getKeyText(KeyEvent.VK_ESCAPE)+ "鍵盤碼為:" + e.getKeyCode()); System.exit(0); } else { System.out.println(KeyEvent.getKeyText(e.getKeyCode())+ "鍵盤碼為:" + e.getKeyCode()); } } }); } public static void main(String[] args) { new Keyboard_events(); } }
運行截圖:
上篇:7.JAVA之GUI編程鼠標事件 下篇: 9.JAVA之GUI編程列出指定目錄內容