警告不止一次出现

时间:2013-02-23 15:51:00

标签: java eclipse swing warnings capslock

只是一个简单的问题,如果我将大写锁定在它上面会出现警告信息3次?我只希望它出现一次

            jButton1.addActionListener(new ActionListener() {
               @SuppressWarnings("deprecation")
               public void actionPerformed(ActionEvent evt) {
                  for( int i=0; i < users.size(); i++ ){
                     temp = (logins)users.elementAt(i);
                     if( Toolkit.getDefaultToolkit().
                        getLockingKeyState(KeyEvent.VK_CAPS_LOCK))
                     {
                        check = "true";
                        {
                           JOptionPane.showMessageDialog(
                              null, "Please turn off the capslock", "Error",
                              JOptionPane.ERROR_MESSAGE );
                        }
                     }
                  }
               }
            });
            pack();
            this.setSize(643, 434);
         }
         catch (Exception e) {
         e.printStackTrace();
      }
   }
}

1 个答案:

答案 0 :(得分:2)

你已经完成了

check = true;

但从未检查过,请将其添加到if

if( Toolkit.getDefaultToolkit().getLockingKeyState(KeyEvent.VK_CAPS_LOCK)
   && ! check )
{
   check = "true";
   ...

或者更好,将它放在循环之外,因为if的条件不使用迭代的数据......