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

📄 chap12-7.txt

📁 JAVA 学习资源
💻 TXT
字号:
// 程序12-7
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class testEventKey extends subJFrame implements KeyListener{
    String line1,line2,line3;
    JTextArea  textArea;
    
    	// 下面要覆盖接口KeyListener中的三个方法,以处理键盘事件          
    public void keyPressed(KeyEvent e) { // 覆盖keyPressed( )方法 
        line1="Key Pressed : "+e.getKeyText(e.getKeyCode( ));
        setLine2and3(e);    // 设置line2和line3
    }        
            
    public void keyReleased(KeyEvent e) {  // 覆盖keyReleased( )方法
        line1="Key Released : "+e.getKeyText(e.getKeyCode( ));
        setLine2and3(e);    // 设置line2和line3
    }    
            
    public void keyTyped(KeyEvent e) {   // 覆盖keyTyped( )方法
        line1="Key Typed : "+e.getKeyChar( );
        setLine2and3(e);    // 设置line2和line3
    }

    private void setLine2and3(KeyEvent e) {   // 自定义方法
        line2="Key is : "+(e.isActionKey( )? " ":"not")+" an action key";
        String str=e.getKeyModifiersText(e.getModifiers( ));
        line3="Modifier keys pressed: "+(str.equals("")? "none" : str); 
        
        textArea.setText(line1+"\n"+line2+"\n"+line3+"\n");
    }
    
    public testEventKey( ){     // 构造函数 
        super("testEventKey");    // 调用父类的构造函数 
        
        textArea=new JTextArea(10,15);	// 定义一个文本区域
        textArea.setText("Please press any key ...\n");
        textArea.setEnabled(false);    

        getContentPane( ).add(textArea); 
        addKeyListener(this);	// 当前对象自己监听自己
        
        setSize(200,100);
        show( );
    }   
    
    public static void main(String args[ ]){
        testEventKey  obj=new testEventKey( ); 
    }
}

⌨️ 快捷键说明

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