我这方面有点外行,你还是看JavaDoc,找到可能用的API.没有空间本人觉得也应该可以。

解决方案 »

  1.   

    你addKeyListener以后有没有实现啊?
    默认的事件处理可都是空的哦
      

  2.   

    是不是因为JPanel没有焦点不能截获键盘事件?
    正确,需要加一个requestFocus()之后才能捕获键盘事件!
      

  3.   

    JPanel没有焦点当然不能捕获键盘事件啦。楼上的说的很对。
      

  4.   

    public class DrawPanel extends JPanel  {
    ........
    this.addKeyListener(new DrawPanelKeyListener(this));
    .........public class DrawPanelKeyListener extends KeyAdapter{
       JPanel panel;
            public DrawPanelKeyListener(DrawPanel panel){
                this.panel = panel;
            }        public void keyTyped(KeyEvent e){
                System.out.println("sasd");
                if(e.getKeyCode()==e.VK_DELETE){
                    document.removeSelected();
                    repaint();
                }
            }        public void keyPressed(KeyEvent e) {System.out.println("sasd");}
        }
    }
      

  5.   

    如何能让JPanel收到键盘事件?
      

  6.   

    如果你用jbuilder,在designer里直接选就可以了。