我的问题是
jtable的单元格里如何按回车就在这个单元格里出现一个jlist
我用了addKeyListener(new KeyAdapter() {
    public void keyPressed(final KeyEvent e) {
                              
    }
   });得到e.getxx()的回车按键等于10 来判断是否后按了回车,但是要按两下回车才能进入事件
我要的是按一下回车就进入事件,应该怎么写啊

解决方案 »

  1.   

    当然,因为JTable本身会截获一次键盘事件。如果不想要,从table的ActionMap里面换成你自己的Action。你加的监听,是在JTable截获并处理了自身捕获的事件之后的。因此这时,它的动作已经结束,而你再做只能是做一些后续的操作。
      

  2.   

    另外,你所说的是JList?
    还是下拉列表框?
      

  3.   

    JList不是下拉列表框,就是列表
    能否给出“当然,因为JTable本身会截获一次键盘事件。如果不想要,从table的ActionMap里面换成你自己的Action。你加的监听,是在JTable截获并处理了自身捕获的事件之后的。因此这时,它的动作已经结束,而你再做只能是做一些后续的操作”这些的代码例子
      

  4.   

    自己查看一下文档吧。所有的jComponent都可以getActionMap和getInputMap。
    inputmap以KeyStroke作键,对应一个标识符做值。
    ActionMap以标识符作键,一个Action实例作值。这样两个map就可以联系起来了。
    默认jtable的回车事件是向下走一行。
    这个动作就是在ActionMap里面的Action里面存着。你改写就可以了,然后put进去。或者用一个新的替换掉。按照你的说法,你加的监听,把你的监听所做的动作放到Action然后Put进去了。
    我手头没有现成的代码,你仔细查阅文档吧。
    如果你想看代码,你最好把你的代码贴出来,我再说,不要让我从头做了。