烦恼的组合键
接着昨天没有解决的问题继续提问了,我想在jlist里监听一个ctrl+左键单击的事件,我这里的想法是用一个key做为一个中间值。 
 [code]public   void   addkeyListener(KeyEvent   e){ 
 if(e.getModifiers()==e.CTRL_MASK   )       
    key=true;//判断是否是ctrl按下      
 } 
 public   void   keyPressed(KeyEvent   e) 
 {if(e.getModifiers()==e.CTRL_MASK   )       
    key=true;//判断是否是ctrl按下 
 } 
 public   void   keyReleased(KeyEvent   e){ 
 key=false;//判断是否已经抬起 
 [/code] 
 这里完成的是键盘的监听。[code]list.addMouseListener(new   MouseAdapter()   {public   void   mouseClicked(MouseEvent   e)    
    {   if(   e.getModifiers()   ==   e.BUTTON1_MASK&&   !key   ) 
 {}//判断是否是左键单击以及key是否为true 
 else   System.out.println(“我想是哪里错了”); 
 }});      [/code] 
 我觉得是可行的,但结果却总是出乎意料:我想是哪里错了 
 各位大大能帮我指明吗?
------解决方案--------------------if( e.getModifiers() == e.BUTTON1_MASK&& !key ) 
 {}//判断是否是左键单击以及key是否为true 
 为什么是!key,你不是要判断是否为true吗?应该是key啊,!key,当crlt按下时 你的 
 if( e.getModifiers() == e.BUTTON1_MASK&& !key )相当于if( e.getModifiers() == e.BUTTON1_MASK&& false)他当然走System.out.println(“我想是哪里错了”);这一句了,不对吗?