5.2、键盘监听事件
组件监听键盘的按键,该组件必须要获取到焦点。
如果一个窗口内没有可获取焦点的组件,一般打开窗口后焦点为窗口所有,可以把键盘监听器设置到窗口(JFrame)身上。
如果窗口内还有其他组件可获取焦点(例如按钮、文本框),窗口打开后焦点会被内部组件获得,如果想要在窗口打开期间都能监听键盘按键,可以为所有可获得焦点的组件都设置一个键盘监听器。
class KeyListenerUse{
public KeyListenerUse() {
JFrame jFrame = new JFrame("键盘监听");
jFrame.addKeyListener(new KeyAdapter() {
@Override
public void keyPressed(KeyEvent e) {
// 获取键值,和 KeyEvent.VK_XXXX 常量比较确定所按下的按键
System.out.println("按下: " + e.getKeyCode() + ",键值为:" + e.getKeyCode());
}
@Override
public void keyTyped(KeyEvent e) {
// e.getKeyChar() 获取键入的字符
System.out.println("键入: " + e.getKeyChar());
}
@Override
public void keyReleased(KeyEvent e) {
System.out.println("释放: " + e.getKeyCode());
}
});
jFrame.setVisible(true);
}
}
5.3、窗口监听事件
窗口监听器只有窗口类组件支持,例如 JFrame、JDialog。目前经过测试,使用最多的莫过于窗口关闭和窗口激活。
class WindowListenerUse{
public WindowListenerUse() {
JFrame jFrame = new JFrame("窗口监听");
jFrame.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.out.println("窗口被关闭了");
}
@Override
public void windowActivated(WindowEvent e) {
System.out.println("窗口被激活了");
}
});
jFrame.setVisible(true);
}
}
- 1、Java GUI 概述
- 2、容器
- 2、1 窗口
- 2、2 弹窗和对话框
- 对话框
- 自定义弹窗
- 2、3 面板
- 普通面板
- 滚动面板
- 分隔面板
- 选项卡面板
- 3、布局
- 3.1、流式布局
- 3.2、网格布局
- 3.3、边框布局
- 4、组件