Java键盘事件监听
日期:2020-06-06 栏目:程序人生 浏览:次
Java键盘事件监听(一):

package com.han;
import java.awt.Container;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.SpringLayout;
public class KeyEvent_1 extends JFrame {
private static final long serialVersionUID = -6762512303624322086L;
public KeyEvent_1() {
Container container = getContentPane();
SpringLayout springLayout = new SpringLayout();
container.setLayout(springLayout);
JLabel remarqueLabel = new JLabel("remarque :");
JTextArea textArea = new JTextArea(3, 30);
JScrollPane scrollPane = new JScrollPane();
scrollPane.setViewportView(textArea);
container.add(remarqueLabel);
springLayout.putConstraint(SpringLayout.WEST, remarqueLabel, 5,
SpringLayout.WEST, container);
springLayout.putConstraint(SpringLayout.NORTH, remarqueLabel, 5,
SpringLayout.NORTH, container);
container.add(scrollPane);
springLayout.putConstraint(SpringLayout.WEST, scrollPane, 5,
SpringLayout.EAST, remarqueLabel);
springLayout.putConstraint(SpringLayout.NORTH, scrollPane, 5,
SpringLayout.NORTH, container);
springLayout.putConstraint(SpringLayout.EAST, scrollPane, -5,
SpringLayout.EAST, container);
springLayout.putConstraint(SpringLayout.SOUTH, scrollPane, -5,
SpringLayout.SOUTH, container);
textArea.addKeyListener(new KeyListener() {
@Override
public void keyTyped(KeyEvent e) {
System.out.println("The charactor you typed : " + "\""
+ e.getKeyChar() + "\"");
}
@Override
public void keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_CONTROL ||
e.getKeyCode() == KeyEvent.VK_SHIFT ||
e.getKeyCode() == KeyEvent.VK_ALT) {
System.out.println("\n" + "The Component triggered : " + e.getSource());
}
if (!(e.isControlDown() || e.isShiftDown() || e.isAltDown())) {
System.out.println("\n" + "The Component triggered : " + e.getSource());
}
String keyText = KeyEvent.getKeyText(e.getKeyCode());
if (e.isActionKey()) {
System.out.print("The action key you pressed : " + "\""
+ keyText + "\"");
} else {
System.out.print("The non-action key you pressed : " + "\""
+ keyText + "\"");
int keyCode = e.getKeyCode();
switch (keyCode) {
case KeyEvent.VK_CONTROL:
System.out.print(", Control key is pressed");
break;
case KeyEvent.VK_SHIFT:
System.out.print(", Shift key is pressed");
break;
case KeyEvent.VK_ALT:
System.out.print(", Alt key is pressed");
break;
}
}
System.out.println();
}
@Override
public void keyReleased(KeyEvent e) {
System.out.println("The key you released : " + "\"" +
KeyEvent.getKeyText(e.getKeyCode()) + "\"");
}
});
}
public static void main(String[] args) {
KeyEvent_1 frame = new KeyEvent_1();
frame.setTitle("KeyEvent Test");
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setBounds(0, 0, 600, 300);
}
}
内容版权声明:除非注明,否则皆为本站原创文章。
转载注明出处:http://www.heiqu.com/pxydy.html